Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

pdi_open(3)

pdi_close(3)

pdi_setup(3)

pdi_cancel(3)

intro(3)

xpdi(7)



  pdi_ifb(3)                          CLIX                          pdi_ifb(3)



  NAME

    pdi_ifb, pdi_ifb_N - Move data from a PDI port to a window

  LIBRARY

    Intergraph Device Library (libix.a)

  SYNOPSIS

    #include <sys/xio/xerr.h>

    #include <sys/xio/xio.h>

    int pdi_ifb(
      int channel ,
      int wno ,
      int xorg ,
      int yorg ,
      int xext ,
      int yext ,
      int timeout ,
      int *xfcnt );

    int pdi_ifb_nw(
      int channel ,
      int wno ,
      int xorg ,
      int yorg ,
      int xext ,
      int yext ,
      int timeout ,
      struct xiosb *xiosb ,
      int efn );

  PARAMETERS

    channel   An integer representing a Processed Data Interface port

    wno       An integer representing a window

    xorg      An integer specifying the horizontal component of the window
              relative origin to be filled

    yorg      An integer specifying the vertical component of the window
              relative origin to be filled

    xext      The horizontal component of the region to be filled

    yext      The vertical component of the region to be filled




  2/94 - Intergraph Corporation                                              1






  pdi_ifb(3)                          CLIX                          pdi_ifb(3)



    timeout   The time limit in 1/60 second intervals for the data transfer

    xfcnt     The number of bytes transferred

    xiosb     A pointer to the xiosb structure updated upon completion of the
              request

    efn       The event flag number associated with the request

  DESCRIPTION

    The pdi_ifb() function provides a mechanism for moving data directly from
    the Processed Data Interface (PDI) port of the Image System Interface
    (ISI) board referenced by channel to the specified window region on an
    Intergrated Frame Buffer (IFB) graphics board.  The specified channel must
    have been opened with pdi_open()(3).

    Data is transferred to the window specified by wno.  The xorg and yorg
    parameters indicate the window relative origin of the region to be filled.
    The xext and yext parameters indicate the extents of the region to be
    filled.  Both values must be a multiple of 32.

    The timeout parameter indicates the time limit in 1/60 second intervals
    for the data transfer.  Any transfer that takes longer is aborted and an
    appropriate status is returned.  A timeout value of 0 disables the timeout
    function.

    Upon completion of the synchronous request, xfcnt indicates the number of
    bytes transferred.

    The pdi_ifb_nw() function is the asynchronous version of pdi_ifb(),
    providing the same capability without waiting for completion of the
    request.  The efn is the event flag number associated with the request.
    The xiosb parameter is a pointer to the xiosb structure updated upon
    completion of the request (see intro(3)).  The xfcnt member of the xiosb
    structure indicates the number of bytes transferred.

  RETURN VALUES

    Upon successful completion of the synchronous request, a value of 0 is
    returned.  Otherwise, one of the following failure codes is returned.

    If the asynchronous request is accepted by the XIO system, a value of 0
    will be returned by the request.  Otherwise, XIO_FAILURE will be returned.
    Upon completion of an accepted request, the status member of the xiosb
    structure will be set to either 0 if successful, or to one of the
    following failure codes if unsuccessful.

  ERRORS

    The pdi_ifb() and pdi_ifb_nw() functions will fail if one of the following



  2                                              Intergraph Corporation - 2/94






  pdi_ifb(3)                          CLIX                          pdi_ifb(3)



    is true:

    [XIO_FAILURE]
           The system does not contain the driver needed to support this
           request or efn is invalid.

    [ISI_CHANNEL_NOT_OPEN]
           The specified channel is not open for this process.

    [WINDOW_NONEXISTENT]
           The specified window does not exist.

    [ISI_INVALID_PARMS]
           The origins and extents do not describe a valid nonzero region or
           the extents are not a multiple of 32.

    [ISI_CANCELED]
           The request was canceled with pdi_cancel() or pdi_close().

    [ISI_PARITY_ERROR]
           A parity error occurred on the transfer.

    [ISI_CYCLE_ERROR]
           A hardware handshake error occurred on the transfer.

    [ISI_TIMEOUT]
           The timeout occurred before the transfer completed.

  RELATED INFORMATION

    Functions: pdi_open(3), pdi_close(3), pdi_setup(3), pdi_cancel(3),
    intro(3)

    Files:  xpdi(7)




















  2/94 - Intergraph Corporation                                              3




Typewritten Software • bear@typewritten.org • Edmonds, WA 98026