struct ArrayDesc { HANDLE handle; // handle to global memory array int recsize; // record size of array long ubound; // upper bound of array }; typedef struct ArrayDesc * pDescrip; typedef double currency; // currency and double are the same size and // will be treated the same int FAR pascal LibMain(HANDLE, WORD, WORD, LPSTR); int FAR pascal WEP(int); int FAR pascal HugeDim(int, long); int GetFreeArray(struct ArrayDesc *); int FAR pascal GetHugeEl(int, long, BYTE FAR *); int FAR pascal SetHugeEl(int, long, BYTE FAR *); int FAR pascal HugeErase(int); int FAR pascal NumHugeArrays(void); long FAR pascal HugeUbound(int); int FAR pascal HugeInt(int, long); long FAR pascal HugeLong(int, long); float FAR pascal HugeSingle(int, long); double FAR pascal HugeDouble(int, long); double FAR pascal HugeCurrency(int, long); int FAR pascal HugeRedim(int, long); int HugeAlloc(pDescrip, int, long, BOOL); #define HA_OK 0 #define HA_OUTOFMEMORY (-1) #define HA_TOMANYARRAYS (-2) #define HA_BADELEMENTSIZE (-3) #define HA_SUBSCRIPT (-4) #define HA_BADARRAY (-5)