Cartridge entry installation exit parameter list (CBRUXEPL)

The cartridge entry installation exit (CBRUXENT) is passed by way of register 1, the pointer to a parameter list mapped by CBRUXEPL. Here is the format of CBRUXEPL.

UXEPL    DSECT ,            CARTRIDGE ENTRY INSTALLATION EXIT
*                             PARAMETER LIST
*********************************************************************
*
*        CARTRIDGE ENTRY INSTALLATION EXIT PARAMETERS
*
*********************************************************************
UXEPARM  DS    0D           CBRUXENT PARAMETER SECTION
UXELIB   DS    CL8          LIBRARY NAME
*                             (INPUT VARIABLE)
UXELDEV  DS    CL8          LIBRARY DEVICE TYPE
*                             (INPUT VARIABLE)
UXELCON  DS    CL8          LIBRARY CONSOLE NAME
*                             (INPUT VARIABLE)
UXELTYP  DS    CL1          LIBRARY LOGICAL TYPE
*                             'R' FOR AUTOMATED LIBRARY
*                             'M' FOR MANUAL LIBRARY
*                             (INPUT VARIABLE)
UXESUPPT DS    XL1          SUPPORTED FUNCTION
UXELOPM  EQU   X'80'          ON IF OUTBOARD POLICY MANAGEMENT
*                               SUPPORTED IN LIBRARY
*                             (INPUT VARIABLE)
         DS    CL6          RESERVED
UXELDESC DS    CL120        LIBRARY DESCRIPTION
*                             (INPUT VARIABLE)
         DS    CL8          RESERVED
UXEVOLSR DS    CL6          VOLUME SERIAL NUMBER
*                             (INPUT VARIABLE)
UXEVATTR DS    XL1          VOLUME ATTRIBUTE
*                             0 PHYSICAL NON-VTS VOLUME
*                             1 LOGICAL VTS VOLUME
*                             2 IMPORTED VTS LOGICAL VOLUME
*                             (INPUT VARIABLE)
UXEVINFO DS    XL1          ADDITIONAL VOLUME INFORMATION
*                             (INPUT VARIABLE)
UXEVOPM  EQU   X'80'          ON IF NON-DEFAULT POLICY NAMES
*                               EXIST AT THE LIBRARY
UXEVSGSP EQU   X'40'          ON IF STORAGE GROUP NAME
*                               SPECIFIED THROUGH IMPORT LIST
UXEVMCSP EQU   X'20'          ON IF MANAGEMENT CLASS NAME
*                               SPECIFIED THROUGH IMPORT LIST
UXEVSCSP EQU   X'10'          ON IF STORAGE CLASS NAME
*                               SPECIFIED THROUGH IMPORT LIST
UXEVDCSP EQU   X'08'          ON IF DATA CLASS NAME
*                               SPECIFIED THROUGH IMPORT LIST
UXEUSEA  DS    CL1          VOLUME USE ATTRIBUTE
*                             'P' FOR PRIVATE
*                             'S' FOR SCRATCH
*                             (INPUT/OUTPUT VARIABLE)

UXEWPROT DS    CL1          WRITE PROTECTION STATUS
*                             'Y' FOR WRITE-PROTECTED
*                             'N' FOR NOT WRITE-PROTECTED
*                             (INPUT/OUTPUT VARIABLE)
UXECHKPT DS    CL1          CHECKPOINT VOLUME INDICATOR
*                             'Y' FOR CHECKPOINT VOLUME
*                             'N' FOR NOT CHECKPOINT VOLUME
*                             (INPUT/OUTPUT VARIABLE)
UXELOC   DS    CL1          VOLUME LOCATION CODE
*                             'L' FOR LIBRARY-RESIDENT
*                             'S' FOR SHELF-RESIDENT
*                             (INPUT VARIABLE)
UXETDSI  DS    0F           TAPE DEVICE SELECTION INFORMATION
UXEREC   DS    XL1          TAPE RECORDING TECHNOLOGY
*                             (INPUT/OUTPUT VARIABLE)
UXEMEDIA DS    XL1          MEDIA TYPE
*                             (INPUT/OUTPUT VARIABLE FOR MTL)
*                             (INPUT VARIABLE FOR ATLDS)
UXECOMP  DS    XL1          COMPACTION
*                             (INPUT/OUTPUT VARIABLE)
UXESPEC  DS    XL1          SPECIAL ATTRIBUTE
*                             (INPUT/OUTPUT VARIABLE)
UXEGROUP DS    CL8          STORAGE GROUP NAME
*                             (INPUT/OUTPUT VARIABLE)
UXESHLOC DS    CL32         SHELF LOCATION
*                             (INPUT/OUTPUT VARIABLE)
UXEOWNER DS    CL64         VOLUME OWNER INFORMATION
*                             (INPUT/OUTPUT VARIABLE)
         DS    CL8          RESERVED
UXECREAT DS    CL10         VOLUME RECORD CREATION DATE
*                             (INPUT VARIABLE)
UXEENTEJ DS    CL10         LAST ENTRY OR EJECTION DATE
*                             (INPUT VARIABLE)
UXEMOUNT DS    CL10         LAST MOUNTED DATE
*                             (INPUT/OUTPUT VARIABLE)
UXEWRITE DS    CL10         LAST WRITTEN DATE
*                             (INPUT/OUTPUT VARIABLE)
UXEEXPIR DS    CL10         VOLUME EXPIRATION DATE
*                             (INPUT/OUTPUT VARIABLE)
         DS    CL10         RESERVED
         DS    CL4          RESERVED
UXEEXITI DS    CL16         INSTALLATION EXIT INFORMATION
*                             (INPUT VARIABLE)
UXELMOPM DS    0CL32        OUTBOARD POLICY MANAGEMENT
UXELMSG  DS    CL8          LIBRARY MANAGER STORAGE GROUP
*                             TO CHANGE VALUE, USE UXEGROUP
*                             (INPUT ONLY)
UXELMSC  DS    CL8          LIBRARY MANAGER STORAGE CLASS
*                             (INPUT/OUTPUT VARIABLE)
UXELMMC  DS    CL8          LIBRARY MANAGER MANAGEMENT CLASS
*                             (INPUT/OUTPUT VARIABLE)
UXELMDC  DS    CL8          LIBRARY MANAGER DATA CLASS
*                             (INPUT/OUTPUT VARIABLE)
         DS    0D                   END OF UXEPL
UXEPLLEN EQU   *-UXEPL
         SPACE 1
*********************************************************************
*
*        RETURN CODES
*
*********************************************************************
UXENOCHG EQU   0            PERFORM ENTER AS REQUESTED
*                             USING PARAMETER VALUES PASSED
*                             IN ON INPUT
UXECHG   EQU   4            PERFORM ENTER REQUEST BUT NOTE
*                             THAT PARAMETER VALUES HAVE
*                             CHANGED ON EXIT
UXEFAIL  EQU   8            DENY ENTER REQUEST (FOR AN ATLDS, THE
*                             VOLUME IS EJECTED FROM THE LIBRARY)
UXEIGNOR EQU   12           IGNORE ENTER REQUEST (FOR AN ATLDS
*                             THE VOLUME REMAINS IN THE LIBRARY
*                             IN THE INSERT CATEGORY)
UXEDONT  EQU   16           DO NOT CALL THE CARTRIDGE ENTRY
*                             INSTALLATION EXIT AGAIN AND
*                             PERFORM CARTRIDGE ENTRY AS
*                             REQUESTED USING THE PARAMETER
*                             VALUES PASSED IN ON INPUT
         SPACE 1
*********************************************************************
*
*        LIBRARY LOGICAL TYPE CONSTANTS
*
*********************************************************************
UXEAUTO  EQU   C'R'         AUTOMATED/REAL LIBRARY
UXEMAN   EQU   C'M'         MANUAL LIBRARY
         SPACE 1
*********************************************************************
*
*        VOLUME ATTRIBUTE CONSTANTS
*
*********************************************************************
UXEPHYCL EQU   0            PHYSICAL NON-VTS VOLUME
UXELOGCL EQU   1            LOGICAL VTS VOLUME
UXEIMPRT EQU   2            IMPORTED VTS LOGICAL VOLUME
         SPACE 1
*********************************************************************
*
*        USE ATTRIBUTE CONSTANTS
*
*********************************************************************
UXEPRIV  EQU   C'P'         PRIVATE USE ATTRIBUTE
UXESCRT  EQU   C'S'         SCRATCH USE ATTRIBUTE
         SPACE 1
*********************************************************************
*
*        TAPE DEVICE SELECTION INFORMATION (TDSI) CONSTANTS
*
*********************************************************************
UXENOCAR EQU   0            ZERO IS AN ACCEPTABLE VALUE FOR TDSI
*********************************************************************
*        CONSTANTS TO DEFINE TAPE RECORDING TECHNOLOGY
*********************************************************************
UXENOREC  EQU   0           RECORDING TECHNOLOGY UNKNOWN OR
*                             UNSPECIFIED
UXE18TRK  EQU   1           READ/WRITE ON 18 TRACK DEVICE
UXE36TRK  EQU   2           READ/WRITE ON 36 TRACK DEVICE
UXE128TRK EQU   3           READ/WRITE ON 128 TRACK DEVICE
UXE256TRK EQU   4           READ/WRITE ON 256 TRACK DEVICE
UXE384TRK EQU   5           READ/WRITE ON 384 TRACK DEVICE
UXEEFMT1  EQU   6           READ/WRITE ON ENTERPRISE FORMAT 1
*                             (EFMT1) DEVICE
UXEEFMT2  EQU   7           READ/WRITE ON ENTERPRISE FORMAT 2
*                             (EFMT2) DEVICE
UXEEEFMT2 EQU   8           READ/WRITE ON ENTERPRISE ENCRYPTED FORMAT 2 
*                             (EEFMT2) DEVICE
UXEEFMT3  EQU   9           READ/WRITE ON ENTERPRISE
*                             FORMAT 3 (EFMT3) DEVICE
UXEEEFMT3 EQU   10          READ/WRITE ON ENTERPRISE
*                             ENCRYPTED FORMAT 3 (EEFMT3) DEVICE
      
UXEEFMT4  EQU   11          READ/WRITE ON ENTERPRISE FORMAT 4  
*                             (EFMT4) DEVICE                
UXEEEFMT4 EQU   12          READ/WRITE ON ENTERPRISE ENCRYPTED 
*                              FORMAT 4 (EEFMT4) DEVICE
*********************************************************************
*        CONSTANTS TO DEFINE MEDIA TYPE
*********************************************************************
UXENOMED EQU   0            MEDIA TYPE UNKNOWN OR UNSPECIFIED
UXEMED1  EQU   1            MEDIA1 - CARTRIDGE SYSTEM TAPE
UXEMED2  EQU   2            MEDIA2 - ENHANCED CAPACITY CARTRIDGE
*                             SYSTEM TAPE
UXEMED3  EQU   3            MEDIA3 - HIGH PERFORMANCE CARTRIDGE
*                             TAPE
UXEMED4  EQU   4            MEDIA4 - EXTENDED HIGH PERFORMANCE
*                             CARTRIDGE TAPE
UXEMED5  EQU   5            MEDIA5 - ENTERPRISE TAPE CARTRIDGE
UXEMED6  EQU   6            MEDIA6 - ENTERPRISE WORM TAPE CARTRIDGE
UXEMED7  EQU   7            MEDIA7 - ENTERPRISE ECONOMY TAPE CARTRIDGE
UXEMED8  EQU   8            MEDIA8 - ENTERPRISE ECONOMY WORM TAPE
*                             CARTRIDGE
UXEMED9  EQU   9            MEDIA9 -  ENTERPRISE EXTENDED TAPE 
*                                     CARTRIDGE 
UXEMED10 EQU   10           MEDIA10 - ENTERPRISE EXTENDED WORM TAPE
*                                     CARTRIDGE
UXEMED11 EQU   11           MEDIA11  ENTERPRISE ADVANCED 
*                                     TAPE CARTRIDGE                
UXEMED12 EQU   12           MEDIA12  ENTERPRISE ADVANCED 
*                                     WORM TAPE CARTRIDGE                
UXEMED13 EQU   13           MEDIA13  ENTERPRISE ADVANCED 
*                                     ECONOMY TAPE CARTRIDGE                
*********************************************************************
*        CONSTANTS TO DEFINE COMPACTION
* (THE MEANING OF THE COMPACTION FIELD HAS CHANGED FROM TYPE OF
*  COMPACTION TO COMPACTION YES/NO - UXEIDRC AND UXECOMPT CAN BE
*  USED INTERCHANGEABLY)
*********************************************************************
UXECMPNS EQU   0            COMPACTION UNKNOWN OR NOT SET
UXENOCMP EQU   1            NO COMPACTION
UXEIDRC  EQU   2            COMPACTION
UXECOMPT EQU   2            COMPACTION
*********************************************************************
*        CONSTANTS TO DEFINE SPECIAL ATTRIBUTE
*********************************************************************
UXENOSPC EQU   0            VOLUME HAS NO SPECIAL ATTRIBUTE
UXERDCOM EQU   1            VOLUME WILL BE MOUNTED FOR READ ONLY -
*                             ALL READ-COMPATIBLE DEVICES MAY BE
*                             SELECTED
         SPACE 1
*********************************************************************
*
*         MISCELLANEOUS CONSTANTS
*
*********************************************************************
UXEPLSP  EQU   0            UXEPL SUBPOOL NUMBER
UXEYES   EQU   C'Y'         YES
UXENO    EQU   C'N'         NO
UXEBLANK EQU   C' '         BLANK

OAM obtains storage below the line, from subpool 0, key 5, or subpool 0, user key, for the installation exit parameter list.