CD_OUT_SRC/XMSSUPP.H
2021-09-03 17:50:32 +02:00

83 lines
2.0 KiB
C++

// FICHERO DE CABECERA XMSSUPP.H
#ifndef XMSSUPP_H
#define XMSSUPP_H
// Definicion de Bloque Para el manejo de la Memoria XMS.
typedef struct _XMSBlock{
unsigned long Len;
unsigned SrcHandle;
unsigned long SrcDesp;
unsigned DstHandle;
unsigned long DstDesp;
}XMSBlock;
// Clase para el manejo de la Memoria XMS
/*
class XmsSupp //[ : public ]
{
public:
XMSBlock ThisXMSBlock;
unsigned lError;
char cError[80];
unsigned Present;
unsigned Reserved;
unsigned long XmsDir;
char HiVerXms;
char LoVerXms;
char HiVerCtr;
char LoVerCtr;
unsigned lHMA;
unsigned BigBlock;
unsigned TotXmsFree;
XmsSupp();
void InitXms();
void GetInfo();
void GetXmsDir();
void GetXmsVer();
void AllocXms(unsigned);
void GetXmsFree();
void SetConPntr(void far *);
void FreeXms();
void Move2Xms();
void Move2Con();
void GetXmsErr(char);
};
*/
typedef struct {
XMSBlock ThisXMSBlock;
unsigned lError;
char cError[80];
unsigned Present;
unsigned Reserved;
unsigned long XmsDir;
char HiVerXms;
char LoVerXms;
char HiVerCtr;
char LoVerCtr;
unsigned lHMA;
unsigned BigBlock;
unsigned TotXmsFree;
} XmsSupp;
void Xms_Init(XmsSupp *XmsBlock);
void InitXms(XmsSupp *XmsBlock);
void GetInfo(XmsSupp *XmsBlock);
void GetXmsDir(XmsSupp *XmsBlock);
void GetXmsVer(XmsSupp *XmsBlock);
void AllocXms(unsigned,XmsSupp *XmsBlock);
void GetXmsFree(XmsSupp *XmsBlock);
void SetConPntr(void far *,XmsSupp *XmsBlock);
void FreeXms(XmsSupp *XmsBlock);
void Move2Xms(XmsSupp *XmsBlock);
void Move2Con(XmsSupp *XmsBlock);
void GetXmsErr(char,XmsSupp *XmsBlock);
#endif