home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 24 / CDACTUAL24.iso / SHARE / prog / prograf.exe / dpmi.h < prev   
Encoding:
C/C++ Source or Header  |  1998-04-29  |  1.2 KB  |  38 lines

  1. //▓▓ CLASE CDPMI ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
  2. // 
  3. // * Llamadas al DPMI. Es imprescindible llamar al DPMI, cuando trabajamos
  4. //   en modo protegido y llamamos a funciones escritas en modo real.
  5. // * Añade las que consideres adecuadas ;)
  6. // 
  7. //  boolean  ReservaMemReal (int   Cantidad,word &Segmento,word &Selector);
  8. //  boolean  LiberaMemReal  (word &Selector);
  9. //  boolean  ReservaSelector(word &Selector);
  10. //  word     HazSel         (dword Base);
  11. //  boolean  LiberaSelector (word  Selector);
  12. //  dword    Fisica2Lineal  (dword Fisica, dword Limite);
  13. //
  14. // * Watcom C/C++ v.11
  15. //
  16. //▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ (c) Pedro Díez López ▓▓▓▓▓▓
  17.  
  18. #ifndef _INTERFACE_DPMI_
  19. #define _INTERFACE_DPMI_
  20. #include "base.h"
  21. #include "i86.h"
  22. class CDPMI
  23. {
  24. private:
  25.   SREGS sregs;
  26.   REGS  inregs, outregs;
  27.  
  28. public:         
  29.   boolean  ReservaMemReal  (int   Cantidad, word &Segmento, word &Selector);
  30.   boolean  LiberaMemReal   (word &Selector);
  31.   word     HazSel          (dword Base);
  32.   boolean  LiberaSelector  (word  Selector);
  33.   dword    Fisica2Lineal   (dword Fisica, dword Limite);
  34. private:
  35.   void     RegsCero        ();
  36.   void     LimpiaMemoria   (void *Dir,dword Cantidad);
  37. };
  38. #endif