home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 032.lha / include / exec / libraries.g < prev    next >
Text File  |  1987-05-16  |  1KB  |  46 lines

  1. long
  2.     LIB_VECTSIZE = 6,
  3.     LIB_RESERVED = 4,
  4.     LIB_BASE     = -LIB_VECTSIZE,
  5.     LIB_USERDEF  = LIB_BASE - LIB_RESERVED * LIB_VECTSIZE,
  6.     LIB_NONSTD     = LIB_USERDEF,
  7.  
  8.     LIB_OPEN     = -6,
  9.     LIB_CLOSE     = -12,
  10.     LIB_EXPUNGE  = -18,
  11.     LIB_EXTFUNC  = -24;
  12.  
  13. type
  14.     Node_t = unknown 14,
  15.  
  16.     Library_t = struct {
  17.     Node_t lib_Node;
  18.     ushort lib_Flags;
  19.     ushort lib_pad;
  20.     uint lib_NegSize;
  21.     uint lib_PosSize;
  22.     uint lib_Version;
  23.     uint lib_Revision;
  24.     *char lib_IdString;
  25.     ulong lib_Sum;
  26.     uint lib_OpenCnt;
  27.     };
  28.  
  29. ushort
  30.     LIBF_SUMMING = 1 << 0,
  31.     LIBF_CHANGED = 1 << 1,
  32.     LIBF_SUMUSED = 1 << 2,
  33.     LIBF_DELEXP  = 1 << 3;
  34.  
  35. extern
  36.     AddLibrary(*Library_t lib)void,
  37.     CloseLibrary(*Library_t lib)void,
  38.     MakeFunctions(*byte target; **byte functionArray; *byte funcDispBase)ulong,
  39.     MakeLibrary(**byte vectors; *byte structure, init; ulong dataSize;
  40.         *SegList_t segList)*Library_t,
  41.     OldOpenLibrary(*char name)*Library_t,
  42.     OpenLibrary(*char name; ulong version)*Library_t,
  43.     RemLibrary(*Library_t lib)uint,
  44.     SetFunction(*Library_t lib; ulong funcOffset; *byte funcEntry)*byte,
  45.     SumLibrary(*Library_t lib)void;
  46.