MISC Types Reference

Per-function autodoc pages link to these types via the type name (e.g., [List](types-misc.md#list)).

Clickable inner types: inside each struct definition, field types that are themselves structs/unions/enums are clickable hyperlinks to their own definitions.

Contents

mathresource.h


configregs.h


configvars.h


MathIEEEResource

Source: libraries/mathresource.h


struct MathIEEEResource
{
    struct Node  MathIEEEResource_Node;
    unsigned short  MathIEEEResource_Flags;
    unsigned short  *MathIEEEResource_BaseAddr; /* ptr to 881 if exists */
    void    (*MathIEEEResource_DblBasInit)();
    void    (*MathIEEEResource_DblTransInit)();
    void    (*MathIEEEResource_SglBasInit)();
    void    (*MathIEEEResource_SglTransInit)();
    void    (*MathIEEEResource_ExtBasInit)();
    void    (*MathIEEEResource_ExtTransInit)();
};


DiagArea

Source: libraries/configregs.h


struct DiagArea {
    UBYTE   da_Config;  /* see below for definitions */
    UBYTE   da_Flags;   /* see below for definitions */
    UWORD   da_Size;    /* the size (in bytes) of the total diag area */
    UWORD   da_DiagPoint;   /* where to start for diagnostics, or zero */
    UWORD   da_BootPoint;   /* where to start for booting */
    UWORD   da_Name;    /* offset in diag area where a string */
                /*   identifier can be found (or zero if no */
                /*   identifier is present). */

    UWORD   da_Reserved01;  /* two words of reserved data.  must be zero. */
    UWORD   da_Reserved02;
};


ExpansionControl

Source: libraries/configregs.h


struct ExpansionControl {  /* -Second 16 bytes of the expansion ROM */
    UBYTE   ec_Interrupt;   /* Optional interrupt control register */
    UBYTE   ec_Z3_HighBase; /* Zorro III   : Config address bits 24-31 */
    UBYTE   ec_BaseAddress; /* Zorro II/III: Config address bits 16-23 */
    UBYTE   ec_Shutup;  /* The system writes here to shut up a board */
    UBYTE   ec_Reserved14;
    UBYTE   ec_Reserved15;
    UBYTE   ec_Reserved16;
    UBYTE   ec_Reserved17;
    UBYTE   ec_Reserved18;
    UBYTE   ec_Reserved19;
    UBYTE   ec_Reserved1a;
    UBYTE   ec_Reserved1b;
    UBYTE   ec_Reserved1c;
    UBYTE   ec_Reserved1d;
    UBYTE   ec_Reserved1e;
    UBYTE   ec_Reserved1f;
};


ExpansionRom

Source: libraries/configregs.h


struct ExpansionRom {      /* -First 16 bytes of the expansion ROM */
    UBYTE   er_Type;    /* Board type, size and flags */
    UBYTE   er_Product; /* Product number, assigned by manufacturer */
    UBYTE   er_Flags;   /* Flags */
    UBYTE   er_Reserved03;  /* Must be zero ($ff inverted) */
    UWORD   er_Manufacturer; /* Unique ID */
    ULONG   er_SerialNumber; /* Available for use by manufacturer */
    UWORD   er_InitDiagVec; /* Offset to optional "DiagArea" structure */
    UBYTE   er_Reserved0c;
    UBYTE   er_Reserved0d;
    UBYTE   er_Reserved0e;
    UBYTE   er_Reserved0f;
};


ConfigDev

Source: libraries/configvars.h


struct ConfigDev {
    struct Node      cd_Node;
    UBYTE       cd_Flags;   /* (read/write) */
    UBYTE       cd_Pad;     /* reserved */
    struct ExpansionRom    cd_Rom;     /* copy of board's expansion ROM */
    APTR        cd_BoardAddr; /* where in memory the board was placed */
    ULONG       cd_BoardSize;   /* size of board in bytes */
    UWORD       cd_SlotAddr;    /* which slot number (PRIVATE) */
    UWORD       cd_SlotSize;    /* number of slots (PRIVATE) */
    APTR        cd_Driver;  /* pointer to node of driver */
    struct ConfigDev *    cd_NextCD;  /* linked list of drivers to config */
    ULONG       cd_Unused[4];   /* for whatever the driver wants */
};


CurrentBinding

Source: libraries/configvars.h


struct CurrentBinding {
    struct ConfigDev *    cb_ConfigDev;       /* first configdev in chain */
    STRPTR      cb_FileName;        /* file name of driver */
    STRPTR      cb_ProductString;   /* product # string */
    STRPTR *        cb_ToolTypes;       /* tooltypes from disk object */
};