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

#### FSCBD

Prolog

Control Block Contents
FSCBD DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### FSCBD Prolog

     NAME       : FSCBD
     Description: File System Control Block
     DSECT      : FSCBD
     Function   : Maps a based structure which names
                  all fields within an FSCB. FSCBD is a PLIST
                  defined for general use by routines that use
                  the CMS file system. FSCBD is generated when
                  the user issues the FSCBD macro.

#### FSCBD Control Block Content

#### FSCBD DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      FSCBD          File System Control Block
    0000    0 Character    8 FSCBCOMM       File system command (e.g. RDBUF)
    0008    8 Character   18 FSCBFILE       File ID (name, type, and mode)
    0008    8 Character   16 FSCBFNFT       File name and file type
    0008    8 Character    8 FSCBFN         File name
    0010   16 Character    8 FSCBFT         File type
    0018   24 Character    2 FSCBFM         File mode (letter and number)
    0018   24 Character    1 FSCBFML        File mode letter
    0019   25 Character    1 FSCBFMN        File mode number
    001A   26 Signed       2 FSCBITNO       Relative record number to be
                                            accessed on FSREAD and FSWRITE
                                            (applies only to the non-extended
                                            FSCB)
    001C   28 Address      4 FSCBBUFF       Address of the input/output
                                            buffer for FSREAD and FSWRITE
                                            (also used on calls to DMSSTT for
                                            the FST address)
    0020   32 Signed       4 FSCBSIZE       Length (in bytes) of the
                                            input/output buffer (also used to
                                            return the record length on
                                            FSOPEN)
    0024   36 Character    2 FSCBFV         Record format and first flag byte
    0024   36 Character    1 FSCBRECF       Record format - F or V
    0025   37 Bitstring    1 FSCBFLG        First flag byte
         'FSCBFLG' flag byte definition
              1... ....      FSCBTHEX       X'80' Space threshold exceeded
                                            (SFS only)
              .1.. ....      FSCBITAV       X'40' Item available (CDF only)
              ..1. ....      FSCBEPL        X'20' Extended PLIST (FORM=E)
              ...1 ....      FSCBMSG        X'10' MSG=YES on FSSTATE or
                                            FSOPEN
              .... 1...      FSCBSTW        X'08' STATEW specified on FSSTATE
              .... .1..      FSCBCACY       X'04' CACHE=YES specified
              .... ..1.      FSCBCACN       X'02' CACHE=NO specified
              .... ...1      FSCBRCAV       X'01' Previous record null (CDF
                                            only)
    0026   38 Signed       2 FSCBNOIT       Number of records to be accessed
                                            on FSREAD and FSWRITE (applies
                                            only to the non-extended FSCB)
    0026   38 Bitstring    1 FSCBFLG2       Second flag byte
         'FSCBFLG2' flag byte definition (FORM=E only)
              1... ....      FSCBNMAC       X'80' NOMSG=ACTIVE specified on
                                            FSOPEN
              .1.. ....      FSCBNMNF       X'40' NOMSG=NOTFOUND specified on
                                            FSOPEN
              ..1. ....      FSCBNMOS       X'20' NOMSG=OSDOS specified on
                                            FSOPEN
    0027   39 Character    1 FSCBOTYP       OPENTYP value
         'FSCBOTYP' Values (FORM=E only)
              .... ....      FSCBTNON       X'00' OPENTYP=NONE specified
              000000D9       FSCBTRD        C'R' OPENTYP=READ specified
              000000E6       FSCBTWR        C'W' OPENTYP=WRITE specified
              000000D5       FSCBTNEW       C'N' OPENTYP=NEW specified
              000000E7       FSCBTREP       C'X' OPENTYP=REPLACE specified
    0028   40 Signed       4 FSCBNORD       Number of bytes actually read on
                                            FSREAD
         'FSCBFST' is returned on FSOPEN. Its value is based on the OPENTYP
         specified and whether or not the file exists. Note that a non-extended
         format FSCB (FORM=E not specified) implies OPENTYP=NONE. The values are
         as follows:
      File doesn't exist .... FSCBFST=A(0)
         File exists: Not FORM=E ............ FSCBFST=A(Copy of 40 byte FST)
         OPENTYP=NONE .......... FSCBFST=A(Copy of 64 byte FST) OPENTYP=READ
         .......... FSCBFST=A(Copy of 64 byte FST) OPENTYP=WRITE .........
         FSCBFST=A(Copy of 64 byte FST) OPENTYP=REPLACE ....... FSCBFST=A(-1)
         OPENTYP=NEW ........... Error, FSCBFST is unchanged
    0028   40 Address      4 FSCBFST        Address of a copy of the FST
                                            returned on FSOPEN
         The following fields apply only to the extended form FSCB (i.e., FORM=E
         was specified).
    002C   44 Signed       4 FSCBAITN       Relative record number to be
                                            accessed on FSREAD and FSWRITE
                                            (also referred to as the
                                            "alternate item number")
    0030   48 Signed       4 FSCBANIT       Number of records to be accessed
                                            on FSREAD and FSWRITE (also
                                            referred to as the "alternate
                                            number of items")
    0034   52 Signed       4 FSCBWPTR       Extended write pointer (input on
                                            FSPOINT FORM=E, output on FSOPEN)
    0038   56 Signed       4 FSCBRPTR       Extended read pointer (input on
                                            FSPOINT FORM=E, output on FSOPEN)
              0000003C       FSCBLNBY       *-FSCBD Length (in bytes) of the
                                            extended FSCB

#### FSCBD Storage Layout

    *** FSCBD - File System Control Block
    *
    *     +-------------------------------------------------------+
    *   0 |                       FSCBCOMM                        |
    *     +-------------------------------------------------------+
    *   8 |                                                       |
    *     =                       FSCBFILE                        =
    *     |             +-----------------------------------------+
    *     |             | 1A
    *     +-------------+
    *
    *** FSCBD - File System Control Block

    *** Overlay for FSCBFILE in FSCBD
    *
    *     +-------------------------------------------------------+
    *   8 |                       FSCBFNFT                        |
    *     |                                                       |
    *     +-------------------------------------------------------+
    *  18
    *
    *** Overlay for FSCBFILE in FSCBD

    *** Overlay for FSCBFNFT in FSCBD
    *
    *     +-------------------------------------------------------+
    *   8 |                        FSCBFN                         |
    *     +-------------------------------------------------------+
    *  10 |                        FSCBFT                         |
    *     +-------------+-----------------------------------------+
    *  18 |   FSCBFM    | 1A
    *     +-------------+
    *
    *** Overlay for FSCBFNFT in FSCBD

    *** Overlay for FSCBFM in FSCBD
    *
    *     +------+------+-------------+---------------------------+
    *  18 |:BFML |:BFMN |  FSCBITNO   |         FSCBBUFF          |
    *     +------+------+-------------+-------------+-------------+
    *  20 |         FSCBSIZE          |   FSCBFV    | 26
    *     +---------------------------+-------------+
    *
    *** Overlay for FSCBFM in FSCBD

    *** Overlay for FSCBFV in FSCBD
    *
    *                                 +------+------+-------------+
    *  20 ...                      24 |:BRECF|:BFLG |  FSCBNOIT   |
    *                                 +------+------+-------------+
    *  28
    *
    *** Overlay for FSCBFV in FSCBD

    *** Overlay for FSCBNOIT in FSCBD
    *
    *                                               +------+------+
    *  20 ...                                    26 |:BFLG2|:BOTYP|
    *     +---------------------------+-------------+------+------+
    *  28 |         FSCBNORD          | 2C
    *     +---------------------------+
    *
    *** Overlay for FSCBNOIT in FSCBD

    *** Overlay for FSCBNORD in FSCBD
    *
    *     +---------------------------+---------------------------+
    *  28 |         FSCBFST           |         FSCBAITN          |
    *     +---------------------------+---------------------------+
    *  30 |         FSCBANIT          |         FSCBWPTR          |
    *     +---------------------------+---------------------------+
    *  38 |         FSCBRPTR          | 3C
    *     +---------------------------+
    *
    *** Overlay for FSCBNORD in FSCBD

#### FSCBD Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    FSCBAITN       002C
    FSCBANIT       0030
    FSCBBUFF       001C
    FSCBCACN       0025 02
    FSCBCACY       0025 04
    FSCBCOMM       0000
    FSCBEPL        0025 20
    FSCBFILE       0008
    FSCBFLG        0025
    FSCBFLG2       0026
    FSCBFM         0018
    FSCBFML        0018
    FSCBFMN        0019
    FSCBFN         0008
    FSCBFNFT       0008
    FSCBFST        0028
    FSCBFT         0010
    FSCBFV         0024
    FSCBITAV       0025 40
    FSCBITNO       001A
    FSCBLNBY       0038 0000003C
    FSCBMSG        0025 10
    FSCBNMAC       0026 80
    FSCBNMNF       0026 40
    FSCBNMOS       0026 20
    FSCBNOIT       0026
    FSCBNORD       0028
    FSCBOTYP       0027
    FSCBRCAV       0025 01
    FSCBRECF       0024
    FSCBRPTR       0038
    FSCBSIZE       0020
    FSCBSTW        0025 08
    FSCBTHEX       0025 80
    FSCBTNEW       0027 000000D5
    FSCBTNON       0027 00
    FSCBTRD        0027 000000D9
    FSCBTREP       0027 000000E7
    FSCBTWR        0027 000000E6
    FSCBWPTR       0034

This information is based on z/VM V4R3.0.
Last updated on 1 May 2002 at 14:22:56 EDT.
Copyright IBM Corporation, 1990, 2002