Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

fpe_coproc_alloc(3)

fpe_did_unload(3)

xfpe(7)



  fpe_did_load(3)                     CLIX                     fpe_did_load(3)



  NAME

    fpe_did_load - Loads a Floating Point Engine (FPE) coprocessor image

  LIBRARY

    Intergraph Device Library (libix.a)

  SYNOPSIS

    #include <sys/xio/xerr.h>

    #include <sys/xio/xfpe.h>

    int fpe_did_load(
      int fpeno ,
      char *file ,
      int *did );

  PARAMETERS

    fpeno   A Floating-Point Engine number

    file    A pointerr to a filename

    did     A pointer to a driver identification number

  DESCRIPTION

    The fpe_did_load() function loads an application-specific microcode image
    into a Floating-Point Engine (FPE) coprocessor.  Obtained with
    fpe_coproc_alloc(), fpeno is the number of the FPE to be loaded.

    The file function points to the pathname of the file containing the FPE
    microcode image to be loaded.  Before loading the microcode image into the
    FPE, fpe_did_load() checks the process's read access permission for the
    file ensures that the file is not currently opened for write operations.
    Then, fpe_did_load() marks the file as being opened for execution; this
    ensures that a process cannot write to the file while it is being loaded.
    The driver clears the execute status when the microcode image is unloaded.

    The driver supports a maximum of NDID-1 loaded microcode images.

    Upon successful completion, fpe_did_load() updates the did pointer
    location with an identification number the driver associates with the
    loaded microcode image.  fpe_did_unload() uses this number to unload the
    proper microcode image.

  RETURN VALUES

    Upon successful completion, a value of 0 is returned.  Otherwise, one of



  2/94 - Intergraph Corporation                                              1






  fpe_did_load(3)                     CLIX                     fpe_did_load(3)



    the following failure codes is returned.

  ERRORS

    The fpe_did_load() will fail if one of the following is true:

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

    [FPE_NOT_PRESENT]
           The value of fpeno specifies an FPE that is not in the system.

    [FPE_NOT_OWNER]
           The value of fpeno specifies an FPE that is not currently allocated
           by the process.

    [FPE_DID_FILE_NOT_FOUND]
           The file parameter points to an invalid filename.

    [FPE_DID_NO_ACCESS_PRIV]
           The file parameter specifies a file that lacks read permission for
           the process.

    [FPE_DID_FILE_BUSY]
           The file parameter specifies a file that is currently opened for
           writing.

    [FPE_DID_DEVICE_FULL]
           The process attempts to exceed the maximum number of loaded
           microcode images supported.

    [FPE_DID_BAD_FILE]
           A failure occurs while reading the microcode file, or the file's
           header is invalid.

    [FPE_DID_NOSPACE]
           The microcode image is larger than the available image memory in
           the FPE.

    [FPE_DID_INIT_FAILURE]
           The FPE fails to initialize properly after loading the microcode
           image.

  RELATED INFORMATION

    Functions:  fpe_coproc_alloc(3), fpe_did_unload(3)

    Files:  xfpe(7)





  2                                              Intergraph Corporation - 2/94




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