home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mod201j.zip / modula2.exe / os2api / dosmisc.def < prev    next >
Text File  |  1994-05-03  |  5KB  |  129 lines

  1. DEFINITION MODULE DOSMISC;
  2.  
  3. (************************************************************************
  4.   OS/2 2.0 interface for miscellaneous functions.
  5.  
  6.   Copyright (c) 1992 by Juergen Neuhoff
  7. *************************************************************************)
  8.  
  9. (*$XL+       Modula-2 language extensions: '_' allowed for symbol names *)
  10. (*$CDECL+    C-style procedures                                         *)
  11.  
  12. IMPORT SYSTEM;
  13. FROM   OS2DEF     IMPORT APIRET, PCHAR, PSZ, HFILE;
  14.  
  15. CONST (* definitions for DosSearchPath() control word *)
  16.   DSP_IMPLIEDCUR        = 1; (* current dir will be searched first *)
  17.   DSP_PATHREF           = 2; (* from env.variable *)
  18.   DSP_IGNORENETERR      = 4; (* ignore net errs & continue search *)
  19.  
  20. CONST (* indices for DosQuerySysInfo() *)
  21.   QSV_MAX_PATH_LENGTH   = 1;
  22.   Q_MAX_PATH_LENGTH     = QSV_MAX_PATH_LENGTH;
  23.   QSV_MAX_TEXT_SESSIONS = 2;
  24.   QSV_MAX_PM_SESSIONS   = 3;
  25.   QSV_MAX_VDM_SESSIONS  = 4;
  26.   QSV_BOOT_DRIVE        = 5;       (* 1=A, 2=B, etc. *)
  27.   QSV_DYN_PRI_VARIATION = 6;       (* 0=Absolute, 1=Dynamic *)
  28.   QSV_MAX_WAIT          = 7;       (* seconds *)
  29.   QSV_MIN_SLICE         = 8;       (* milli seconds *)
  30.   QSV_MAX_SLICE         = 9;       (* milli seconds *)
  31.   QSV_PAGE_SIZE         = 10;
  32.   QSV_VERSION_MAJOR     = 11;
  33.   QSV_VERSION_MINOR     = 12;
  34.   QSV_VERSION_REVISION  = 13;      (* Revision letter *)
  35.   QSV_MS_COUNT          = 14;      (* Free running millisecond counter *)
  36.   QSV_TIME_LOW          = 15;      (* Low dword of time in seconds *)
  37.   QSV_TIME_HIGH         = 16;      (* High dword of time in seconds *)
  38.   QSV_TOTPHYSMEM        = 17;      (* Physical memory on system *)
  39.   QSV_TOTRESMEM         = 18;      (* Resident memory on system *)
  40.   QSV_TOTAVAILMEM       = 19;      (* Available memory for all processes *)
  41.   QSV_MAXPRMEM          = 20;      (* Avail private mem for calling proc *)
  42.   QSV_MAXSHMEM          = 21;      (* Avail shared mem for calling proc *)
  43.   QSV_TIMER_INTERVAL    = 22;      (* Timer interval in tenths of ms *)
  44.   QSV_MAX_COMP_LENGTH   = 23;      (* max len of one component in a name *)
  45.   QSV_MAX               = QSV_MAX_COMP_LENGTH;
  46.  
  47. CONST (* definitions for DosError() - combine with OR *)
  48.   FERR_DISABLEHARDERR   = 00000000H;     (* disable hard error popups *)
  49.   FERR_ENABLEHARDERR    = 00000001H;     (* enable hard error popups *)
  50.   FERR_ENABLEEXCEPTION  = 00000000H;     (* enable exception popups *)
  51.   FERR_DISABLEEXCEPTION = 00000002H;     (* disable exception popups *)
  52.  
  53. CONST (* definitions for DosQueryRASInfo() Index *)
  54.   SIS_MMIOADDR          = 0;
  55.   SIS_MEC_TABLE         = 1;
  56.   SIS_SYS_LOG           = 2;
  57.  
  58.  
  59. PROCEDURE DosError
  60. ( Flags             : LONGCARD
  61. )                   : APIRET;
  62.  
  63. PROCEDURE DosGetMessage
  64. ( VAR Table         : ARRAY OF PCHAR;
  65.   TableCount        : LONGCARD;
  66.   VAR DataArea      : ARRAY OF CHAR;
  67.   DataLength        : LONGCARD;
  68.   MsgNumber         : LONGCARD;
  69.   FileName          : ARRAY OF CHAR;
  70.   VAR MsgLength     : LONGCARD
  71. )                   : APIRET;
  72.  
  73. PROCEDURE DosErrClass
  74. ( Code              : LONGCARD;
  75.   VAR Class         : LONGCARD;
  76.   VAR Action        : LONGCARD;
  77.   VAR Locus         : LONGCARD
  78. )                   : APIRET;
  79.  
  80. PROCEDURE DosInsertMessage
  81. ( VAR Table         : ARRAY OF PCHAR;
  82.   TableCount        : LONGCARD;
  83.   MsgInput          : ARRAY OF CHAR;
  84.   MsgInputLength    : LONGCARD;
  85.   VAR DataArea      : ARRAY OF CHAR;
  86.   DataLength        : LONGCARD;
  87.   VAR MsgLength     : LONGCARD
  88. )                   : APIRET;
  89.  
  90. PROCEDURE DosPutMessage
  91. ( FileHandle        : HFILE;
  92.   MessageLength     : LONGCARD;
  93.   MessageBuffer     : ARRAY OF CHAR
  94. )                   : APIRET;
  95.  
  96. PROCEDURE DosQuerySysInfo
  97. ( StartIndex        : LONGCARD;
  98.   LastIndex         : LONGCARD;
  99.   VAR DataBuf       : ARRAY OF SYSTEM.LONGWORD;
  100.   DataBufLen        : LONGCARD
  101. )                   : APIRET;
  102.  
  103. PROCEDURE DosScanEnv
  104. ( EnvVarName        : ARRAY OF CHAR;
  105.   VAR ResultPointer : PSZ
  106. )                   : APIRET;
  107.  
  108. PROCEDURE DosSearchPath
  109. ( Control           : LONGCARD;
  110.   PathRef           : ARRAY OF CHAR;
  111.   FileName          : ARRAY OF CHAR;
  112.   VAR ResultBuffer  : ARRAY OF CHAR;
  113.   ResultBufferLen   : LONGCARD
  114. )                   : APIRET;
  115.  
  116. PROCEDURE DosQueryMessageCP
  117. ( VAR BufferArea    : ARRAY OF SYSTEM.WORD;
  118.   BufferLength      : LONGCARD;
  119.   FileName          : ARRAY OF CHAR;
  120.   VAR DataLength    : LONGCARD
  121. )                   : APIRET;
  122.  
  123. PROCEDURE DosQueryRASInfo
  124. ( Index             : LONGCARD;
  125.   Addr              : SYSTEM.ADDRESS
  126. )                   : APIRET;
  127.  
  128. END DOSMISC.
  129.