VMS Help  —  RMS  XABTRM
    The terminal XAB (XABTRM) allows extended terminal read
    operations to occur when a Get service is used for a terminal
    device. Unlike most other XABs, the XABTRM is associated with
    a RAB (record stream). The XABTRM provides information that the
    terminal driver uses to process a user-defined item list that
    defines the terminal read operation.

    The following table lists the symbolic offset, the size in bytes,
    and a brief description of each field.

    Offset           Size    Description

    XAB$B_BLN        1       Block length
    XAB$B_COD        1       Type code
    XAB$L_ITMLST     4       Item list address
    XAB$W_ITMLST_    2       Item list length
    LEN
    XAB$L_NXT        4       Next XAB address

    To perform the extended terminal read operation, the following
    information is required:

    o  In the RAB, the RAB$L_ROP field RAB$V_ETO option must be
       specified (set).

    o  In the RAB, the RAB$L_XAB field must contain the address of
       the XABTRM.

    o  In the XABTRM, the XAB$L_ITMLST and XAB$W_ITMLST_LEN fields
       must contain the starting address and length of a valid
       terminal driver read function item list.

    o  The item list must be supplied according to the conventions
       described for creating an item list for the terminal driver in
       the OpenVMS I/O User's Reference Manual.

    An item list consists of one or more item list entries, where
    each item defines an attribute of the terminal read operation.
    Instead of defining terminal read arguments in the RAB, all such
    arguments (including certain arguments only available with the
    item list method) are defined in the item list. The following
    list shows the RAB$L_ROP options related to a terminal read
    operation and the equivalent item codes:

    Option        Item Code

    RAB$V_CVT     TRM$_MODIFIERS, bit TRM$M_TM_CVTLOW
    RAB$V_PMT     TRM$_PROMPT
    RAB$V_PTA     TRM$_MODIFIERS, bit TRM$M_TM_PURGE
    RAB$V_RNE     TRM$_MODIFIERS, bit TRM$M_TM_NOECHO
    RAB$V_RNF     TRM$_MODIFIERS, bit TRM$M_TM_NOFILTR
    RAB$V_TMO     TRM$_TIMEOUT
Close Help