Programming Interface Information: This page documents intended Programming Interfaces that allow the customer to write programs to obtain the services of z/VM.

#### TVISECT

Prolog

Control Block Contents
TVISECT DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### TVISECT Prolog

     Name       : TVISECT
     Description: DMSTVI PLIST - Tape Volume Processing I-face
     DSECT      : TVISECT
     Function   : THIS MACRO MAPS THE PLIST THAT IS PASSED TO DMSTVI
                  WHEN DMSTVI IS CALLED. THE ADDRESS OF THE PLIST
                  IS IN REGISTER 1 WHEN DMSTVI IS CALLED. TVISECT
                  is a parameter list that defines the input to a
                  user supplied DMSTVI module. TVISECT is
                  generated when the user issues the TVISECT
                  macro.
     Notes      : MODULE TYPE is MACRO
                  PROCESSOR is ASSEMBLER F

#### TVISECT Control Block Content

#### TVISECT DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      TVISECT        DMSTVI PLIST - Tape Volume
                                            Processing I-face
    0000    0 Character    8 TVIMOD         MODULE NAME FOR SVC 202
    0008    8 Character    8 TVIFUNCT       CALL FUNCTION KEYWORD
                                 SYSPARM  - CALL FOR SYSPARM
                                            PROCESSING
                                 OPEN     - CALL FROM OPEN MACRO
                                 VOLIDBAD - TAPE / USER SPECIFIED
                                            VOLIDS DO NOT MATCH
                                 EOV      - CALL FOR END OF VOLUME
                                 CLOSE    - CALL FROM CLOSE MACRO
            THE FOLLOWING FIELDS WILL BE FILLED IN FROM INFORMATION THAT
            IS STORED IN THE LABSECT.  REFER TO THE LABELDEF COMMAND FOR
            MORE INFORMATION ABOUT THESE FIELDS.
    0010   16 Character    8 TVIFILE        DDNAME
    0018   24 Character   17 TVIFID         FILE ID (RIGHTMOST 17 CHARACTERS)
    0029   41 Character    1 TVISEC         SECURITY TYPE
    002A   42 Character    6 TVIVOLID       VOLUME ID TO BE MOUNTED
    0030   48 Character    4 TVIVSEQ        VOLUME SEQUENCE NUMBER
    0034   52 Character    4 TVIFSEQ        FILE SEQUENCE NUMBER
    0038   56 Character    4 TVIGENN        GENERATION NUMBER
    003C   60 Character    2 TVIGENV        GENERATION VERSION
    003E   62 Character    6 TVICRD         CREATION DATE
    0044   68 Character    6 TVIEXD         EXPIRATION DATE
    004A   74 Signed       2 TVISYSPL       LENGTH OF SYSPARM STRING
    004C   76 Address      4 TVISYSPA       ADDRESS OF SYSPARM STRING
    0050   80 Character   44 TVIFILID       FILE IDENTIFIER
    007C  124 Character    8 TVISCRAT       SCRATCH | NOSCRATC SCRATCH WAS
                                            (OR WAS NOT) SPECIFIED AS THE
                                            LABELDEF VOLID
            THE FOLLOWING FIELDS WILL BE FILLED IN FROM INFORMATION
            THAT IS STORED IN THE FCBSECT (SUPPLIED BY THE FILEDEF
            COMMAND).
    0084  132 Character    4 TVICUU         VIRTUAL DEVICE ADDRESS (TAP0
                                            THROUGH TAPF) X'180' - X'187',
                                            X'288' - X'28F'
    0088  136 Character    8 TVILABEL       Filled with tape label type code
    0090  144 Bitstring    1 TVIRFMT        RECORDING FORMAT
              1..1 ....      TVIMODE        TVIRFMT,1,C'X' Old label for
                                            TVIRFMT
    0091  145 Character    4 TVIALT         ALTERNATE TAPE DRIVE TAPE ID
    0095  149 Character    6 TVIRING        RING | NORING - WRITE ENABLE RING
    009B  155 Bitstring    1 TVIFLAGS       FLAG FOR TVI EXPANSION FIELDS
               BIT INDICATORS (MAY BE USED IN COMBINATIONS)
                  X'00'     NO EXPANSION DATA AVAILABLE
                  X'80'     DATA BEING PASSED FROM TAPE SUB-SYS
                  X'40'     - RESERVED -
                  X'20'     - RESERVED -
                  X'10'     - RESERVED -
                  X'08'     - RESERVED -
                  X'04'     - RESERVED -
                  X'02'     - RESERVED -
                  X'01'     EXPANSION DATA FIELDS AVAILABLE
    009C  156 Signed       4 TVIBLKCT       BLOCK COUNT
          -- EXPANSION DATA FIELDS ******************************----
           THE FOLLOWING FIELDS WILL BE FILLED IN FROM INFORMATION
           THAT IS STORED IN THE APPLICATION PROGRAM DCB BLOCK AT
           "CLOSE" TIME TO BE MADE AVAILABLE TO THE TAPE SUBSYSTEM.
           IF THE TAPE SUBSYSTEM HAS THESE VALUES AVAILABLE WHEN THE
           DMSTVI "OPEN" CALL IS DONE, CMS WILL ACCEPT THESE VALUES
           AS RETURNED OUTPUTS FOR SUBSTITUTION INTO THE FCB (FILEDEF),
           IF THE USER HAS NOT ALREADY SPECIFIED THEM.  THE FCB
           INFORMATION WILL THEN BE USED TO REPLACE ANY NON-SPECIFIED
           DCB ATTRIBUTES DURING THE CMS OPEN PROCESSING, JUST AS IS
           DONE FOR STANDARD LABEL TAPE PROCESSING.
    00A0  160 Bitstring    1 TVIRECFM       FILE RECORD FORMAT
      Basic record format bit definitions:
          X'80' = Fixed length records          RECFM= F
          X'40' = Variable length records       RECFM= V
          X'C0' = Undefined length records      RECFM= U
          X'20' = ASCII Variable length records RECFM= D
      Modifiers which further define records:
          X'10' = Blocking being done
          X'08' = For Fixed records: Standard size blocks used
                  For Variable recs: Spanned records used
          X'04' = ASA Control characters in use
          X'02' = Machine Control characters in use
          X'01' = Record Key length specified
    00A4  164 Signed       4 TVILRECL       FILE LOGICAL RECORD LENGTH
    00A8  168 Signed       4 TVIBLKSI       FILE BLOCK SIZE
    00B0  176 Dbl-Word     8 TVIEND (0)     END OF TVISECT
              00000016       TVISIZE        (*-TVISECT+7)/8 SIZE OF TVISECT
                                            IN DOUBLEWORDS

#### TVISECT Storage Layout

    *** TVISECT - DMSTVI PLIST - Tape Volume Processing I-face
    *
    *     +-------------------------------------------------------+
    *   0 |                        TVIMOD                         |
    *     +-------------------------------------------------------+
    *   8 |                       TVIFUNCT                        |
    *     +-------------------------------------------------------+
    *  10 |                       TVIFILE                         |
    *     +-------------------------------------------------------+
    *  18 |                                                       |
    *     =                        TVIFID                         =
    *     |      +------+-----------------------------------------+
    *  28 |      |TVISEC|                TVIVOLID                 |
    *     +------+------+-------------+---------------------------+
    *  30 |         TVIVSEQ           |         TVIFSEQ           |
    *     +---------------------------+-------------+-------------+
    *  38 |         TVIGENN           |  TVIGENV    |   (03E)-    |
    *     +---------------------------+-------------+-------------+
    *  40 |         -TVICRD           |         TVIEXD-           |
    *     +-------------+-------------+---------------------------+
    *  48 |   -(044)    |  TVISYSPL   |         TVISYSPA          |
    *     +-------------+-------------+---------------------------+
    *  50 |                                                       |
    *     =                       TVIFILID                        =
    *     |                           +---------------------------+
    *     |                           |        TVISCRAT-          |
    *     +---------------------------+---------------------------+
    *  80 |          -(07C)           |          TVICUU           |
    *     +---------------------------+---------------------------+
    *  88 |                       TVILABEL                        |
    *     +------+---------------------------+--------------------+
    *  90 |:RFMT |          TVIALT           |     TVIRING-       |
    *     +------+-------------+------+------+--------------------+
    *  98 |      -(095)        |:FLAGS|         TVIBLKCT          |
    *     +------+-------------+------+---------------------------+
    *  A0 |:RECFM|////////////////////|         TVILRECL          |
    *     +------+--------------------+---------------------------+
    *  A8 |         TVIBLKSI          |///////////////////////////|
    *     +---------------------------+---------------------------+
    *
    *** TVISECT - DMSTVI PLIST - Tape Volume Processing I-face

#### TVISECT Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    TVIALT         0091
    TVIBLKCT       009C
    TVIBLKSI       00A8
    TVICRD         003E
    TVICUU         0084
    TVIEND         00B0
    TVIEXD         0044
    TVIFID         0018
    TVIFILE        0010
    TVIFILID       0050
    TVIFLAGS       009B
    TVIFSEQ        0034
    TVIFUNCT       0008
    TVIGENN        0038
    TVIGENV        003C
    TVILABEL       0088
    TVILRECL       00A4
    TVIMOD         0000
    TVIMODE        0090 90
    TVIRECFM       00A0
    TVIRFMT        0090
    TVIRING        0095
    TVISCRAT       007C
    TVISEC         0029
    TVISIZE        00B0 00000016
    TVISYSPA       004C
    TVISYSPL       004A
    TVIVOLID       002A
    TVIVSEQ        0030

This information is based on z/VM V5R2.0.
Last updated on 6 Dec 2005 at 15:46:28 EDT.
Copyright IBM Corporation, 1990, 2005