This chapter describes the VM Client Tape Management Interface (VMTMI).
A TapePlex refers to the complex of resources managed by StorageTek software, including library resources for real cartridges and VSM resources for virtual volumes.
A TapePlex is defined as the hardware managed by a single HSC CDS. VM Client provides access to a single TapePlex. VM Client uses TCP/IP to route transactions to an HSC server executing on z/OS. Multiple instances of HSC on multiple hosts can be defined as servers to provide redundancy. Transactions between VM Client and the HSC server use an XML-based API called the XAPI. The VM Client software converts Tape Management Interface transactions into XAPI format for interpretation by the server, and converts the output of these transactions into TMI format for the response.
Because the Tape Management Interface now interacts with a client component, which in turn interfaces with HSC (and VTCS) on z/OS, some TMI commands that were supported in previous releases are no longer supported. In some cases, command functionality cannot be supported in a client/server environment, while other commands may be supported in future releases.
The following TMI commands are not supported for VM Client 7.3:
DEFSCR
and DEFPOOL
These commands are superseded by the HSC POOLPARM
/VOLPARM
feature introduced in ELS 7.0. Refer to the publication Configuring HSC and VTCS for more information about this feature.
QEJECT
QREQUEST
SETOPER
VM Client does not support operator responses; therefore, all commands are processed as though the SETOPER
command was issued. Conditions that previously would have generated WTOR messages are returned as error messages.
STOP
In addition, the VM Client does not support the use of TAPEREQ
lookup keys, including job name, step name, program name, and data set name, to select media and recording technique values.
A general description of the interfaces between the tape management system (TMS) and VM Client includes the following topics:
TMS Responsibilities
This section describes the services a TMS provides.
TMS Decision Points
This section describes where TapePlex interaction assists TMS services for TapePlex-managed resources.
TapePlex Information Returned to the TMS
This section describes information returned because of TapePlex interaction.
Inter-user Communications Vehicle (IUCV) Considerations
This section describes the parameters used with the IUCV macro.
TMS and VM Client Interaction
This section describes various scenarios involving TMS to VM Client interaction.
The sections that follow describe these topics in detail.
The Tape Management System has three major functions:
User interface
Tape resource allocation
Operator interface
Normally, an end user requests TapePlex facilities indirectly by requesting services from a Tape Management System (TMS). Such requests are routed by the TMS to the VM Client, and then to the TapePlex server. Direct interaction between an end user and the VM Client only occurs if the end user issues VM Client commands directly using the VM Special Message (SMSG) facility, or invokes the VMTMI directly. See the distributed VMTMI SAMPLE for an example.
The resources under TMS control include:
Transports
The TMS normally has ownership of transports for Automatic Volume Recognition (AVR) and also assigns transports to users requesting tape services. The TMS determines the availability of tape transports for allocation requests. The TMS also knows the media type and density any transport supports. VM Client assists the TMS in selecting TapePlex-controlled transports, when necessary.
Data sets
The TMS maps data sets to tape volumes and may map external labels to internal labels. The TapePlex contains no such information.
Scratch volumes
The TMS is the final authority concerning the scratch status of volumes. This status also includes scratch subpool membership. To automate mount processing for a TMS generating ''nonspecific'' mounts (requests for scratch volumes that do not specify VOLSERs), the TapePlex also retains its own scratch status information. The TMS scratch status list is not considered a list of all available scratches, but rather as a subset of the total number of available scratch volumes.
Specific volumes
The TMS controls which users have access to any specific volume. The TapePlex handles volumes it controls at the request of an authorized operator or the TMS.
The TapePlex server can influence TMS decisions when TapePlex services are available to the TMS through the VM Client. The TapePlex server influences the TMS decisions at the following points:
When the TMS is initialized, have the TMS establish an IUCV path to the VM Client machine to determine if both the VM Client and the TapePlex server are operational and communicating. If the VM Client machine is not operational at TMS startup, establish an IUCV path as soon as possible after VM Client and TapePlex initialization. It is possible to establish and break connection for each transaction, but this causes unnecessary processing. To use IUCV efficiently, a path must be established and maintained throughout the TMS communications session.
At allocation time, the VM Client can provide information about media and location of specific volumes and scratch counts. The TMS can use the result of queries to select compatible optimum drives for an allocation request.
If the TMS requests, the VM Client can provide the VOLSER of a scratch volume before a MOUNT
request. This selection can be rejected or used on the subsequent mount. If this information is not needed, a nonspecific MOUNT
requests causes a scratch volume to be selected.
TapePlex information returned includes the following:
Configuration information includes the following:
Maximum number of transports in the largest ACS
Number of transports under library control
Number of ACSs
Number of LSMs
Response area sizes
Volume status information includes the following:
Volume in a cell
Volume in a drive
Volume not in library
Volume inaccessible
Volume location uncertain (errant)
Volume location information includes the following:
ACSid
LSMid
Panel location
Row location
Column location
Drives eligible from a TapePlex perspective are those in the same ACS or VTSS as the volume, and with a recording technique compatible with the volume. Not taken into account is the actual drive availability (attachability, online status).
Volume movement requests return a code indicating the success of the operation. If an error occurs, an additional code corresponding to the message issued to the operator is also returned.
LSM status is either online or offline. Online indicates that automated mounting can take place. Offline indicates only manual mounting is possible.
ACS status is connected or disconnected. Disconnected indicates that the ACS is not accessible from this host and any activity must be handled from another host.
VOLSERs for Scratch Management
If scratch selection is requested, a VOLSER marked as scratch in the TapePlex control data set is returned. This selection causes the volume to be marked as nonscratch.
Library Notation for Virtual Drives and Volumes
Using VM Client enables the TMS to access virtual drives and virtual volumes. The Tape Management Interface maps each VTSS to an ACS ID and a set of LSM IDs so that the TMS can handle virtual drives and volumes like real volumes. VM Client provides the VTSS to ACS mapping and ensures that ACS IDs that represent VTSSs do not overlap with real ACSs. Volume movement operations, such as EJECT
, MOVE
, and ENTER
, are not allowed for virtual volumes.
The inter-user communication vehicle (IUCV) is an IBM-supplied communications interface.
Note:
VMTMI SAMPLE
is a sample program illustrating the use of the VM Client Tape Management Interface. It can be found on the MAINTSTK
user ID.To use IUCV to issue requests, follow these steps:
Establish a connection to the VM Client service machine using the IUCV CONNECT
function.
Only authorized virtual machines may issue commands to the VM Client service machine. To obtain permission, the virtual machine issuing the TMI or VM Client command must be given privileges by a VM Client AUTHorize
command issued to the VM Client service machine either in the SMCPARMS
or SMCCMDS
file at startup, or from a previously authorized virtual machine.
In addition, the virtual machine must be authorized to CP through an IUCV control statement in its CP directory entry. This is typically done by a systems programmer or administrator. Make sure that the OPTION MAXCONN
specifies enough paths for your usage.
To establish this IUCV connection (path), the IUCV macro is issued with the following parameters:
IUCV CONNECT, PRMLIST=addr, * address of IUCV parm list USERID=addr, * address of CL8 'userid' USERDATA=addr, * address of CL16 'ddname' PRMDATA=NO * no parm data in IPARML
where:
userid
indicates the name of the VM Client service machine.
ddname
indicates the name of the VM Client IUCV interface that is requested for the connection. It is a 16 byte area as follows:
DC CL8'SLSTLMS' ddname DC CL8' ' reserved
On execution of the function, check the PSW condition code. If the condition code is 0, save the path ID from the IPARML area passed to the macro. The program must wait for the VM Client service machine to IUCV ACCEPT
the pending connection before sending any messages. If no ''connection complete
'' or ''path severed
'' is returned, either the VM Client is not active, is not fully initialized, or the IUCV CONNECT
requester specified invalid parameters.
Send the message to the VM Client service machine using the IUCV SEND
function. Specify the following parameters to the IUCV macro:
IUCV SEND, PATHID=adpid, TYPE=2WAY, BUFLEN=buflen, RBUF=reply, RLEN=reply length
where:
adpid
is the address of a data area containing the IUCV path ID.
TYPE=2WAY specifies that an IUCV reply is expected.
buflen
is the length of ''buffer''.
reply
is the address of the buffer containing the reply.
reply length
is the length of the reply buffer.
When you are finished using a connection to the VM Client service machine, release the path using the IUCV SEVER
function.
The following IUCV parameters are not supported for this interface:
TYPE=1WAY
IUCV REPLY
must be issued by the VM Client.
TRGCLS= TRGCLS
is ignored by the VM Client
DATA=PRMMSG CP
does not allow the SEND
to occur.
PRMMSG=
address
CP does not allow the SEND
to occur.
PRTY=YES
CP uses this to alter queuing to the VM Client service machine. The VM Client service machine does not give the message any special handling.
All other IUCV parameters may be used as desired.
Three fields in the IUCV parameter list (IPARML) deserve special mention:
USERID=
This parameter specifies the name of the service machine running the VM Client. Oracle recommends that your user ID be alterable, rather than hard-coded, to facilitate changes.
USERDTA=
This parameter specifies the name of the process in the service machine receiving TMS communication (ACSINT
). This must be SLSTLMS
.
UWORD=
This parameter specifies a word which will appear in R0 at interrupt time. It is useful for establishing addressability to a common data area. This contains an area listing pending requests, path status, and configuration values that are referenced in different routines.
Refer to the IBM publication VM/SP System Facilities for Programming or VM/XA CP Programming Services for additional information about the IUCV interface and the parameters listed above.
VM Client requires several points of interface with a tape management system (TMS):
TMS to VM Client initial connection
Drive Allocation
Operator message processing
The TMS provides a front end between VM Client and the user, maintaining allocation, data set, and scratch pool services. VM Client provides the TMS with mount/dismount handling and scratch volume selection, and influences the allocation of those volumes and drives under TapePlex control.
An invocation macro (ACSRQ) prepares a call to the Inter-User Communications Vehicle (IUCV) to communicate between the TMS and VM Client. The IUCV call itself is made by the TMS.
The following tape management system facilities support the communication:
An interface at allocation time to supply device type and scratch information
An interface at message time to handle the message normally displayed to the operator
A list of transport drive addresses and corresponding media and location information
An IUCV interrupt handler
At initial connection time it is useful to determine the size of the returned data areas for a few of the longer responses. These vary depending on the TapePlex configuration. These areas are then allocated before their required use.
While the TMS is fully responsible for drive allocation, VM Client and the TapePlex assist in this process by presenting a list of drives in order of their suitability to satisfy mounts of specific and scratch volumes.
The following section describes the interaction between the TMS allocation interface and the VM Client.
The TMS service machine receives a request from a virtual machine to mount a volume and invokes the allocation interface routine.
If an IUCV path to the VM Client service machine is not established, the tape management system attempts to establish one. If the attempt fails, no allocation assistance takes place, a return code indicates that condition, and a flag may be set to inform the message interface that operator message processing cannot take place since no special allocation has been done.
The TMS allocation interface sends a request, using an IUCV message, to the VM Client service machine:
ACSRQ QDRLIST,VOLSER=voladr
An alternative request is:
ACSRQ QDRLIST,VOLSER=voladr,COUNT=,LIST=
The request above includes the COUNT=
and LIST=
parameters. These two parameters describe a list of devices considered eligible by the TMS. This information is passed to the VM Client.
TMS VM CLIENT | ACSRQ QCONFIG | ICUV SEND <==============> IUCV RECEIVE | Format lists of | drives and status Select drive <==============> IUCV REPLY |
The allocation interface waits for an IUCV REPLY
A VM Client routine collects the data, formats the response, and issues an IUCV REPLY
. The IUCV REPLY
is mapped by the SLX
macro.
The TMS IUCV support functions notify the waiting allocation process that a response has been received.
The allocation interface routine then reformats the reply into a drive preference list (TMS dependent format), comparing the reply to the TMS-managed available drives, and leaves the interface.
If scratch selection is needed, issue:
ACSRQ SELSCR,DRIVE=drivadr
This returns a VOLSER and marks the volume as nonscratch in the control data set, or indicates that no scratch volume is available.
TMS VM CLIENT | ACSRQ SELSCR | ICUV SEND <==============> IUCV RECEIVE | Select VOLSER and | mark nonscratch Store VOLSER <==============> IUCV REPLY |
This section describes the interactions between the TMS message interface and the VM Client. The ”Operator Message Dialog” section outlines the processing of a MOUNT
request. Other message interface point requests (for example, DISMOUNT
, SCRATCH
), follow a similar sequence of events and are not separately described. The TMS may suppress or change the message based on the completion of the process.
A DISMOUNT
request is issued in response to conditions detected by the TMS that require a volume dismount (for example, the mounted volume is not the one requested), or in the case where the TMS always dismounts volumes after use.
A SCRATCH
request is issued by the TMS to return ''work'' volumes to scratch status. The HSC control data set on the server is updated to reflect these changes.
The TMS service machine receives a request from a virtual machine to mount a volume. The TMS service machine must have an IUCV path established to send commands to the VM Client. A drive has already been selected.
The message interface code determines that the request is for a drive.
The message interface may send a request, using an IUCV message, to the VM Client service machine to obtain location information.
ACSRQ QVOLUME,VOLSER=voladr
The message interface waits for an IUCV REPLY
The VM Client determines the volume status, adds the location data, and issues an IUCV REPLY
. If volume status information is retained from the allocation routine, the four previous steps may be omitted.
If the volume is in the TapePlex, the operator message interface sends a request, using an IUCV message to the service machine, specifying the volume to be mounted and the drive to be used.
ACSRQ MOUNT,VOLSER=volser,DRIVE=drivadr,PROTECT=
The message interface waits for an IUCV REPLY
The VM Client MOUNT
routine requests the server to perform the mount, formats a success/failure response, and issues a reply. The IUCV REPLY
to the originating message is mapped by the SLX
macro.
Note:
AMOUNT
request directed to a transport drive containing an unloaded volume causes a dismount of that volume followed by the requested mount.TMS IUCV support routines notify the waiting message interface that a response has been received.
The message interface routine examines the reply to determine if the mount was successful, sets an appropriate return code, and leaves the interface.
Control returns to the tape management system when the message interface routine completes processing.
When a StorageTek drive attached to a virtual machine is detached, or the virtual machine is logged off, a DETACH
message is issued to the VM system operator. If a drive becomes detached while a library or virtual volume is mounted, the TMS may not be notified, and would not issue a normal DISMOUNT
message to the VM Client service machine.
To properly handle the dismount, a VM PROP
(PRogrammable OPerator) facility should intercept certain messages and process accordingly
Note:
Like the TMS machine, thePROP
machine must be authorized by the VM Client service machine for commands. The function called using the PROP RTABLE
must have the name of the VM Client service machine available.SMCPROP EXEC
, LOGTAPE SAMPLE
, and RTABLE SAMPLE
are supplied as examples. The EXECs can be used unchanged or modified to suit the environment. These should be set up to execute similar to the following sequence:
PROP
detects the DETACH
message and invokes a routine (SMCPROP EXEC
) to check if a library (or virtual) volume was previously mounted on the drive (saved using SMCPROP EXEC
). If so, execute the following command:
CP SMSG vmclientuser DISMOUNT DRIVE cuu
SMCPROP EXEC
issues the command using the CP SMSG
interface to the VM Client service machine.
VM Client receives the dismount request.
If the volume is on the drive, the dismount is processed normally and the process is complete. For example:
Example 9-2 PROP-Detected Dismount Scenario A - Normal Dismount
PROP | VM CLIENT | Receive msg: | .SLS#124I MOUNT OF vvvvv1 ON | DRIVE cuu - COMPLETE | Save volume and transport address | | Receive msg: | TAPE cuu DETACHED ... | | Use drive address to get saved | volume. | | If a volume was previously saved | for the transport, issue dismount: | CP SMSG smcuser DISMOUNT DRIVE cuu ====> Receive dismount request | | Process dismount | DISMOUNT OF vvvvv1 FROM | DRIVE cuu COMPLETE |
If the drive has already been reallocated and a mount request is issued, VM Client finds the previous volume on the drive and automatically starts dismount processing for that volume. When this automatic dismount completes, the new volume is mounted. For example:
Example 9-3 PROP-Detected Dismount Scenario B - Dismount Processed Automatically
PROP | VM CLIENT Receive msg: | .SLS#124I MOUNT OF vvvvv1 ON | DRIVE cuu - COMPLETE | | Save volume and transport address | Receive msg: | TAPE cuu DETACHED ... | | Receive mount for vvvvv2 | from TMS Use transport address to get | save volume. | | Issue msg: | .SLS##81I VOLUME vvvvv1 | FOUND MOUNTED | ON DRIVE cuu | ATTEMPTING DISMOUNT. | | Process automatic dismount | of vvvvvv1 | | Process mount of vvvvv2| Issue dismount: | CP SMSG smcuser DISMOUNT DRIVE cuu ======> Receive dismount for vvvvv1 | from PROP| Receive msg: | .SLS0124I MOUNT OF vvvvv2 ON | DRIVE cuu - COMPLETE | | Save volume and transport address. | |
The tape management system interface uses the ACSRQ
invocation macro to prepare an IUCV
message that contains a request for the VM Client. After the ACSRQ
macro returns control to its caller, the TMS routine must issue an IUCV SEND
.
The types of requests used to interact with the library include:
query information
set environment parameters
volume processing
Invoke all VM Client requests through the ACSRQ
macro instruction. In general, specify the name of the function to be performed, the address of the data area to be sent (ACSINT
), and the other keyword parameters required.
The ACSRQ
macro builds the ACS Interface Block (ACSINT
) and optionally builds an IPARML
for an IUCV SEND
. An IUCV
instruction referencing the IPARML which has been built should be coded after the ACSRQ
macro. The receipt of the ACSINT
invokes the proper routines in the VM Client and returns information to the sender using an IUCV REPLY
.
The IUCV
restrictions documented in the IBM publications VM/SP System Facilities for Programming and VM/XA CP Programming Services apply. Due to the data area sizes, PRMMSG
is not supported. BUFLIST
and ANSLIST
are also not supported.
TMS VM CLIENT
|
ASRQ xxxxxxx |
ICUV SEND <==============> IUCV RECEIVE
WAIT | Process Request
<==============> IUCV REPLY
(External Interrupt) |
Check return code |
Process reply |
See "SLX Macro Mapping" for mapping of the reply area.
The following is the syntax for the ASRQ
macro:
Function
is one of the following:
DISMOUNT
EJECT
MOUNT
MOVE
QCAP
QCONFIG
QDRIVES
QDRLIST
QSCRATCH
QVOLUME
QVOLUSE
SCRATCH
SELSCR
Parameter
is one of the following:
,ACCT1=
acct1addr
,ACCT2=
acct2taddr
,CAP=
capidaddr
,COL=
coladdr
,COUNT=
countaddr
,DRIVE=
driveaddr
,HOSTID=
hostidaddr
,IPARML=YES
,LIST=
listaddr
,LSM=
lsmidaddr
,MEDIA=
medaddr
,MGMTCLS=
mgmtcls
,NOTIFY=INSDEL/NOINSDEL
,PAN=
paneladdr
,PATHID=
pathadr
,PROTECT=YES
,RECTECH=
recaddr
,ROW=
rowaddr
,RSPADDR=
bufadr
,RSPLEN=
buflen
,SCRATCH=
YES
,SUBPOOL=
subpooladdr
,TEXT=
textaddr
,TOLSM=
lsmidaddr
,TOPAN=
paneladdr
,USER=
useridaddr
,VOLSER=
voladdr
The tape management interface (TMI), which enables users to request query information, volume movement, and scratch volume control services from the VM Client, includes requests that allow media and recording technique to be specified.
The requests that can use media and recording technique information include:
MOUNT
QDRLIST
QSCRATCH
SELSCR
These requests are described on the following pages.
The TMI determines media and recording technique values for a request by using MEDia
and RECtech
parameters directly.
Note:
IfDSECT=YES
is specified, no other functions or parameters are valid. An ACSINT DSECT
is built.The DISMOUNT
request causes a cartridge to be removed from a specific drive. A library cartridge is moved to an LSM cell (selected by the HSC) and becomes available for future requests. A virtual volume remains resident in the VTSS and uses MGMTCLAS
definitions to determine migration, replication, and buffer residency policies.
The success of a DISMOUNT
request depends on whether the volume has received a REWIND/UNLOAD CCW
. If the drive hasn't yet received a REWIND/UNLOAD CCW
, the DISMOUNT
request is aborted.
A DISMOUNT
request may cancel a previous MOUNT
request for the same drive.
ACINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
DRIVE=
driveaddr
specifies the drive from which a volume should be dismounted. This parameter is required.
driveaddr
is the address of the 2-byte drive specification (ccua
). Specify an RX-type address of the data or the number of the register containing the data address.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdr
optionally, specifies the VOLSER
of the volume to be dismounted.
voladdr
is the address of a 6-character volume label; either an RX-type address of the data or the number of the register containing the data address.
An error will occur if the mounted volume has a different VOLSER
.
The response to a DISMOUNT
request is generated when all cartridge movement associated with the request has completed. The response contains a Reply Header and a Message Text Element. The reason code in the Reply Header (SLXSRC
) is a binary message number that indicates which HSC message was issued when the DISMOUNT
request completed. The Message Text Element contains the complete text of the message specified by the reason code.
See "SLX Macro Mapping" for information on the SLX
macro.
The EJECT
request initiates the removal of one or more (up to 500) cartridges from the library. The cartridges are moved from LSM cells to the highest preference CAP or to a CAP specified in the request, so they can be retrieved by an operator
A request to eject a virtual volume, or a volume not defined in the control data set is considered to be invalid.
The length of the response may vary considerably, depending on the number of volumes specified in the request. Several values are available in the response from a QCONFIG
request for use in determining the appropriate answer buffer length for a particular EJECT
request. These values include:
SLXZEJC1
contains the length of an EJECT
response for a single volume. Use this value for the answer buffer length when an EJECT
request specifies either VOLSER=
or COUNT=1
.
SLXXVOLL
contains the length of a single Volume Information Element and SLXXMSGL
contains the length of a single Message Text Element. When an EJECT
request specifies COUNT=n
, then the answer buffer length is computed using the formula: (((n-1)*(SLXXVOLL+SLXXMSGL))+SLXZEJC1)
.
SLXZEJCT
contains the length of an EJECT
response when the maximum number of VOLSERs (500) is specified in the request list. Use this value for the answer buffer length when the above formula cannot be used, and when the requester can afford to commit a large amount of storage (approximately 78KB) to the request.
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
CAP=
capidaddr
optionally, specifies the address of the CAP used to satisfy the request.
capidaddr
is the RX-type address of the data or the number of the register containing the data address.
The format is AALLCC
00
, where AA
is the ACS number (00-99 decimal), LL
is the LSM number (00-99 decimal), and CC
is the CAP number in decimal. These identifiers are always followed by 00
.
COUNT=
countaddr
optionally, specifies the address of a 2-byte field containing the number of VOLSERs in the list designated by the LIST
parameter.
countaddr
is an RX-type address of the data or the number of the register that contains the address of the data.
COUNT
is required with the LIST
parameter and is mutually exclusive with the VOLSER
parameter.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
LIST=
listaddr
optionally, specifies the address of the list of the elements.
listaddr
is an RX-type address of the data or the number of a register that contains the data address. Each element in this list is a 6-byte VOLSER.
A special form of this parameter, LIST=*
indicates to ACSRQ
that the list is already appended to the ACSINT
data area, and does not need to be moved.
LIST
is required with the COUNT
parameter and is mutually exclusive with the VOLSER
parameter.
LSMID=
lsmidaddr
optionally, specifies the address of the LSMid from which the volumes are ejected. If the CAP is not available in the specified LSM, the request fails. If the user does not specify LSM, the HSC chooses a single CAPid in the ACS of the first volume in the list.The format of an LSMid is AALL
, where AA
is the ACS number (decimal) and LL
is the LSM number (decimal). For example, 0102 is ACS 01, LSM 02.
lsmidaddr
is an RX address of the data or the number of the register containing the address of the LSMid.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
SEQ=NO|YES
optionally, specifies whether CAP eject processing fills the CAP cells sequentially or by home location distance.
NO
specifies that the EJECT
process order the requested volumes by home location. EJECT
fills the CAP or magazine (for the SL8500) according to the volume home location distance to the CAP; that is, volumes closest to the CAP are ejected first.
YES
specifies that the EJECT
process place cartridges in the CAP beginning with the topmost available CAP cell and continuing sequentially.
Note:
TheSEQ
parameter is effective for all LSM types but is used primarily for the SL8500 environment. If sequential order is desired for other LSM types, you must code SEQ=YES
.TEXT=
textaddr
optionally, specifies a a 32-character text string for association with the request.
textaddr
is an RX-type address of the data or the number of the register containing the address of the data.
USERID=
userisaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the address of the data.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdr
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the address of the data.
VOLSER
is mutually exclusive with the LIST
and COUNT
parameters. Either VOLSER
or LIST
and COUNT
must be specified.
The response from an EJECT
request consists of one Reply Header and one Volume Information Element, and one Message Text Element for each VOLSER that was specified in the request. Volume Information Elements and Message Text Elements appear in the same order as the VOLSERs in the request.
See "SLX Macro Mapping" for information on the SLX macro.
The MOUNT
request causes a volume to be mounted on a specific drive.
An automatic dismount will occur when a MOUNT
request is directed to a drive that contains an unloaded cartridge.
The ACSRQ MOUNT
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
DRIVE=
driveaddr
specifies the drive on which the volume is to be mounted; the address of the 2-byte drive specification (ccua
). This parameter is required.
driveaddr
an RX-type address of the data or the number of the register containing the data address.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
MEDIA=
medaddr
optionally, specifies the address of an 8-byte character field containing the media type of the cartridge to be mounted.
If MEDIA is not specified, the next compatible scratch cartridge is mounted without regard to media type.
medaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
MGMTCLAS=
mgmtclas
optionally, specifies the address of an eight character field containing the management class left justified and padded with blanks.
mgmtclas
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
If MGMTCLS
is not specified, but SUBPOOL
is specified, then MGMTCLS
may be set based upon the VM Client POOLmap
command.
IPARM=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
PROTECT=YES
optionally, specifies that the volume should be write protected. If PROTECT=YES
is not specified, the physical position of the thumbwheel determines whether the volume is write protected.
PROTECT=YES
is valid only with VOLSER
.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
SCRATCH=YES
optionally, specifies that the request is for a nonspecific (scratch) volume. A scratch VOLSER is selected at this time and mounted on the specified transport.
Either SCRATCH=YES
or VOLSER
must be specified.
SUBPOOL=
subpoolname
optionally, specifies the address of a 13-character field containing the name of the scratch subpool.
subpoolname
is an RX-type address of the data or the number of the register containing the data address. SCRPOOL
(subpool index) is no longer supported; you must use the SUBPOOL
parameter to select a scratch pool.
SUBPOOL
is valid only if SCRATCH=YES
is specified. If SUBPOOL
is specified, but MGMTCLS
is not specified, then MGMTCLS
may be set based upon the VM Client POOLmap
command.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdr
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the data address.
Either VOLSER
or SCRATCH=YES
must be specified. This parameter specifies the VOLSER of the volume to be mounted. Either VOLSER
or SCRATCH=YES
must be specified.
The response to a MOUNT
request is generated when all cartridge movement associated with the request has completed. The response contains a Reply Header, a Message Text Element, and if the request specified SCRATCH=YES
, a Volume Information Element. The reason code in the Reply Header (SLXSRC
) is a binary message number that indicates which HSC message was issued when the MOUNT
request completed. The Message Text Element contains the complete text of the message specified by the reason code. The Volume Information Element is present when the request specified SCRATCH=YES
and describes the scratch volume that was mounted.
The MOVE
request causes a volume to be moved to a specific location in the ACS.
The MOVE
function enables movement of a single volume to another location within an ACS. The destination of moved volumes may be the same LSM or a different LSM.
The MOVE
functions provides volume movement and improved tape management control.
A request to move a virtual volume, or a volume not defined in the control data set is considered to be invalid.
The ACSRQ MOVE
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV
IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
VOLSER=
volseraddr
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the data address.
Either VOLSER
or SCRATCH=YES
must be specified. This parameter specifies the VOLSER of the volume to be mounted. Either VOLSER
or SCRATCH=YES
must be specified.
LSM=
lsmaddr
optionally, specifies the address of an LSMid. The format of an LSMid is AALL
, where AA
is the ACS number (decimal) and LL
is the LSM number (decimal). For example, 0110 is ACS 01, LSM 10.
lsmaddr
is an RX-type address of the LSMid or the register (2) - (12) containing the address of the LSMid.
The COL
, PAN
, and ROW
parameters must accompany the LSM
parameter. This parameter is required if VOL
is not specified.
PAN=
paneladdr
optionally, specifies the address of a panel number. Format of the panel number is pp
, where pp
is a decimal number.
paneladdr
is an RX address of the panel or the register (2-12) containing the address of the panel number.
PAN
is required if LSM
is specified.
ROW=
rowaddr
optionally, specifies the address of a row number. Format of the row number is rr
where rr
is a decimal number.
rowaddr
is an RX address of the row or the register (2-12) containing the address of the row number.
ROW
is required if LSM
is specified.
COL=
columnaddr
optionally, specifies the address of a column number. Format of the column number is cc
, where cc
is a decimal number.
coladdr
is an RX address of the column or the register (2-12) containing the address of the column number.
COL
is required if LSM
is specified.
TOLSM=
lsmaddr
specifies the address of the LSMid where the volume is moved. The LSMid is two hexadecimal bytes in the format AALL
, where AA
is the ACS number (00-FF hexadecimal) and LL
is the LSM number (LL
is 00-17 hexadecimal). This parameter is required.
lsmaddr
is an RX-type address of the LSMid or the register (2) - (12) containing the address of the LSMid.
TOPAN=
paneladdr
optionally, specifies the address of a panel number. This parameter is required.
paneladdr
is an RX address of the panel or the register (2-12) containing the address of the panel number.
The response to a MOVE
request is generated when all cartridge movement associated with the request has completed. The response contains a Reply Header, a Message Text Element, and if the request was successful, one Volume Information Element. The reason code in the Reply Header (SLXSRC
) is a binary message number that indicates which HSC message was issued when the MOVE
request completed. The Message Text Element contains the complete text of the message specified by the reason code.
See "SLX Macro Mapping" for information on the SLX macro.
This request enables you to query the capacity and status of a CAP.
If ACSID
, LSM
, CAP
, or LIST
and COUNT
, are not specified, the data returned is for all CAPs.
The ACSRQ QCAP
request includes the following parameters:
ACSID=
acsidaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
CAP=
capidaddr
optionally, specifies the address of the CAP used to satisfy the request.
capidaddr
is the RX-type address of the data or the number of the register containing the data address.
The format of capidaddr
is AALLCC
00
, where AA
is the ACS number (decimal), LL
is the LSM number (decimal), and CC
is the CAP number. These identifiers are always followed by 00
.
If CAP
is specified, information about the specified CAP is returned.
COUNT=
countaddr
optionally, specifies the address of a 2-byte field containing the number of CAPIDs in the list designated by the LIST
parameter.
countaddr
is an RX-type address of the data or the number of the register that contains the address of the data.
COUNT
is required with the LIST
parameter.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV
IPARML
, and that the IPARML
is initialized.
LIST=
listitemaddr
optionally, specifies the address of the list of CAPs to be queried.
listitemaddr
is an RX-type address of the data or the number of the register containing the address of the data.
If LIST
is specified, information about all CAPs in the list is returned.
LSM=
lsmidaddr
optionally, specifies the address of an LSMid. The format of an LSMid is AALL
, where AA
is the ACS number (00-FF hexadecimal) and LL
is the LSM number (LL
is 00-17 hexadecimal). For example, 0102 is ACS 01, LSM 02. All values are in hexadecimal format.
lsmidaddr
is an RX-type address of the LSMid or the register (2) - (12) containing the address of the LSMid.
If LSM
is specified, the returned data is for the specific LSM. If ACSID
, LSM
, CAP
, or LIST
and COUNT
, are not specified, the data returned is for all CAPs.
PATHID=
pathidaddr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
The response to the QCAP
request contains a Reply Header and a CAP information element containing information about each CAP requested.
See "SLX Macro Mapping" for information on the SLX
macro.
The QCONFIG
request enables you to obtain summary information about the TapePlex configuration and the recommended answer buffer lengths for other TMS interface requests.
The QCONFIG
request should be the first request issued after an IUCV
connection has been established because its response contains a recommended answer buffer length (response length) for each type of TMS interface request.
The length of the QCONFIG
response may change from release to release. A TMS should use the following technique to obtain the recommended answer buffer length for a QCONFIG
request:
Issue a QCONFIG
request with answer buffer length of decimal 16. The response from this request consists of a Reply Header, truncated to 16 bytes. The return code in the header is 4, which indicates that the answer buffer was too small to contain the entire response. The word at offset decimal 12, SLXCRLN
, contains the recommended answer buffer length for a QCONFIG
request.
Reissue the QCONFIG
request using the recommended answer buffer length.
The ACSRQ QCONFIG
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufaddr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
The QCONFIG
response contains a Reply Header and a Configuration Summary Element. The length of each type of response element (for example, Volume Element) is returned in the Reply Header by QCONFIG
.
See "SLX Macro Mapping" for information on the SLX
macro.
The QDRIVES
request enables you to obtain detailed information about all transports and LSMs associated with the library, or with a particular ACS.
The ACSRQ QDRIVES
request includes the following parameters:
ACSID=
acsidaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
The QDRIVES
response consists of a Reply Header, a Drive Information section, and an LSM Information section. The Drive Information section contains one Drive Information Element for each transport in the library or ACS. The LSM Information section contains one LSM Information Element for each LSM in the library or ACS.
See "SLX Macro Mapping" for information on the SLX
macro.
The QDRLIST
request enables you to obtain the TapePlex recommendation for a library transport to be specified for a subsequent MOUNT
request.
The VM Client makes its recommendation by returning a list of Drive Information Elements which are ordered so that the first element describes the best transport to use, the second element describes the second best transport to use, and so on.
When the QDRLIST
request specifies a particular cartridge (that is, VOLSER
is specified), the Drive Information Elements are arranged so that the first transport listed is in the LSM that is closest to (or the same as) the LSM containing the cartridge. The last transport listed is in the LSM that is farthest from the LSM containing the cartridge. Only transports in the same ACS as the cartridge are represented in the Drive Information section.
When the QDRLIST
request specifies a scratch volume (that is, SCRATCH=YES
is specified), the Drive Information Elements are arranged so the first transport listed is in the LSM containing the most scratch volumes. The last transport listed is in the LSM containing the fewest scratch volumes. All transports in all ACSs are represented in the Drive Information section.
For requests for a specific virtual volume, either the drives in the VTSS where the volume is resident or can be recalled are returned. For requests for a virtual scratch volume, drives in VTSSs that support the requested management class are returned.
The VM Client ignores whether a transport already has a volume mounted, or is in an offline LSM or ACS when it orders the Drive Information Elements.
An optional list of transport addresses may be supplied with the QDRLIST
request. If a list is provided, the VM Client uses it as a screen while building its response. A Drive Information Element is included in the response only when its transport address is present in the list.
The ACSRQ QDRLIST
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
COUNT=
countaddr
optionally, specifies the address of a 2-byte field containing the number of CAPIDs in the list designated by the LIST
parameter.
countaddr
is an RX-type address of the data or the number of the register that contains the address of the data.
COUNT
is required with the LIST
parameter.
MEDIA=
medaddr
optionally, specifies the address of an 8-byte character field containing the media type of the cartridge to be mounted.
If MEDIA
is not specified, the next compatible scratch cartridge is mounted without regard to media type.
medaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
RECTECH=
recaddr
optionally, specifies the address of an 8-byte field containing the recording technique used to record data tracks on the tape surface.
If RECtech
is not specified, transports are selected depending on the MEDia
type that has been specified.
recaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
See "Recording Technique (RECtech
)" for a list of valid recording-technique values.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
LIST=
listaddr
optionally, specifies the address of the list of the elements.
listaddr
is an RX-type address of the data or the number of a register that contains the address of the data.
Each element in this list is a 2-byte drive address (ccua
).
A special form of this parameter, LIST=*
indicates to ACSRQ
that the list is already appended to the ACSINT
data area, and does not need to be moved.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
SCRATCH=YES
optionally, specifies that the request is for a nonspecific (scratch) volume. A scratch VOLSER
is selected at this time and mounted on the specified transport.
Either SCRATCH=YES
or VOLSER
must be specified.
SUBPOOL=
subpoolname
optionally, specifies the address of a 13-character field containing the name of the scratch subpool.
subpoolname
is an RX-type address of the data or the number of the register containing the address of the data. SCRPOOL
(subpool index) is no longer supported; you must use the SUBPOOL
parameter to select a scratch pool.
SUBPOOL
is valid only if SCRATCH=YES
is specified.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdr
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the data address.
Either VOLSER
or SCRATCH=YES
must be specified. This parameter specifies the VOLSER of the volume to be mounted. Either VOLSER
or SCRATCH=YES
must be specified.
The QDRLIST
response always contains a Reply Header and a Drive Information section. If VOLSER
was specified, the response also contains a Volume Information Element.
See "SLX Macro Mapping" for information on the SLX
macro.
The QSCRATCH
request enables you to obtain detailed information about all LSMs associated with the library, or with a particular ACS. This information includes the number of scratch volumes in each LSM.
When the library and its associated control data set are shared by more than one HSC, then the reported scratch totals may differ from the true totals because they may not account for recent scratch volume activity on other processors. However, each HSC refreshes its scratch volume totals from the control data set every five minutes so the variance should be slight.
The ACSRQ QSCRATCH
request includes the following parameters:
ACSID=
acsidaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
MEDIA=
medaddr
optionally, specifies the address of an 8-byte character field containing the media type of the requested scratch cartridge.
If MEDia
is not specified, scratch cartridges are selected without regard to media type.
medaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
See "Media Type (MEDia
)" for a list of valid media-type values.
RECTECH=
recaddr
optionally, specifies the address of an 8-byte field containing the recording technique used to record data tracks on the tape surface.
This parameter is optional. If RECtech
is not specified, scratch cartridges are selected depending on the MEDia
type that has been specified.
recaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
See "Recording Technique (RECtech
)" for a list of valid recording-technique values.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
SUBPOOL=
subpoolname
optionally, specifies the address of a 13-character field containing the name of the scratch subpool.
subpoolname
is Specify either an RX-type address of the data or the number of the register containing the address of the data. SCRPOOL
(subpool index) is no longer supported; you must use the SUBPOOL
parameter to select a scratch pool.
SUBPOOL
is valid only if SCRATCH=YES
is specified.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
The QSCRATCH
response contains a Reply Header and an LSM Information Element for each LSM.
See "SLX Macro Mapping" for information on the SLX macro.
The QVOLUME
request enables you to obtain the current library status of one or more (up to 500) cartridges.
The length of the response may vary considerably, depending on the number of volumes specified in the request. Several values are available in the response from a QCONFIG
request for use in determining the appropriate answer buffer length for a particular QVOLUME
request. These values include:
SLXZQVOL
contains the length of a QVOLUME
response for a single volume. Use this value for the answer buffer length when a QVOLUME
request specifies either VOLSER
or COUNT=1
.
SLXXVOLL
contains the length of a single Volume Information Element. When a QVOLUME
request specifies COUNT=n
, then the answer buffer length is computed using the formula: (((n-1)*SLXXVOLL)+SLXZQVOL)
.
SLXZVOL
contains the length of a QVOLUME
response when the maximum number of VOLSERs (500) is specified in the request list. Use this value for the answer buffer length when the above formula cannot be used, and when the requester can afford to commit a large amount of storage (approximately 16KB) to the request.
The ACSRQ QVOLUME
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
COUNT=
countid
optionally, specifies the address of a 2-byte field containing the number of CAPID
s in the list designated by the LIST
parameter.
countaddr
is an RX-type address of the data or the number of the register that contains the address of the data.
COUNT
is required with the LIST
parameter.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
LIST=
listaddr
optionally, specifies the address of the list of the elements.
listaddr
is an RX-type address of the data or the number of a register that contains the address of the data.
Each element in this list is a 2-byte drive address (ccua
).
A special form of this parameter, LIST=*
indicates to ACSRQ
that the list is already appended to the ACSINT
data area, and does not need to be moved.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdrid
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the data address.
Either VOLSER
or SCRATCH=YES
must be specified. This parameter specifies the VOLSER
of the volume to be mounted. Either VOLSER
or SCRATCH=YES
must be specified.
The QVOLUME
response consists of a Reply Header and a Volume Information Element for each VOLSER that was specified in the request. Volume Information Elements appear in the same order as the VOLSERs in the request.
See "SLX Macro Mapping" for information on the SLX
macro.
The QVOLUSE
request enables you to obtain the current status of mounted volumes.
The length of the response may vary considerably, depending on the number of volumes returned by the request.
The ACSRQ QVOLUSE
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
The QVOLUSE
response consists of a Reply Header and a Volume Information Element for each VOLSER that was returned by the request. Volume Information Elements appear in the same order as the VOLSERs returned by the request.
See "SLX Macro Mapping" for information on the SLX
macro.
The SCRATCH
request causes a volume to be placed in scratch status in the server control data set.
The specified cartridge must already be in the library. No cartridge movement occurs as the result of a SCRATCH
request. However, SCRATCH
request processing must select the cartridge (that is, must acquire exclusive use of the cartridge) to change its state. As a result, a SCRATCH
request will fail if the cartridge is mounted on a drive.
The ACSRQ SCRATCH
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdr
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the data address.
Either VOLSER
or SCRATCH=YES
must be specified. This parameter specifies the VOLSER of the volume to be mounted. Either VOLSER
or SCRATCH=YES
must be specified.
The response to SCRATCH
contains only a Reply Header.
See "SLX Macro Mapping" for information on the SLX macro.
The SELSCR
request causes the server to select a library scratch volume and remove it from scratch status in the control data set.
No volume movement occurs.
When neither ACSID
nor DRIVE
is specified, the HSC searches through all library LSMs and chooses a scratch volume from the LSM containing the most scratch volumes. When ACSID
is specified, the HSC chooses a scratch volume from the LSM in the specified ACS that holds the most cartridges. When DRIVE
is specified the HSC chooses a scratch volume from the closest LSM, if the drive is in an automatic mode LSM.
The ACSRQ SELSCR
request includes the following parameters:
ACSID=
acsidaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
ACSDRIVE=
driveaddr
optionally, specifies the address of the 2-byte drive specification (ccua
).
driveaddr
is an RX-type address of the data or the number of the register containing the address of the data.
DRIVE
is mutually exclusive with ACSID
. It specifies the drive which the scratch volume should be near.
MEDIA=
medaddr
optionally, specifies the address of an 8-byte character field containing the media type of the selected scratch cartridge. If MEDia
is not specified, scratch cartridges are selected without regard to media type.
medaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
See "Media Type (MEDia
)" for a list of valid media-type values.
RECTECH=
recaddr
optionally, specifies the address of an 8-byte field containing the recording technique used to record data tracks on the tape surface.
If RECtech
is not specified, scratch cartridges are selected depending on the MEDia
type that has been specified.
recaddr
is an RX-type address of the data or the register (2) - (12) containing the address of the data.
See "Recording Technique (RECtech
)" for a list of valid recording-technique values.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV
IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM by QCONFIG
.
SUBPOOL=
subpoolname
optionally, specifies the address of a 13-character field containing the name of the scratch subpool.
subpoolname
is an RX-type address of the data or the number of the register containing the address of the data. SCRPOOL
(subpool index) is no longer supported; you must use the SUBPOOL
parameter to select a scratch pool.
SUBPOOL
is valid only if SCRATCH=YES
is specified.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
The response to SELSCR
contains a Reply Header and a Volume Information Element. The Reply Header contains a return code (SLXCMDRC
) indicating the success of the operation. The Volume Information Element describes the selected volume.
See "SLX Macro Mapping" for information on the SLX
macro.
The UNSCRATCH
request causes a volume to be removed from scratch status in the control data set.
A request to unscratch of volume not defined in the control data set is considered to be invalid.
For real volumes, no cartridge movement occurs because of the UNSCRATCH
request. However, UNSCRATCH
request processing must select the volume (that is, must acquire exclusive use of the volume) to change its state. As a result, an UNSCRATCH
request will fail if the volume is mounted on a real or virtual drive (see "Considerations").
The ACSRQ UNSCRATCH
request includes the following parameters:
ACSINT=
acsintaddr
specifies the address of the data area being sent to the VM Client service machine. This parameter is required.
acsintaddr
is an RX-type data address or the number of the register containing the data address. ACSRQ
references the ACSINT
at this address when filling in the data.
HOSTID=
hostidaddr
optionally, specifies the address of an eight character host ID, left justified and padded with blanks. If this parameter is not specified, the host ID executing the request is used.
hostidaddr
is an RX-type host ID address or the register (2) - (12) containing the host ID address
IPARML=YES
optionally, specifies that the requester has established addressability to an IUCV
IPARML
, and that the IPARML
is initialized.
PATHID=
pathadr
optionally, specifies the address of a 2-byte IUCV
path ID of the library service machine.
pathadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND PATHID
statement.
PATHID
is valid only if IPARML=YES
is specified. If PATHID
is not specified, the subsequent IUCV SEND
must specify it.
RSPADDR=
bufadr
optionally, specifies the address of the IUCV
answer buffer.
bufadr
is an RX-type data address or the number of the register containing the data address. This data is used in the IUCV SEND ANSBUF
statement.
RSPADDR
is valid only if IPARML=YES
is specified. If RSPADDR
is not specified, the subsequent IUCV SEND
must specify it.
RSPLEN=
buflen
optionally, specifies the address of the length of the IUCV
answer buffer.
buflen
is an RX-type address of the 2-byte field or the number of the register containing the data address. This data is used in the IUCV SEND ANSLEN
statement.
RSPLEN
is valid only if IPARML=YES
is specified. If RSPLEN
is not specified, the subsequent IUCV SEND
must specify it. The response length must be at least the value returned in SLXZDISM
by QCONFIG
.
USER=
useridaddr
optionally, specifies an 8-byte user ID associated with a console ID for the request.
useridaddr
is an RX-type address of the data or the number of the register containing the data address.
If USER
is not specified, the user ID executing the request is used.
VOLSER=
voladdr
optionally, specifies the address of a 6-character volume label.
voladdr
is an RX-type address of the data or the number of the register containing the data address.
Either VOLSER
or SCRATCH=YES
must be specified. This parameter specifies the VOLSER of the volume to be mounted. Either VOLSER
or SCRATCH=YES
must be specified.
The response to UNSCRATCH
contains only a Reply Header.
See "SLX Macro Mapping" for information on the SLX
macro.
This section describes interface data areas for the SLX macro.
A reply always begins with a header. The header may be followed by one or more ”sections''. Each section is a table of ”elements'' of a particular type (for example, Volume Information Element). If the Reply Header is aligned on a doubleword boundary, then all subsequent sections and elements are guaranteed to also begin on doubleword boundaries.
A section directory (number/offset/length) is defined in the Reply Header for each possible section type, even though no reply will ever contain all types of sections. The order in which the section directories appear within the header has no relationship to the order in which sections are physically arranged after the header.
A section directory's number specifies how many elements of that type are actually present in the reply. If a section directory's number is nonzero, then that section directory's offset specifies the offset, from the start of the reply header, to the first (or only) element of that type. If a section directory's number is greater than one, then that section directory's length, which specifies the length of a single element of that type, must be used to access the second and subsequent elements of that type. For example, add the length to the offset to get the offset to the second element; add in the length again to get the offset to the third element; and so on. The number of elements in each section is variable. The following tables denote which sections of the reply will be returned for a given request.
The following table provides an SLS macro parameter matrix:
Table 9-1 SLS Macro - Parameter Matrix
Reply Section | Header | Config | CAP | Volume | Drive | LSM | Message Text |
---|---|---|---|---|---|---|---|
|
1 |
NA |
NA |
NA |
NA |
NA |
1 |
|
1 |
NA |
NA |
* |
NA |
NA |
* |
|
1 |
NA |
NA |
1 (if scratch) |
NA |
NA |
1 |
|
1 |
NA |
NA |
1 (if successful) |
NA |
NA |
1 |
|
1 |
NA |
1+ |
NA |
NA |
NA |
NA |
|
1 |
1 |
NA |
NA |
NA |
NA |
NA |
|
1 |
NA |
NA |
NA |
1+ |
1+ |
NA |
|
1 |
NA |
NA |
1 (if not scratch) |
1+ |
NA |
NA |
|
1 |
NA |
NA |
NA |
NA |
NA |
NA |
|
1 |
NA |
NA |
NA |
NA |
NA |
NA |
|
1 |
NA |
NA |
NA |
NA |
NA |
NA |
|
1 |
NA |
NA |
* |
NA |
NA |
NA |
|
1 |
NA |
NA |
* |
NA |
NA |
NA |
|
1 |
NA |
NA |
NA |
NA |
1+ |
NA |
|
1 |
NA |
NA |
1 |
NA |
NA |
NA |
|
1 |
NA |
NA |
NA |
NA |
NA |
NA |
Note:
1 is equal to 1 and only 1.
* (EJECT and QVOLUME) are limited by the number of Volume Information Elements contained in the SLX reply area (maximum of 500).
1+ indicates a number from 1 to n depending on the library configuration.
The following example shows output for the SLX record format:
SLX - VM CLIENT EXTERNAL INTERFACE REPLY FUNCTION: MAPS A REPLY AREA RETURNED BY ONE OF THE FOLLOWING VM CLIENT REQUESTS: DISMOUNT - DISMOUNT A VOLUME EJECT - EJECT A VOLUME FROM THE LIBRARY MOUNT - MOUNT A VOLUME MOVE - MOVE A VOLUME QCAP - RETURN CAP SUMMARY QCONFIG - RETURN CONFIGURATION SUMMARY QDRIVES - RETURN DRIVE AND LSM INFORMATION QDRLIST - RETURN DRIVE INFORMATION, ORDERED BY PREFERENCE QSCRATCH - RETURN LSM INFORMATION, ORDERED BY PREFERENCE QVOLUME - RETURN VOLUME INFORMATION SCRATCH - CHANGE A VOLUME'S STATUS TO ’SCRATCH' SELSCR - SELECT A SCRATCH VOLUME SPECIAL CONSIDERATIONS: A REPLY ALWAYS BEGINS WITH A HEADER. THE HEADER MAY BE FOLLOWED BY ONE OR MORE ”SECTIONS”. EACH SECTION IS A TABLE OF ”ELEMENTS” OF A PARTICULAR TYPE (E.G. VOLUME INFORMATION ELEMENT). IF THE REPLY HEADER IS ALIGNED ON A DOUBLEWORD BOUNDARY, THEN ALL SUBSEQUENT SECTIONS AND ELEMENTS ARE GUARANTEED TO ALSO BEGIN ON DOUBLEWORD BOUNDARIES. A SECTION DIRECTORY (NUMBER/OFFSET/LENGTH) IS DEFINED IN THE REPLY HEADER FOR EACH POSSIBLE SECTION TYPE, EVEN THOUGH NO REPLY WILL EVER CONTAIN ALL TYPES OF SECTIONS. THE ORDER IN WHICH THE SECTION DIRECTORIES APPEAR WITHIN THE HEADER HAS NO RELATIONSHIP TO THE ORDER IN WHICH SECTIONS ARE PHYSICALLY ARRANGED AFTER THE HEADER. A SECTION DIRECTORY'S NUMBER SPECIFIES HOW MANY ELEMENTS OF THAT TYPE ARE ACTUALLY PRESENT IN THE REPLY. IF A SECTION DIRECTORY'S NUMBER IS NONZERO, THEN THAT SECTION DIRECTORY'S OFFSET SPECIFIES THE OFFSET, FROM THE START OF THE REPLY HEADER, TO THE FIRST (OR ONLY) ELEMENT OF THAT TYPE. IF A SECTION DIRECTORY'S NUMBER IS GREATER THAN ONE, THEN THAT SECTION DIRECTORY'S LENGTH, WHICH SPECIFIES THE LENGTH OF A SINGLE ELEMENT OF THAT TYPE, MUST BE USED TO ACCESS THE SECOND AND SUBSEQUENT ELEMENTS OF THAT TYPE: ADD THE LENGTH TO THE OFFSET TO GET THE OFFSET TO THE SECOND ELEMENT; ADD IN THE LENGTH AGAIN TO GET THE OFFSET TO THE THIRD ELEMENT; AND SO ON. HEADER DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLX 0 (0) AREA 1 SLXRPLY REPLY HEADER 0 (0) CHARACTER 3 SLXHID HEADER IDENTIFIER 3 (3) A-ADDR 1 SLXCMDRC RETURN CODE: 0 (00) CONST SLXROK REQUEST PROCESSED SUCCESSFULLY 4 (04) CONST SLXRWARN REQUEST SUCCESSFUL WITH WARNING SLXSRC WILL PROVIDE THE SPECIFIC REASON FOR THE WARNING DEC HEX TYPE LENGTH LABEL DESCRIPTION 8 (08) CONST SLXRBADP REQUEST FAILED; THE REQUEST BLOCK (MAPPED BY ACSINT) CONTAINED INVALID DATA (E.G., INCOMPATIBLE OPTIONS); SLXSRC (REASON CODE) WILL PROVIDE THE OFFSET OF THE ACSINT FIELD FOUND TO BE IN ERROR. DEC HEX TYPE LENGTH LABEL DESFRIPTION 12 (0C) CONST SLXRIERR REQUEST FAILED; AN UNRECOVERABLE INTERNAL ERROR OCCURRED WHILE PROCESSING THE REQUEST. DEC HEX TYPE LENGTH LABEL DESCRIPTION 16 (10) CONST SLXRFAIL REQUEST FAILED; SLXSRC WILL PROVIDE THE SPECIFIC REASON FOR THE FAILURE. 20 (14) CONST SLXRNHSC REQUEST FAILED - HSC NOT AVAILABLE 44 (2C) CONST SLXRBADL REQUEST FAILED; REPLY AREA PROVIDED BY REQUESTOR WAS TOO SMALL TO CONTAIN ALL REPLY DATA ASSOCIATED WITH THE REQUEST. IF FIELD SLXCRLN IS NON-ZERO, IT CONTAINS THE LENGTH VALUE THAT SHOULD BE SPECIFIED FOR THE REPLY AREA FOR THIS REQUEST. 48 (30) CONST SLXRNVCI VCIRQST AND VCIRESP NOT SUPPORTED. EITHER VTCS IS NOT INSTALLED - OR - IS NOT AT THE REQUIRED LEVEL TO SUPPORT THE PGMI VCI RESPONSES. DEC HEX TYPE LENGTH LABEL 4 (04) A-ADDR 1 SLXVERS REPLY VERSION CODE: 7 (07) CONST 3 SLXVCODE THIS IS VERSION 9 OF THE REPLY AREA. 5 (5) HEXSTRING 4 -RESERVED- RESERVED. 8 (8) SIGNED-FWORD SLXSRC REASON CODE FOR FAILED OPERATION. 32818 (8032) CONST SLXTINTR PGMI TASK INTERRUPTED. 32822 (8036) CONST SLXSANF SEARCH ARGUMENT NOT FOUND. 32826 (803A) CONST SLXMSTT MISMATCHED TOKEN TYPES. 32832 (8040) CONST SLXTRNF TOKEN AREA NOT FOUND. 32848 (8050) CONST SLXSFUL REPLY AREA FULL. 32849 (8051) CONST SLXDVMM MEDIA INCOMPATIBLE WITH DEVICE TYPE. 12 (C) SIGNED-FWORD 4 SLXCRLN IF RETURN CODE (SLXCMDRC) IS 2C (SLXRBADL), THEN THIS FIELD CONTAINS EITHER THE MINIMUM ACCEPTABLE REPLY AREA LENGTH FOR THE REQUEST, OR 0 IF THE MINIMUM LENGTH COULDN'T BE DETERMINED. OTHERWISE (I.E., RETURN CODE ISN'T 2C), THIS FIELD CONTAINS THE ACTUAL LENGTH OF THIS REPLY. 16 (10) SIGNED-FWORD 4 SLXPEOFF PARAMETER ERROR OFFSET IF SLSXRC <> 0 THEN THIS POINTS TO AN ELEMENT IN A LIST WHERE PROCESSING STOPPED WHEN THE REQUEST WAS ”QCAP”. 20 (14) LENGTH SLXHL TO MAKE COMPATIBLE WITH MVS CODE CONFIGURATION SUMMARY SECTION DIRECTORY DEC HEX TYPE LENGTH LABEL DESCRIPTION 20 (14) SIGNED-FWORD 4 SLXXCFGN NUMBER OF CONFIGURATION ELEMENTS PRESENT IN THIS REPLY. 24 (18) SIGNED-FWORD 4 SLXXCFGO OFFSET TO CONFIGURATION SECTION, FROM START OF REPLY, OR 0 IF REPLY DOESN'T CONTAIN ANY CONFIGURATION ELEMENTS. 28 (1C) SIGNED-FWORD 4 SLXXCFGL LENGTH OF A CONFIGURATION ELEMENT. VOLUME INFORMATION SECTION DIRECTORY DEC HEX TYPE LENGTH LABEL DESCRIPTION 32 (20) SIGNED-FWORD 4 SLXXVOLN NUMBER OF VOLUME ELEMENTS PRESENT IN THIS REPLY. 36 (24) SIGNED-FWORD 4 SLXXVOLO OFFSET TO VOLUME SECTION, FROM START OF REPLY, OR 0 IF REPLY DOESN'T CONTAIN ANY VOLUME ELEMENTS. 40 (28) SIGNED-FWORD 4 SLXXVOLL LENGTH OF A VOLUME ELEMENT. DRIVE INFORMATION SECTION DIRECTORY DEC HEX TYPE LENGTH LABEL DESCRIPTION 44 (2C) SIGNED-FWORD 4 SLXXDRVN NUMBER OF DRIVE ELEMENTS PRESENT IN THIS REPLY. 48 (30) SIGNED-FWORD 4 SLXXDRVO OFFSET TO DRIVE SECTION, FROM START OF REPLY, OR 0 IF REPLY DOESN'T CONTAIN ANY DRIVE ELEMENTS. 52 (34) SIGNED-FWORD 4 SLXXDRVL LENGTH OF A DRIVE ELEMENT. LSM INORMATION SECTION DIRECTORY DEC HEX TYPE LENGTH LABEL DESCRIPTION 56 (38) SIGNED-FWORD 4 SLXXLSMN NUMBER OF LSM ELEMENTS PRESENT IN THIS REPLY 60 (3C) SIGNED-FWORD 4 SLXXLSMO OFFSET TO LSM SECTION, FROM START OF REPLY, OR 0 IF REPLY DOESN'T CONTAIN ANY LSM ELEMENTS. 64 (40) SIGNED-FWORD 4 SLXXLSML LENGTH OF AN LSM ELEMENT. MESSAGE TEXT SECTION DIRECTORY WARNING: THIS DIRECTORY DOES NOT EXIST WHEN THE VALUE IN THE REPLY VERSION NUMBER FIELD, SLXVERS, IS LESS THAN 2. DEC HEX TYPE LENGTH LABEL DESCRIPTION 68 (44) SIGNED-FWORD 4 SLXXMSGN NUMBER OF MESSAGE ELEMENTS PRESENT IN THIS REPLY. 72 (48) SIGNED-FWORD 4 SLXXMSGO OFFSET TO MESSAGE SECTION, FROM START OF REPLY, OR 0 IF REPLY DOESN'T CONTAIN ANY MESSAGE ELEMENTS. 76 (4C) SIGNED-FWORD 4 SLXXMSGL LENGTH OF A MESSAGE ELEMENT QCAP INFORMATION SECTION DIRECTORY DEC HEX TYPE LENGTH LABEL DESCRIPTION 80 (50) SIGNED-FWORD 4 SLXXCAPN NUMBER OF CAP ELEMENTS PRESENT IN THIS REPLY. 84 (54) SIGNED-FWORD 4 SLXXCAPO OFFSET TO CAP SECTION FROM START OF REPLY. 88 (58) SIGNED-FWORD 4 SLXXCAPL LENGTH OF A CAP ELEMENT. CONFIGURATION SUMMARY ELEMENT THIS ELEMENT APPEARS IN THE REPLY TO A QCONFIG REQUEST AND SUPPLIES SUMMARY INFORMATION ABOUT THE LIBRARY AND ABOUT REPLY LENGTHS NECESSARY FOR OTHER TYPES OF REQUESTS. 0 (0) STRUCTURE SLXSCFG CONFIGURATION SUMMARY ELEMENT. 0 (0) CHARACTER 3 SLXLID ELEMENT IDENTIFIER. 3 (3) HEXSTRING 1 -RESERVED- RESERVED. 4 (4) CHARACTER 8 SLXLHNAM HOST NAME. 12 (C) SIGNED-FWORD 4 SLXLHHBT HOST PULSE VALUE. 16 (10) SIGNED-FWORD 4 SLXLRSTM RESERVE TIMEOUT LIMIT. 20 (14) CHARACTER 8 SLXLQNAM ENQ MAJOR NAME. 28 (1C) CHARACTER 8 SLXLEJPS EJECT COMMAND PASSWORD (ENCRYPTED) 36 (24) CHARACTER 1 SLXLCMPF COMMAND PREFIX CHARACTER. 37 (25) A-ADDR 1 SLXLSCLB LIBRARY DEFAULT SCRATCH LABE L TYPE CODE: 1 (01) CONST SLXLLBSL STANDARD (SL). 2 (02) CONST SLXLLBAL ASCII (AL). 3 (03) CONST SLXLLBNL NON-LABELED (NL). 4 (04) CONST SLXLLBNS NON-STANDARD LABEL (NSL) 38 (26) A-ADDR 1 SLXLSMF SMF RECORD TYPE 39 (27) HEXSTRING 1 -RESERVED- RESERVED. 40 (28) SIGNED-FWORD 4 SLXQMDR LARGEST NUMBER OF DRIVES IN ANY ACS. 44 (2C) SIGNED-FWORD 4 SLXQDRCT NUMBER OF DRIVES IN THE LIBRARY. 48 (30) SIGNED-FWORD 4 SLXQACNT NUMBER OF ACSS IN THE LIBRARY. 52 (34) SIGNED-FWORD 4 SLXQLCNT NUMBER OF LSMS IN THE LIBRARY. 56 (38) SIGNED-FWORD 4 SLXZVOL MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A QVOLUME REQUEST THAT SPECIFIES THE LARGEST SUPPORTED NUMBER OF VOLUMES (500). 60 (3C) SIGNED-FWORD 4 SLXZQDRV MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A QDRIVES REQUEST. 64 (40) SIGNED-FWORD 4 SLXZQDRL MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A QDRLIST REQUEST. 68 (44) SIGNED-FWORD 4 SLXQVOL MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A QVOLUME REQUEST THAT SPECIFIES ONLY 1 VOLUME. 72 (48) SIGNED-FWORD 4 SLXZGSCR MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A SELSCR REQUEST. 76 (4C) SIGNED-FWORD 4 SLXZMDM MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A MOUNT REQUEST. 80 (50) SIGNED-FWORD 4 SLXZQSCR MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A QSCRATCH REQUEST. 84 (54) SIGNED-FWORD 4 SLXZDISM MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A DISMOUNT REQUEST. 88 (58) SIGNED-FWORD 4 SLXZEJCT MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO AN EJECT REQUEST THAT SPECIFIES THE LARGEST SUPPORTED NUMBER OF VOLUMES (500). 92 (5C) SIGNED-FWORD 4 SLXZSCR MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A SCRATCH REQUEST. WARNING: THE REMAINING FIELDS OF THIS ELEMENT ARE AVAILABLE FOR VERSION(S) 3 AND ABOVE. DEC HEX TYPE LENGTH LABEL DESCRIPTION 108 (6C) SIGNED-FWORD 4 SLXZMOVE MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO AN MOVE REQUEST. 112 (70) SIGNED-FWORD 4 SLXZEJC1 MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO AN EJECT REQUEST FOR ONLY 1 VOLUME. WARNING: THE REMAINING FIELDS OF THIS ELEMENT ARE AVAILABLE FOR VERSION(S) 6 AND ABOVE. DEC HEX TYPE LENGTH LABEL DESCRIPTION 116 (74) A-ADDR 4 SLXQUCSA MVS -- ADDRESS OF SLSUXCSA. 120 (78) SIGNED-FWORD 4 -RESERVED- RESERVED. 124 (7C) SIGNED-FWORD 4 SLXQLCAP NUMBER OF CAPS IN LIBRARY. 128 (80) SIGNED-FWORD 4 SLXEXLM0 ExLM R15 132 (84) SIGNED-FWORD 4 SLXEXLM1 ExLM R1 136 (88) SIGNED-FWORD 4 SLXEXLM2 ExLM R2 140 (8C) SIGNED-FWORD 4 SLXZQCAP MAXIMUM LENGTH OF REPLY DATA RETURNED IN RESPONSE TO A QCAP REQUEST. 156 (9C) SIGNED-FWORD 4 -RESERVED- RESERVED FUTURE USE. 160 (A0) SIGNED-HWORD 2 SLXHSCV HSC VERSION NUMBER 162 (A2) HEXSTRING 6 -RESERVED- 168 (A8) CONST SLXSCFGL LENGTH OF A CONFIGURATION ELEMENT. QDSN INFORMATION ELEMENT THIS ELEMENT APPEARS IN THE REPLY TO A QDSN REQUEST AND SUPPLIES SUMMARY INFORMATION ABOUT THE CURRENT REFERENCED DATASETS USED BY THE HSC. DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLXDSNIM DATASET INFORMATION MAP. 0 (0) CHARACTER 3 SLXQDID SECTION IDENTIFIER. 3 (03) BITSTRING 1 SLXDSFLG DATASET TYPE. 1 (01) CONST SLXDSPRM CDS PRIMARY. 2 (02) CONST SLXDSSEC CDS SECONDARY. 3 (03) CONST SLXDSSBY CDS STANDBY. 4 (04) CONST SLXDSVAT VOLUME ATTRIBUTES. 5 (05) CONST SLXDSUAT UNIT ATTRIBUTES. 6 (06) CONST SLXDSTRQ TAPEREQS. 7 (07) CONST SLXDSPLB PARMLIB. 8 (08) CONST SLXDSJNP PRIMARY JOURNAL. 9 (09) CONST SLXDSJNA ALTERNATE JOURNAL. 9 (09) CONST SLXDSMAX MAX NUMBER OF QDS RETURNED. 4 (04) CHARACTER 44 SLXDSNAM DATASET NAME. 48 (30) CHARACTER 8 SLXDSMBR MEMBER NAME. 56 (38) CHARACTER 6 SLXDSVOL VOLUME NAME. 62 (3E) CHARACTER 8 SLXDSUNT UNIT NAME. 70 (46) CHARACTER 2 -RESERVED- RESERVED. 72 (48) CHARACTER 96 -RESERVED- RESERVED. 168 (A8) AREA 8 -RESERVED- ALIGN 168 (A8) LENGTH SLXDSNEL LENGTH OF ONE DATASET ENTRY. CAP INFORMATION ELEMENT THIS ELEMENT SUPPLIES INFORMATION ABOUT A SINGLE LIBRARY CAP DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLXSCAP 0 (0) CHARACTER 4 SLXCID SECTION IDENTIFIER. 4 (4) HEXSTRING 1 SLXCACS ACS ADDRESS. 5 (5) HEXSTRING 1 SLXCLSM LSM ADDRESS. 6 (6) HEXSTRING 1 SLXCCAP CAP NUMBER. 7 (7) HEXSTRING 1 -RESERVED- RESERVED. 8 (8) AREA 2 SLXCSTAT CAP STATUS. 8 (8) BITSTRING 1 SLXCSTB1 CAP STATUS. 1... .... X'80' SLXCSTCA CAP IS ACTIVE. .1.. .... X'40' SLXCSTNR CAP NEEDS RECOVERY. ..1. .... X'20' SLXCSTAM CAP IS IN AUTOMATIC MODE. ...1 .... X'10' SLXCSTCL CAP IS LINKED. .... 1... X'08' SLXCSTCO CAP IS ONLINE. 9 (9) BITSTRING 1 SLXCSTB2 CAP MODE. 1... .... X'80' SLXCSTIE CAP IS ENTERING. .1.. .... X'40' SLXCSTID CAP IS DRAINING. ..1. .... X'20' SLXCSTIJ CAP IS EJECTING. ...1 .... X'10' SLXCSTIC CAP IS CLEANING. .... 1... X'08' SLXCSTII CAP IS IDLE . 10 (A) BITSTRING 1 SLXTYPE TYPE OF CAP. 1... .... X'80' SLXCTPC PRIORITY CAP .... ...1 X'01' SLXCTCIM CIMARRON .... ..1. X'02' SLXCTCLP CLIPPER. .... ..11 X'03' SLXCTTWS STANDARD CLIPPER .... .1.. X'04' SLXCTTWO OPTIONAL CLIPPER .... .1.1 X'05' SLXCTTIM (9740/TimberWolf) 12 (C) SIGNED-HWORD 2 SLXCCELL CELLS IN CAP. 14 (E) HEXSTRING 1 SLXCNROW ROWS. 15 (F) HEXSTRING 1 SLXCNCOL COLUMNS. 16 (10) HEXSTRING 1 SLXCCMAG MAGAZINES. 17 (11) HEXSTRING 1 SLXCCMGC CELLS IN MAGAZINE. DEC HEX TYPE LENGTH LABEL DESCRIPTION 18 (12) CHARACTER 8 SLXCJOB JOBNAME OF OWNER. 26 (1A) HEXSTRING 6 -RESERVED- ALIGN TO DOUBLE WORD 32 (20) CONST SLXSCAPL LENGTH OF A CAP ELEMENT. VOLUME INFORMATION ELEMENT THIS ELEMENT SUPPLIES INFORMATION ABOUT A SINGLE VOLUME AND IS REPEATED FOR EACH VOLUME ASSOCIATED WITH A REQUEST. THIS ELEMENT MAY APPEAR IN REPLIES TO THE FOLLOWING REQUESTS: QDRLIST - RETURN DRIVE INFORMATION, ORDERED BY PREFERENCE QVOLUME - RETURN VOLUME INFORMATION SELSCR - SELECT A SCRATCH VOLUME EJECT - EJECT VOLUMES DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLXSVOL VOLUME INFORMATION ELEMENT. 0 (0) CHARACTER 3 SLXVID ELEMENT IDENTIFIER. 3 (3) BITSTRING 1 SLXVSTA VOLUME STATUS: 1... .... X'80' SLXVILB VOLUME IS IN LIBRARY . .1.. .... X'40' SLXVOHST VOLUME IS IN USE BY ANOTHER HOST . ..1. .... X'20' SLXVSCR VOLUME IS CONSIDERED SCRATCH . ...1 .... X'10' SLXVMAL VOLUME IS IN MANUAL-MODE LSM. .... 1... X'08' SLXVDSC VOLUME IS IN DISCONNECTED ACS. .... .1.. X'04' SLXVMNT VOLUME IS MOUNTED ON A DRIVE. .... ..1. X'02' SLXVERR VOLUME IS ’ERRANT' (I.E., ITS LOCATION WITHIN THE LIBRARY IS UNCERTAIN). .... ...1 X'01' SLXVTV VOLUME IS A VTCS VIRTUAL VOLUME 4 (4) CHARACTER 6 SLXVSER VOLUME SERIAL. 10 (A) A-ADDR 1 SLXVLC VOLUME LOCATION CODE: 0 (0) CONST SLXVUNK LOCATION DATA UNAVAILABLE (SLXVLOC IS 0). 1 (1) CONST SLXVCEL LOCATION DATA DESCRIBES A CELL. 2 (02) CONST SLXVDRV LOCATION DATA DESCRIBES A DRIVE. 11 (B) AREA 5 SLXVLOC VOLUME LOCATION DATA: 11 (B) A-ADDR 1 SLXVACS ACS ID. 12 (C) A-ADDR 1 SLXVLSM LSM ID. 13 (D) A-ADDR 3 SLXVPNL CELL'S PANEL ID, ROW ID, COLUMN ID. 13 (D) A-ADDR 2 SLXVDRIV DRIVE ADDRESS (0CUU). 15 (F) BITSTRING 1 SLXVSTA2 MORE VOLUME STATUS: EQU X'E0' RESERVED. ...1 .... X'10' SLXVMLMU VOLUME MEDIA TYPE CAME FROM LMU. EQU X'08' RESERVED. .... .1.. X'04' SLXVMUNR VOLUME MEDIA TYPE UNREADABLE. .... ..1. X'02' SLXVMVLA VOLUME MEDIA TYPE CAME FROM VOLATTR. .... ...1 X'01' SLXVMDFL VOLUME MEDIA TYPE DEFAULT ASSIGNED. 16 (10) AREA 8 SLXVTSSN VTSS NAME 16 (10) SIGNED-FWORD 4 SLXVDATI HI-WORD OF TOD AT INSERTION. 20 (14) SIGNED-FWORD 4 SLXVDATL HI-WORD OF TOD LAST SELECTION. 24 (18) SIGNED-FWORD 4 SLXVSCNT SELECTION COUNT. 28 (1C) SIGNED-FWORD 4 SLXVDATD HI-WORD OF TOD LAST MOUNT. 32 (20) CHARACTER 8 SLXVMED TYPE OF MEDIA. DEC HEX TYPE LENGTH LABEL DESCRIPTION 40 (28) CONST SLXSVOLN LENGTH OF A VOLUME ELEMENT. 40 (28) CONST SLXSVOLL LENGTH OF A VOLUME ELEMENT. DRIVE INFORMATION ELEMENT THIS ELEMENT SUPPLIES INFORMATION ABOUT A SINGLE LIBRARY TAPE DRIVE AND IS REPEATED FOR EACH DRIVE ASSOCIATED WITH A REQUEST. THIS ELEMENT MAY APPEAR IN REPLIES TO THE FOLLOWING REQUESTS: QDRIVES - RETURN DRIVE AND LSM INFORMATION QDRLIST - RETURN DRIVE INFORMATION, ORDEREDBY PREFERENCE DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLXSDRV DRIVE INFORMATION ELEMENT. 0 (0) CHARACTER 3 SLXDID ELEMENT IDENTIFIER 3 (3) BITSTRING 1 SLXDSTA LIBRARY STATUS: ...1 .... X'10' SLXDMANU LSM IS IN MANUAL MODE. .... 1... X'08' SLXDDISC ACS IS DISCONNECTED. 4 (4) A-ADDR 1 SLXQDEAC ACS ID. 5 (5) A-ADDR 1 SLXQDELS LSM ID. 6 (6) A-ADDR 2 SLXQDECU DRIVE ADDRESS (0CUU). 8 (8) CHARACTER 8 SLXQDRT RECORDING TECHNIQUE OF DRIVE 16 (10) CONST SLXSDRVL LENGTH OF A DRIVE ELEMENT. LSM INFORMATION ELEMENT THIS ELEMENT SUPPLIES INFORMATION ABOUT A SINGLE LSM (LIBRARY STORAGE MODULE) AND IS REPEATED FOR EACH LSM ASSOCIATED WITH A REQUEST. THIS ELEMENT MAY APPEAR IN REPLIES TO THE FOLLOWING REQUESTS: QDRIVES - RETURN DRIVE AND LSM INFORMATION QSCRATCH - RETURN LSM INFORMATION, ORDERED BY PREFERENCE DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLXSLSM LSM INFORMATION ELEMENT 0 (0) CHARACTER 3 SLXMID ELEMENT IDENTIFIER. 3 (3) BITSTRING 1 SLXMSTAT LIBRARY STATUS: ...1 .... X'10' SLXMANUL LSM IS IN MANUAL MODE .... 1... X'08' SLXMDISC ACS IS DISCONNECTED. 4 (4) A-ADDR 1 SLXMACS ACS ID. 5 (5) A-ADDR 1 SLXMLSM LSM ID. 6 (6) SIGNED-FWORD 1 SLXMADJN NUMBER OF ADJACENT LSMS. 7 (7) A-ADDR 1 SLXMADJ(4) LIST OF LSM IDS OF ADJACENT LSMS (ONLY THE FIRST N IDS ARE VALID, WHERE N IS THE VALUE IN SLXMADJN). 11 (B) HEXSTRING 1 -RESERVED- RESERVED. 12 (C) SIGNED-FWORD 4 SLXMNSCR NUMBER OF SCRATCH VOLUMES IN THIS LSM. 16 (10) SIGNED-FWORD 4 SLXMTCEL TOTAL CELLS IN LSM. 20 (14) SIGNED-FWORD 4 SLXMFCEL FREE CELLS IN LSM. 24 (18) CONST SLXSLSML LENGTH OF AN LSM ELEMENT. MESSAGE TEXT ELEMENTTHIS ELEMENT SUPPLIES THE COMPLETE TEXT OF THE MESSAGE WHOSE BINARY MESSAGE ID NUMBER IS REPORTED IN HEADER FIELD SLXSRC. THIS ELEMENT MAY APPEAR IN REPLIES TO THE FOLLOWING REQUESTS:DISMOUNT - DISMOUNT A VOLUMEMOUNT - MOUNT A VOLUMEMOVE - MOVE A VOLUMEEJECT - EJECT VOLUMES DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE SLXSMSG MESSAGE TEXT ELEMENT. 0 (0) CHARACTER 3 SLXGID ELEMENT IDENTIFIER. 3 (3) CHARACTER 125 SLXGTEXT TEXT OF THE MESSAGE WHOSE NUMBER IS IN FIELD SLXSRC OF THE REPLY HEADER. 0 (0) STRUCTURE SLXSMSG 128 (80) CONST SLXSMSGL LENGTH OF A MESSAGE ELEMENT.
The following table provides a cross-reference for the SLX macro:
Table 9-2 SLX Macro Cross-Reference
Name | Len | Offset Value |
---|---|---|
|
000001 |
04 |
|
000001 |
06 |
|
000002 |
0C |
|
000001 |
10 |
|
000001 |
11 |
|
000004 |
00 |
|
000008 |
12 |
|
000001 |
05 |
|
000001 |
03 |
|
000001 |
0F |
|
000001 |
0E |
|
000004 |
0C |
|
NA |
20 |
|
000002 |
08 |
|
000001 |
08 |
|
000001 |
09 |
|
NA |
80 |
|
NA |
10 |
|
NA |
08 |
|
NA |
10 |
|
NA |
40 |
|
NA |
80 |
|
NA |
08 |
|
NA |
20 |
|
NA |
40 |
|
NA |
01 |
|
NA |
02 |
|
NA |
80 |
|
NA |
05 |
|
NA |
04 |
|
NA |
03 |
|
000001 |
0A |
|
NA |
08 |
|
000003 |
00 |
|
NA |
10 |
|
000001 |
03 |
|
NA |
09 |
|
NA |
08 |
|
NA |
09 |
|
000008 |
30 |
|
000044 |
04 |
|
NA |
A8 |
|
NA |
07 |
|
NA |
01 |
|
NA |
03 |
|
NA |
02 |
|
000001 |
03 |
|
NA |
06 |
|
NA |
05 |
|
000008 |
3E |
|
NA |
04 |
|
000006 |
38 |
|
NA |
8051 |
|
000008 |
B0 |
|
000004 |
80 |
|
000004 |
84 |
|
000004 |
88 |
|
000003 |
00 |
|
000125 |
03 |
|
000003 |
00 |
|
NA |
14 |
|
000002 |
A0 |
|
NA |
B0 |
|
000001 |
24 |
|
000008 |
1C |
|
000004 |
0C |
|
000008 |
04 |
|
000003 |
00 |
|
NA |
02 |
|
NA |
03 |
|
NA |
04 |
|
NA |
01 |
|
NA |
20 |
|
000008 |
14 |
|
000004 |
10 |
|
000001 |
25 |
|
000001 |
26 |
|
000001 |
04 |
|
000001 |
07 |
|
000001 |
06 |
|
NA |
10 |
|
NA |
08 |
|
000004 |
14 |
|
000003 |
00 |
|
000001 |
05 |
|
000004 |
0C |
|
000001 |
03 |
|
NA |
803A |
|
000004 |
10 |
|
NA |
28 |
|
NA |
1C |
|
000004 |
10 |
|
000004 |
30 |
|
000001 |
04 |
|
000002 |
06 |
|
000001 |
05 |
|
000003 |
00 |
|
000004 |
2C |
|
000008 |
08 |
|
000004 |
00 |
|
000004 |
08 |
|
NA |
00 |
|
NA |
18 |
|
NA |
FFFF |
|
000002 |
0C |
|
000004 |
04 |
|
000006 |
0E |
|
000004 |
7C |
|
000004 |
34 |
|
000004 |
28 |
|
000004 |
74 |
|
NA |
2C |
|
NA |
08 |
|
NA |
3C |
|
NA |
34 |
|
NA |
10 |
|
NA |
0C |
|
NA |
18 |
|
NA |
14 |
|
NA |
30 |
|
NA |
00 |
|
000001 |
00 |
|
NA |
38 |
|
NA |
04 |
|
NA |
8036 |
|
NA |
20 |
|
NA |
A8 |
|
NA |
10 |
|
NA |
8050 |
|
000004 |
00 |
|
NA |
18 |
|
NA |
80 |
|
000004 |
08 |
|
NA |
EE |
|
NA |
00 |
|
NA |
10 |
|
NA |
FF |
|
000001 |
09 |
|
000004 |
04 |
|
000001 |
08 |
|
NA |
28 |
|
NA |
28 |
|
NA |
8032 |
|
NA |
24 |
|
NA |
8040 |
|
000001 |
0B |
|
NA |
01 |
|
NA |
07 |
|
000004 |
1C |
|
000004 |
10 |
|
000004 |
14 |
|
000002 |
0D |
|
NA |
02 |
|
NA |
08 |
|
NA |
02 |
|
000001 |
04 |
|
000003 |
00 |
|
NA |
80 |
|
000001 |
0A |
|
000005 |
0B |
|
000001 |
0C |
|
NA |
10 |
|
NA |
01 |
|
000008 |
20 |
|
NA |
10 |
|
NA |
04 |
|
NA |
04 |
|
NA |
02 |
|
NA |
40 |
|
000003 |
0D |
|
000004 |
18 |
|
NA |
20 |
|
000006 |
04 |
|
000001 |
03 |
|
000001 |
0F |
|
000008 |
10 |
|
NA |
01 |
|
NA |
00 |
|
000004 |
58 |
|
000004 |
50 |
|
000004 |
54 |
|
000004 |
1C |
|
000004 |
14 |
|
000004 |
18 |
|
000004 |
34 |
|
000004 |
2C |
|
000004 |
30 |
|
000004 |
40 |
|
000004 |
38 |
|
000004 |
3C |
|
000004 |
4C |
|
000004 |
44 |
|
000004 |
48 |
|
000004 |
7C |
|
000004 |
74 |
|
000004 |
78 |
|
000004 |
64 |
|
000004 |
5C |
|
000004 |
60 |
|
NA |
B0 |
|
000004 |
70 |
|
000004 |
68 |
|
000004 |
6C |
|
000004 |
88 |
|
000004 |
80 |
|
000004 |
84 |
|
000004 |
28 |
|
000004 |
20 |
|
000004 |
24 |
|
000004 |
60 |
|
000004 |
64 |
|
000004 |
54 |
|
000004 |
58 |
|
000004 |
70 |
|
000004 |
48 |
|
000004 |
4C |
|
000004 |
6C |
|
000004 |
8C |
|
000004 |
40 |
|
000004 |
3C |
|
000004 |
98 |
|
000004 |
90 |
|
000004 |
50 |
|
000004 |
44 |
|
000004 |
5C |
|
000004 |
68 |
|
000004 |
94 |
|
000004 |
38 |
The ACSINT enables information to be passed between the TMS and the ACS service machine. It is built by the ACSRQ macro when DSECT=YES
is specified and is sent using IUCV.
Note:
The following DSECT includes some parameters that are not supported by the VM Client. They are included for completeness and compatibility only.The following example shows output for the ACSINT record format:
Example 9-5 ACSINT Record Format
ACSINT - TMS INTERFACE REQUEST PARAMETER LIST FUNCTION: THIS DEFINES THE DATA PASSED TO THE TMS VIA IUCV IT DEFINES THE VARIOUS FUNCTIONS THAT CAN BE REQUESTED AND THE STRUCTURE PASSED. DEC HEX TYPE LENGTH LABEL DESCRIPTION 0 (0) STRUCTURE ACSINT TMS INTERFACE PARAMETER LIST: 0 (0) CHARACTER 4 ACSIHDR PARAMETER LIST IDENTIFIER. ’ACSI'(C1C3E2C9)CHAR CONST ACSIID 4 (4) SIGNED-FWORD 4 ACSILEN PARAMETER LIST LENGTH. 8 (8) A-ADDR 1 ACSIVER PARAMETER LIST VERSION NUMBER. 7 (07) CONST ACSIVN CURRENT VERSION. 9 (9) A-ADDR 1 ACSIRT FUNCTION CODE: 0 (00) CONST ACSINOOP NOOP - NO OPERATION. 1 (01) CONST ASCIRS01 RESERVED - MVS ONLY. 2 (02) CONST ASCIRS02 RESERVED - MVS ONLY. 3 (03) CONST ASCIRS03 RESERVED - MVS ONLY. 4 (04) CONST ASCISTOP STOP - STOP AN INTERRUPTABLE PGMI TASK. 5 (05) CONST ACSISOPR SETOPER - SET OPERATOR INTERACTION MODE. 20 (14) CONST ACSIQCNF QCONFIG - RETURN CONFIGURATION SUMMARY. 21 (15) CONST ACSIQDRV QDRIVES - RETURN DRIVE AND LSM INFO. 22 (16) CONST ACSIQDRL QDRLIST - RETURN DRIVE INFORMATION, X . 23 (17) CONST ACSIQSCR QSCRATCH - RETURN SCRATCH COUNT INFO. 24 (18) CONST ACSIQVOL QVOLUME - RETURN VOLUME INFORMATION. 25 (19) CONST ACSIQEJT QEJECT - RETURN EJECT STATUS. 26 (1A) CONST ACSIQCAP QCAP - QUERY CAP STATUS. 27 (1B) CONST ACSIQVLU QVOLUSE - RETURN MOUNTED VOLUMES. 28 (1C) CONST ACSIQRQS QREQUEST - RETURN PENDING REQUESTS. 29 (1D) CONST ACSIQDSN QDSN - QUERY DATASET. 40 (29) CONST ACSIMNT MOUNT - MOUNT VOLUME. 41 (29) CONST ACSIMOVE MOVE - MOVE A CARTRIDGE TO AN LSMID X. 42 (2A) CONST ACSIDSM DISMOUNT - DISMOUNT VOLUME. 43 (2B) CONST ACSIEJCT EJECT - EJECT A VOL FROM THE LIBRARY. 60 (3C) CONST ACSISSCR SELSCR - SELECT A SCRATCH VOLUME. 61 (3D) CONST ACSISCRA SCRATCH - CHANGE VOL STATUS TO ’SCRATCH'. 62 (3E) CONST ACSIUNSC UNSCRATCH- CHANGE VOLUME STATUS TO NOT X. 63 (3F) CONST ACSIDSCR DEFSCR - SPECIFY NO. OF SCRATCH POOLS. 64 (40) CONST ACSIDPOL DEFPOOL - SPECIFY A SCRATCH POOL'S VOLSER RANGE. 10 (A) BITSTRING 1 ACSIFLG1 FLAG BYTE 1: (PGMI CONTROL 1) 1 1... .... X'80' ACSIF180 RESERVED MVS OPTION=SYNC .1.. .... X'40' ACSIVUSR USER= SPECIFIED; ACSIUSER CONTAINS NAME ..1. .... X'20' ACSIMANO DIALOG=OFF SPECIFIED. ...1 .... X'10' ACSIWTOR DIALOG=ON SPECIFIED. .... 1... X'08' ACSINDEL NOTIFY=INSDEL SPECIFIED. .... .1.. X'04' ACSINNDL NOTIFY=NOINSDEL SPECIFIED. .... ..1. X'02' ACSIACC1 ACCT1= SPECIFIED ACCOUNTING TOKEN. .... ...1 X'01' ACSIACC2 ACCT2= SPECIFIED ACCOUNTING TOKEN. 11 (B) HEXSTRING 1 ACSIFLG2 FLAG BYTE 2: (PGMI CONTROL 2). 12 (C) BITSTRING 1 ACSIFLG3 FLAG BYTE 3: (MOVEMENT CONTROL 1). 1... .... X'80' ACSIVHST ACSIHOST CONTAINS HOST_ID. .1.. .... X'40' ACSIVACS ACSIACS CONTAINS AN ACSID. ..1. .... X'20' ACSIVLSM ACSILSMI CONTAINS LSMID. ...1 .... X'10' ACSIVCAP ACSICAP CONTAINS CAP_ID. .... 1... X'08' ACSIF308 RESERVED FUTURE USE. .... .1.. X'04' ACSIVVOL ACSIVOLS CONTAINS A VOLSER. .... ..1. X'02' ACSIVLST ACSILOFF CONTAINS LIST OFFSET. .... ...1 X'01' ACSIVCNT ACSICNT CONTAINS LIST COUNT. 13 (D) BITSTRING 1 ACSIFLG4 FLAG BYTE 4: (MOVEMENT CONTROL 2). 1... .... X'80' ACSIVTLM ACSITLSM CONTAINS TO LSM_ID. .1.. .... X'40' ACSIVTPN ACSITPAN CONTAINS TO PANEL. ..1. .... X'20' ACSIF420 RESERVED FUTURE USE. ...1 .... X'10' ACSIF410 RESERVED FUTURE USE. .... 1... X'08' ACSIVPAN ACSIPAN CONTAINS PANEL NUMBER .... .1.. X'04' ACSIVROW ACSIROW CONTAINS ROW NUMBER. .... ..1. X'02' ACSIVCOL ACSICOL CONTAINS COLUMN NUMBER. .... ...1 X'01' ACSIVDRV ACSIDRIV CONTAINS DRIVE DEVICE NUMBER. 14 (E) HEXSTRING 1 ACSIFLG5 FLAG BYTE 5: (MOVEMENT CONTROL 3). 15 (F) BITSTRING 1 ACSIFLG6 FLAG BYTE 6: (MISCELLANOUS CONTROL 1). 1... .... X'80' ACSIPROT PROTECT=YES SPECIFIED. .1.. .... X'40' ACSISCR SCRATCH=YES SPECIFIED. ..1. .... X'20' ACSIVSCP ACSIPOOL CONTAINS SCRATCH POOL NUMBER. ...1 .... X'10' ACSISUBN ACSISUBP CONTAINS SUBPOOL NAME. .... 1... X'08' ACSIVTKN ACSITKNO CONTAINS TOKEN NUMBER. .... .1.. X'04' ACSIVTXT ACSITEXT CONTAINS TEXT STRING. .... ..1. X'02' ACSIF602 RESERVED FUTURE USE. .... ...1 X'01' ACSIF601 RESERVED FUTURE USE. 16 (10) HEXSTRING 1 ACSIFLG7 FLAG BYTE 7: (MISCELLANOUS CONTROL 2). 17 (11) A-ADDR 1 ACSILABT SCRATCH LABEL TYPE LTYPE= PARAMETER. .... .... X'00' ACSILLDT LDT (LIBRARY DEFAULT TYPE). .... ...1 X'01' ACSILSL SL (STANDARD LABEL). .... ..1. X'02' ACSILAL AL (ANSI LABEL). .... ..11 X'03' ACSILNL NL (NON-LABELED). .... .1.. X'04' ACSILNS NSL (NON-STANDARD LABEL). 18 (12) CHARACTER 8 ACSIUSER USER NAME USED TO ASSOCIATE CONSOLE ID. 26 (1A) CHARACTER 8 ACSIACT1 ACCOUNTING TOKEN 1. 34 (22) CHARACTER 8 ACSIACT2 ACCOUNTING TOKEN 2. 42 (2A) HEXSTRING 2 -RESERVED- RESERVE SLACK BYTES. 44 (2C) SIGNED-FWORD 4 -RESERVED- RESERVED MVS. 48 (30) HEXSTRING 4 ACSITKNO PASS THROUGH TOKEN NUMBER. 52 (34) A-ADDR 4 -RESERVED- RESERVED MVS. 56 (38) SIGNED-HWORD 2 ACSICNT COUNT FROM COUNT= PARAMETER. 58 (3A) SIGNED-HWORD 2 ACSILOFF OFFSET, FROM START OF PARAMETER LIST, TO START OF THE ELEMENT LIST AREA. 60 (3C) CHARACTER CHARACTER 6 ACSIVOLS VOLSER FROM VOLSER= PARAMETER. 66 (42) CHARACTER 8 ACSIHOST ASSOCIATED HOST FROM HOSTID= PARAMETER. 74 (4A) AREA 4 ACSIALC ACS / LSM / CAP IDENTIFICATION. 74 (4A) HEXSTRING 1 ACSIACS ACS ID NUMBER (AA). 74 (4A) HEXSTRING 2 ACSILSMI LSM ID NUMBER (AA0L). 74 (4A) HEXSTRING 4 ACSICAP CAP ID NUMBER (AA0LCC00). 74 (4A) HEXSTRING 3 -RESERVED- 77 (4D) HEXSTRING 1 -RESERVED- NOT IMPLEMENTED (ALWAYS X'00') . 78 (4E) HEXSTRING 1 ACSIPAN PANEL FROM PAN= PARAMETER. 79 (4F) HEXSTRING 1 ACSIROW ROW FROM ROW= PARAMETER. 80 (50) HEXSTRING 1 ACSICOL COLUMN FROM COL= PARAMETER. 81 (51) HEXSTRING 1 ACSITPAN TO PANEL FROM TOPAN= PARAMETER. 82 (52) HEXSTRING 2 ACSITLSM TO LSM FROM TOLSM= PARAMETER. 84 (54) A-ADDR 2 ACSIDRIV DRIVE DEVICE NUMBER FROM DRIVE= PARAMETER. 86 (56) A-ADDR 1 ACSIPOOL SCRATCH POOL NUMBER, SCRPOOL= PARAMETER. 87 (57) CHARACTER 32 ACSITEXT TEXT ASSOCIATED WITH REQUEST. 119 (77) CHARACTER 13 ACSISUBP NAME FROM SUBPOOL= KEYWORD. TAPEREQ INPUT KEY VALUES.THE FOLLOWING VALUES ARE USED AS THE KEY IN SEARCHING THE CURRENT TAPEREQ PARAMETER FILE. DEC HEX TYPE LENGTH LABEL DESCRIPTION 132 (84) BITSTRING 1 ACSIFLG8 FLAG BYTE 8: (TAPEREQ CONTROL 1). 1... .... X'80' ACSIFJOB ACSIJOBN PRESENT. .1.. .... X'40' ACSIFSTP ACSISTEP PRESENT. ..1. .... X'20' ACSIFPGM ACSIPGMN PRESENT. ...1 .... X'10' ACSIFDSN ACSIDSN PRESENT. .... 1... X'08' ACSIFEXP ACSIEXPD PRESENT. .... .1.. X'04' ACSIFRET ACSIRETP PRESENT. .... ..1. X'02' ACSIFVOL ACSIVOLT PRESENT. 133 (85) OFFSET ACSITRI TAPEREQ INPUT VALUES. 133 (85) CHARACTER 8 ACSIJOBN STRING TO MATCH TAPEREQ JOBNAME VALUE. 141 (8D) CHARACTER 8 ACSISTEP STRING TO MATCH TAPEREQ STEPNAME VALUE. 149 (95) CHARACTER 8 ACSIPGMN STRING TO MATCH TAPEREQ PROGNAME VALUE. 157 (9D) CHARACTER 44 ACSIDSN STRING TO MATCH TAPEREQ DSN VALUE. 201 (C0) HEXSTRING 3 ACSIEXPD VALUE TO MATCH TAPEREQ EXPDT VALUE 204 (CC) HEXSTRING 2 ACSIRETP VALUE TO MATCH TAPEREQ RETPD VALUE. 206 (CE) CHARACTER 1 ACSIVOLT STRING TO MATCH TAPEREQ VOLTYPE VALUE. 74 (4A) LENGTH ACSITRIL TAPEREQ OUTPUT VALUES. THE FOLLOWING VALUES ARE USED AS OVERRIDE (OR SPECIFIC) VALUES TO THE VALUES FOUND IN THE CURRENT TAPEREQ PARAMETER FILE. 207 (CF) BITSTRING 1 ACSIFLG9 FLAG BYTE 9: (TAPEREQ CONTROL 2). 1... .... X'80' ACSIFREC ACSIRECT PRESENT. .1.. .... X'40' ACSIFMED ACSIMED PRESENT. 208 (D0) CHARACTER 8 ACSIRECT RECORDING TECHNIQUE. 216 (D8) CHARACTER 8 ACSIMED MEDIA. 224 (E0) HEXSTRING 256 -RESERVED- RESERVED FOR FUTURE PARM EXPANSION. 480 (1E0) AREA 8 -RESERVED- ALIGNMENT. 480 (1E0) LENGTH ACSIHLN LENGTH OF FIXED AREA. 480 (1E0) AREA 1 ACSILIST ELEMENT LIST DESIGNATED BY LIST= PARAMETER BEGINS HERE (FIELD ACSICNT CONTAINS THE NUMBER OF ELEMENTS IN THIS LIST). 2 (02) CONST ACSILDRL LENGTH OF EACH ELEMENT (DRIVE DEVICE NUMBER) IN THE LIST USED BY THE QDRLIST FUNCTION. 1500 (5DC) CONST ACSIMDRL MAXIMUM NUMBER OF ELEMENTS ALLOWED IN THE LIST USED BY THE QDRLIST FUNCTION. 6 (06) CONST ACSILVSL LENGTH OF EACH ELEMENT (VOLSER) IN THE LIST USED BY THE QVOLUME FUNCTION. 500 (1F4) CONST ACSIMVSL MAXIMUM NUMBER OF ELEMENTS ALLOWED IN THE LIST USED BY THE QVOLUME AND EJECT. 12 (0C) CONST ACSILPOL LENGTH OF EACH ELEMENT (VOLSER RANGE PAIR) IN THE LIST USED BY THE DEFPOOL FUNCTION. 250 (FA) CONST ACSIMPOL MAXIMUM NUMBER OF ELEMENTS ALLOWED IN THE LIST USED BY THE DEFPOOL FUNCTION. 4 (04) CONST ACSILCAP LENGTH OF EACH ELEMENT (CAP IDENTIFIER) IN THE LIST USED BY THE QCAP FUNCTION. 500 (1F4) CONST ACSIMCAP MAXIMUM NUMBER OF ELEMENTSALLOWED IN THE LIST USED BY THE QCAP FUNCTION. 4 (04) CONST ACSILTOK LENGTH OF EACH ELEMENT (UNIQUE TOKEN) IN THE LIST USED BY THE QCAP FUNCTION. 500 (1F4) CONST ACSIMTOK MAXIMUM NUMBER OF ELEMENTS ALLOWED IN THE LIST USED BY THE QEJECT/STOP FUNCTIONS.
The following table provides a cross-reference for the ACSINT macro:
Table 9-3 ACSINT Macro Cross-Reference
Name | Len | Offset Value |
---|---|---|
|
NA |
02 |
|
NA |
01 |
|
000001 |
4A |
|
000008 |
1A |
|
000008 |
22 |
|
000004 |
4A |
|
000004 |
4A |
|
000002 |
38 |
|
000001 |
50 |
|
NA |
40 |
|
000002 |
54 |
|
NA |
3F |
|
NA |
2A |
|
000044 |
9D |
|
NA |
2B |
|
000003 |
C9 |
|
NA |
10 |
|
NA |
08 |
|
NA |
80 |
|
000001 |
0A |
|
000001 |
0B |
|
000001 |
0C |
|
000001 |
0D |
|
000001 |
0E |
|
000001 |
0F |
|
000001 |
10 |
|
000001 |
84 |
|
000001 |
CF |
|
NA |
40 |
|
NA |
40 |
|
NA |
80 |
|
000008 |
D8 |
|
NA |
28 |
|
NA |
29 |
|
NA |
FA |
|
NA |
1F4 |
|
NA |
04 |
|
NA |
40 |
|
NA |
02 |
|
NA |
80 |
|
NA |
08 |
|
NA |
10 |
|
NA |
20 |
|
NA |
01 |
|
NA |
02 |
|
000004 |
00 |
|
NA |
1E0 |
|
000008 |
42 |
|
NA |
'CVAL' |
|
000008 |
85 |
|
000001 |
11 |
|
NA |
02 |
|
NA |
04 |
|
NA |
02 |
|
000001 |
1E0 |
|
NA |
00 |
|
NA |
03 |
|
NA |
04 |
|
000002 |
3A |
|
NA |
0C |
|
NA |
01 |
|
000002 |
4A |
|
NA |
04 |
|
NA |
06 |
|
NA |
20 |
|
NA |
1F4 |
|
NA |
5DC |
|
NA |
40 |
|
NA |
04 |
|
NA |
40 |
|
NA |
04 |
|
NA |
10 |
|
NA |
1F4 |
|
NA |
08 |
|
NA |
04 |
|
NA |
00 |
|
000001 |
4E |
|
000008 |
95 |
|
000001 |
56 |
|
NA |
80 |
|
NA |
1A |
|
NA |
14 |
|
NA |
16 |
|
NA |
15 |
|
NA |
1D |
|
NA |
19 |
|
NA |
1C |
|
NA |
01 |
|
000001 |
08 |
|
NA |
80 |
|
NA |
20 |
|
NA |
02 |
|
NA |
07 |
|
000006 |
3C |
|
000001 |
CE |
|
NA |
08 |
|
NA |
04 |
|
NA |
20 |
|
NA |
08 |
|
NA |
80 |
|
000001 |
4F |
|
NA |
01 |
|
NA |
02 |
|
NA |
03 |
|
000001 |
09 |
|
NA |
40 |
|
NA |
3D |
|
NA |
05 |
|
NA |
3C |
|
000008 |
8D |
|
NA |
04 |
|
NA |
10 |
|
000013 |
77 |
|
000032 |
57 |
|
000004 |
30 |
|
000002 |
52 |
|
000001 |
51 |
|
NA |
85 |
|
NA |
4A |
|
NA |
3E |
|
000008 |
12 |
|
NA |
40 |
|
NA |
10 |
|
NA |
01 |
|
NA |
02 |
The IUB describes an outstanding IUCV request resulting from an IUCV operation. Both the request and the final status are contained in the IUB data structure. The IUB is an IUCV counterpart to the ’IOBLOK' structure used by device management.
The following table provides a cross-reference for the IUB IUCV request block:
Table 9-4 IUB Request Block Reference
Name | Len | Offset Value |
---|---|---|
|
NA |
02 |
|
NA |
01 |
|
000001 |
4A |
|
000008 |
1A |
|
000008 |
22 |
|
000004 |
4A |
|
000004 |
4A |
|
000002 |
38 |
|
000001 |
50 |
|
NA |
40 |
|
000002 |
54 |
|
NA |
3F |
|
NA |
2A |
|
000044 |
9D |
|
NA |
2B |
|
000003 |
C9 |
|
NA |
10 |
|
NA |
08 |
|
NA |
80 |
|
000001 |
0A |
|
000001 |
0B |
|
000001 |
0C |
|
000001 |
0D |
|
000001 |
0E |
|
000001 |
0F |
|
000001 |
10 |
|
000001 |
84 |
|
000001 |
CF |
|
NA |
40 |
|
NA |
20 |
|
NA |
04 |
|
NA |
40 |
|
NA |
02 |
|
NA |
80 |
|
NA |
08 |
|
NA |
10 |
|
NA |
20 |
|
NA |
01 |
|
NA |
02 |
|
000004 |
00 |
|
NA |
1E0 |
|
000008 |
42 |
|
NA |
'CVAL' |
|
000008 |
85 |
|
000001 |
11 |
|
NA |
02 |
|
NA |
04 |
|
NA |
02 |
|
000001 |
1E0 |
|
NA |
00 |
|
NA |
03 |
|
NA |
04 |
|
000002 |
3A |
|
NA |
0C |
|
NA |
01 |
|
000002 |
4A |
|
NA |
04 |
|
NA |
06 |
|
NA |
20 |
|
NA |
1F4 |
|
NA |
80 |
|
000008 |
D8 |
|
NA |
28 |
|
NA |
29 |
|
NA |
FA |
|
NA |
1F4 |
|
NA |
1F4 |
|
NA |
08 |
|
NA |
04 |
|
NA |
00 |
|
000001 |
4E |
|
000008 |
95 |
|
000001 |
56 |
|
NA |
80 |
|
NA |
1A |
|
NA |
14 |
|
NA |
16 |
|
NA |
15 |
|
NA |
1D |
|
NA |
19 |
|
NA |
1C |
|
NA |
01 |
|
000001 |
08 |
|
NA |
80 |
|
NA |
20 |
|
NA |
02 |
|
NA |
07 |
|
000006 |
3C |
|
000001 |
CE |
|
NA |
08 |
|
NA |
04 |
|
NA |
20 |
|
NA |
08 |
|
NA |
80 |
|
NA |
5DC |
|
NA |
40 |
|
NA |
04 |
|
NA |
40 |
|
NA |
04 |
|
NA |
10 |
|
000001 |
4F |
|
NA |
01 |
|
NA |
02 |
|
NA |
03 |
|
000001 |
09 |
|
NA |
40 |
|
NA |
3D |
|
NA |
05 |
|
NA |
3C |
|
000008 |
8D |
|
NA |
04 |
|
NA |
10 |
|
000013 |
77 |
|
000032 |
57 |
|
000004 |
30 |
|
000002 |
52 |
|
000001 |
51 |
|
NA |
85 |
|
NA |
4A |
|
NA |
3E |
|
000008 |
12 |
|
NA |
40 |
|
NA |
10 |
|
NA |
01 |
|
NA |
02 |
The following table provides a cross-reference for the IUB:
Name | Len | Offset Value |
---|---|---|
|
000001 |
31 |
|
NA |
10 |
|
000016 |
10 |
|
000001 |
20 |
|
000004 |
44 |
|
000001 |
21 |
|
000004 |
34 |
|
000040 |
78 |
|
000008 |
78 |
|
000008 |
80 |
|
000008 |
88 |
|
000008 |
90 |
|
000008 |
98 |
|
000004 |
0C |
|
000001 |
30 |
|
000001 |
32 |
|
NA |
20 |
|
000004 |
2C |
|
NA |
24 |
|
NA |
A0 |
|
NA |
08 |
|
NA |
40 |
|
000004 |
3C |
|
000040 |
50 |
|
000008 |
50 |
|
000008 |
58 |
|
000008 |
60 |
|
000008 |
68 |
|
000008 |
70 |
|
000016 |
00 |
|
NA |
80 |
|
NA |
08 |
|
NA |
20 |
|
NA |
40 |
|
NA |
80 |
|
000004 |
28 |