[7] | 1 | UNIT BseDos;
|
---|
| 2 |
|
---|
| 3 | {****************************** Module Header *****************************
|
---|
| 4 | * *
|
---|
| 5 | * Module Name: BSEDOS.PAS *
|
---|
| 6 | * *
|
---|
| 7 | * OS/2 Base include file. *
|
---|
| 8 | * *
|
---|
| 9 | ***************************************************************************}
|
---|
| 10 |
|
---|
| 11 | INTERFACE
|
---|
| 12 |
|
---|
| 13 | USES Os2Def,BseTib,BseExcpt;
|
---|
| 14 |
|
---|
| 15 | { Access protection }
|
---|
| 16 | CONST
|
---|
| 17 | PAG_READ =$00000001; { read access }
|
---|
| 18 | PAG_WRITE =$00000002; { write access }
|
---|
| 19 | PAG_EXECUTE =$00000004; { execute access }
|
---|
| 20 | PAG_GUARD =$00000008; { guard protection }
|
---|
| 21 | PAG_DEFAULT =$00000400; { default (initial) access }
|
---|
| 22 |
|
---|
| 23 | { Commit}
|
---|
| 24 | PAG_COMMIT =$00000010; { commit storage }
|
---|
| 25 | PAG_DECOMMIT =$00000020; { decommit storage }
|
---|
| 26 |
|
---|
| 27 | { Allocation attributes }
|
---|
| 28 | OBJ_TILE =$00000040; { tile object }
|
---|
| 29 | OBJ_PROTECTED =$00000080; { protect object
|
---|
| 30 | NOTE: This flag is NOT available at
|
---|
| 31 | the api level }
|
---|
| 32 | OBJ_GETTABLE =$00000100; { gettable by other processes }
|
---|
| 33 | OBJ_GIVEABLE =$00000200; { giveable to other processes }
|
---|
| 34 |
|
---|
| 35 |
|
---|
| 36 | fPERM =PAG_EXECUTE OR PAG_READ OR PAG_WRITE;
|
---|
| 37 | fSHARE =OBJ_GETTABLE OR OBJ_GIVEABLE;
|
---|
| 38 |
|
---|
| 39 | { DosAllocMem flags }
|
---|
| 40 | fALLOC =OBJ_TILE OR PAG_COMMIT OR fPERM;
|
---|
| 41 |
|
---|
| 42 |
|
---|
| 43 | { DosAllocSharedMem flags }
|
---|
| 44 | fALLOCSHR =OBJ_TILE OR PAG_COMMIT OR fSHARE OR fPERM;
|
---|
| 45 |
|
---|
| 46 | { DosGetNamedSharedMem flags }
|
---|
| 47 | fGETNMSHR =fPERM;
|
---|
| 48 |
|
---|
| 49 | { DosGetSharedMem flags }
|
---|
| 50 | fGETSHR =fPERM;
|
---|
| 51 |
|
---|
| 52 | { DosGiveSharedMem flags }
|
---|
| 53 | fGIVESHR =fPERM;
|
---|
| 54 |
|
---|
| 55 | { DosSetMem flags }
|
---|
| 56 | fSET =PAG_COMMIT + PAG_DECOMMIT + PAG_DEFAULT + fPERM;
|
---|
| 57 |
|
---|
| 58 | { Dos32SubSet flags }
|
---|
| 59 | DOSSUB_INIT =$01; { initialize memory object for
|
---|
| 60 | suballocation }
|
---|
| 61 | DOSSUB_GROW =$02; { increase size of memory pool
|
---|
| 62 | for suballocation }
|
---|
| 63 | DOSSUB_SPARSE_OBJ =$04; { indicator for DosSub to
|
---|
| 64 | manage the commitment of
|
---|
| 65 | pages spanned by the memory pool }
|
---|
| 66 | DOSSUB_SERIALIZE =$08; { indicates that access to the
|
---|
| 67 | memory pool is to be
|
---|
| 68 | serialized by DosSub }
|
---|
| 69 |
|
---|
| 70 |
|
---|
| 71 | { Allocation type (returned from DosQueryMem) }
|
---|
| 72 | PAG_SHARED =$00002000; { shared object }
|
---|
| 73 | PAG_FREE =$00004000; { pages are free }
|
---|
| 74 | PAG_BASE =$00010000; { first page in object }
|
---|
| 75 |
|
---|
| 76 |
|
---|
| 77 | { DosExit codes }
|
---|
| 78 | CONST
|
---|
| 79 | EXIT_THREAD =0;
|
---|
| 80 | EXIT_PROCESS =1;
|
---|
| 81 |
|
---|
| 82 | TYPE
|
---|
| 83 | PFNTHREAD=POINTER;
|
---|
| 84 |
|
---|
| 85 | { Action code values }
|
---|
| 86 | CONST
|
---|
| 87 | DCWA_PROCESS =0;
|
---|
| 88 | DCWA_PROCESSTREE =1;
|
---|
| 89 |
|
---|
| 90 | { Wait option values }
|
---|
| 91 |
|
---|
| 92 | DCWW_WAIT =0;
|
---|
| 93 | DCWW_NOWAIT =1;
|
---|
| 94 |
|
---|
| 95 | { Thread Flags for DosCreateThread options 59468 }
|
---|
| 96 |
|
---|
| 97 | CREATE_READY =0; { defect 65437 }
|
---|
| 98 | CREATE_SUSPENDED =1;
|
---|
| 99 | STACK_SPARSE =0;
|
---|
| 100 | STACK_COMMITTED =2;
|
---|
| 101 |
|
---|
| 102 | TYPE
|
---|
| 103 | PRESULTCODES=^RESULTCODES;
|
---|
| 104 | RESULTCODES=RECORD
|
---|
| 105 | codeTerminate:ULONG;
|
---|
| 106 | codeResult:ULONG;
|
---|
| 107 | END;
|
---|
| 108 |
|
---|
| 109 |
|
---|
| 110 | { User's Debug Buffer structure }
|
---|
| 111 |
|
---|
| 112 | TYPE
|
---|
| 113 | PDbgBuf=^TDbgBuf;
|
---|
| 114 | TDbgBuf=RECORD
|
---|
| 115 | Pid:PID; { Debuggee Process id }
|
---|
| 116 | Tid:TID; { Debuggee Thread id }
|
---|
| 117 | Cmd:LONGINT; { Command or Notification }
|
---|
| 118 | Value:LONGINT; { Generic Data Value }
|
---|
| 119 | Addr:LONGWORD; { Debuggee Address }
|
---|
| 120 | Buffer:LONGWORD; { Debugger Buffer Address }
|
---|
| 121 | Len:LONGWORD; { Length of Range }
|
---|
| 122 | index:LONGWORD; { Generic Identifier Index }
|
---|
| 123 | MTE:LONGWORD; { Module Table Entry Handle }
|
---|
| 124 | EAX:LONGWORD; { Register Set }
|
---|
| 125 | ECX:LONGWORD;
|
---|
| 126 | EDX:LONGWORD;
|
---|
| 127 | EBX:LONGWORD;
|
---|
| 128 | ESP:LONGWORD;
|
---|
| 129 | EBP:LONGWORD;
|
---|
| 130 | ESI:LONGWORD;
|
---|
| 131 | EDI:LONGWORD;
|
---|
| 132 | EFlags:LONGWORD;
|
---|
| 133 | EIP:LONGWORD;
|
---|
| 134 | CSLim:LONGWORD;
|
---|
| 135 | CSBase:LONGWORD;
|
---|
| 136 | CSAcc:BYTE;
|
---|
| 137 | CSAtr:BYTE;
|
---|
| 138 | CS:WORD;
|
---|
| 139 | DSLim:LONGWORD;
|
---|
| 140 | DSBase:LONGWORD;
|
---|
| 141 | DSAcc:BYTE;
|
---|
| 142 | DSAtr:BYTE;
|
---|
| 143 | DS:WORD;
|
---|
| 144 | ESLim:LONGWORD;
|
---|
| 145 | ESBase:LONGWORD;
|
---|
| 146 | ESAcc:BYTE;
|
---|
| 147 | ESAtr:BYTE;
|
---|
| 148 | ES:WORD;
|
---|
| 149 | FSLim:LONGWORD;
|
---|
| 150 | FSBase:LONGWORD;
|
---|
| 151 | FSAcc:BYTE;
|
---|
| 152 | FSAtr:BYTE;
|
---|
| 153 | FS:WORD;
|
---|
| 154 | GSLim:LONGWORD;
|
---|
| 155 | GSBase:LONGWORD;
|
---|
| 156 | GSAcc:BYTE;
|
---|
| 157 | GSAtr:BYTE;
|
---|
| 158 | GS:WORD;
|
---|
| 159 | SSLim:LONGWORD;
|
---|
| 160 | SSBase:LONGWORD;
|
---|
| 161 | SSAcc:BYTE;
|
---|
| 162 | SSAtr:BYTE;
|
---|
| 163 | SS:WORD;
|
---|
| 164 | END;
|
---|
| 165 |
|
---|
| 166 | { DosDebug Command Numbers
|
---|
| 167 | *
|
---|
| 168 | * These numbers are placed in the Cmd field of the uDB on
|
---|
| 169 | * entry to DosDebug.
|
---|
| 170 | *
|
---|
| 171 | * These numbers identify which command DosDebug is requested
|
---|
| 172 | * to perform.
|
---|
| 173 | *
|
---|
| 174 | }
|
---|
| 175 |
|
---|
| 176 | CONST
|
---|
| 177 | DBG_C_Null =0; { Null }
|
---|
| 178 | DBG_C_ReadMem =1; { Read Word }
|
---|
| 179 | DBG_C_ReadMem_I =1; { Read Word }
|
---|
| 180 | DBG_C_ReadMem_D =2; { Read Word (same as 1) }
|
---|
| 181 | DBG_C_ReadReg =3; { Read Register Set }
|
---|
| 182 | DBG_C_WriteMem =4; { Write Word }
|
---|
| 183 | DBG_C_WriteMem_I =4; { Write Word }
|
---|
| 184 | DBG_C_WriteMem_D =5; { Write Word (same as 4) }
|
---|
| 185 | DBG_C_WriteReg =6; { Write Register Set }
|
---|
| 186 | DBG_C_Go =7; { Go }
|
---|
| 187 | DBG_C_Term =8; { Terminate }
|
---|
| 188 | DBG_C_SStep =9; { Single Step }
|
---|
| 189 | DBG_C_Stop =10; { Stop }
|
---|
| 190 | DBG_C_Freeze =11; { Freeze Thread }
|
---|
| 191 | DBG_C_Resume =12; { Resume Thread }
|
---|
| 192 | DBG_C_NumToAddr =13; { Object Number to Address }
|
---|
| 193 | DBG_C_ReadCoRegs =14; { Read Coprocessor Registers }
|
---|
| 194 | DBG_C_WriteCoRegs =15; { Write Coprocessor Registers }
|
---|
| 195 | { 16 is reserved }
|
---|
| 196 | DBG_C_ThrdStat =17; { Get Thread Status }
|
---|
| 197 | DBG_C_MapROAlias =18; { Map read-only alias }
|
---|
| 198 | DBG_C_MapRWAlias =19; { Map read-write alias }
|
---|
| 199 | DBG_C_UnMapAlias =20; { Unmap Alias }
|
---|
| 200 | DBG_C_Connect =21; { Connect to Debuggee }
|
---|
| 201 | DBG_C_ReadMemBuf =22; { Read Memory Buffer }
|
---|
| 202 | DBG_C_WriteMemBuf =23; { Write Memory Buffer }
|
---|
| 203 | DBG_C_SetWatch =24; { Set Watchpoint }
|
---|
| 204 | DBG_C_ClearWatch =25; { Clear Watchpoint }
|
---|
| 205 | DBG_C_RangeStep =26; { Range Step }
|
---|
| 206 | DBG_C_Continue =27; { Continue after an Exception }
|
---|
| 207 | DBG_C_AddrToObject =28; { Address to Object }
|
---|
| 208 | DBG_C_XchgOpcode =29; { Exchange opcode and go }
|
---|
| 209 | DBG_C_LinToSel =30; { 32 to 16 conversion A001}
|
---|
| 210 | DBG_C_SelToLin =31; { 16 to 32 conversion A001}
|
---|
| 211 |
|
---|
| 212 | {------ Constants -------------------}
|
---|
| 213 | DBG_L_386 =1;
|
---|
| 214 | DBG_O_OBJMTE =$10000000;
|
---|
| 215 |
|
---|
| 216 | {------ Notifications ---------------}
|
---|
| 217 | DBG_N_SUCCESS = 0;
|
---|
| 218 | DBG_N_ERROR =-1;
|
---|
| 219 | DBG_N_ProcTerm =-6;
|
---|
| 220 | DBG_N_Exception =-7;
|
---|
| 221 | DBG_N_ModuleLoad =-8;
|
---|
| 222 | DBG_N_CoError =-9;
|
---|
| 223 | DBG_N_ThreadTerm =-10;
|
---|
| 224 | DBG_N_AsyncStop =-11;
|
---|
| 225 | DBG_N_NewProc =-12;
|
---|
| 226 | DBG_N_AliasFree =-13;
|
---|
| 227 | DBG_N_Watchpoint =-14;
|
---|
| 228 | DBG_N_ThreadCreate =-15;
|
---|
| 229 | DBG_N_ModuleFree =-16;
|
---|
| 230 | DBG_N_RangeStep =-17;
|
---|
| 231 |
|
---|
| 232 | DBG_X_PRE_FIRST_CHANCE = 0;
|
---|
| 233 | DBG_X_FIRST_CHANCE = 1;
|
---|
| 234 | DBG_X_LAST_CHANCE = 2;
|
---|
| 235 | DBG_X_STACK_INVALID = 3;
|
---|
| 236 |
|
---|
| 237 | DBG_W_Local =$0000001;
|
---|
| 238 | DBG_W_Global =$0000002;
|
---|
| 239 | DBG_W_Execute =$00010000;
|
---|
| 240 | DBG_W_Write =$00020000;
|
---|
| 241 | DBG_W_ReadWrite =$00030000;
|
---|
| 242 |
|
---|
| 243 | { codeTerminate values (also passed to ExitList routines) }
|
---|
| 244 |
|
---|
| 245 | CONST
|
---|
| 246 | TC_EXIT =0;
|
---|
| 247 | TC_HARDERROR =1;
|
---|
| 248 | TC_TRAP =2;
|
---|
| 249 | TC_KILLPROCESS =3;
|
---|
| 250 | TC_EXCEPTION =4;
|
---|
| 251 |
|
---|
| 252 | TYPE
|
---|
| 253 | PFNEXITLIST=POINTER;
|
---|
| 254 |
|
---|
| 255 |
|
---|
| 256 | { DosExitList functions }
|
---|
| 257 |
|
---|
| 258 | CONST
|
---|
| 259 | EXLST_ADD =1;
|
---|
| 260 | EXLST_REMOVE =2;
|
---|
| 261 | EXLST_EXIT =3;
|
---|
| 262 |
|
---|
| 263 |
|
---|
| 264 | { DosExecPgm functions }
|
---|
| 265 | CONST
|
---|
| 266 | EXEC_SYNC =0;
|
---|
| 267 | EXEC_ASYNC =1;
|
---|
| 268 | EXEC_ASYNCRESULT =2;
|
---|
| 269 | EXEC_TRACE =3;
|
---|
| 270 | EXEC_BACKGROUND =4;
|
---|
| 271 | EXEC_LOAD =5;
|
---|
| 272 | EXEC_ASYNCRESULTDB =6;
|
---|
| 273 |
|
---|
| 274 |
|
---|
| 275 |
|
---|
| 276 | { Priority scopes }
|
---|
| 277 | CONST
|
---|
| 278 | PRTYS_PROCESS =0;
|
---|
| 279 | PRTYS_PROCESSTREE =1;
|
---|
| 280 | PRTYS_THREAD =2;
|
---|
| 281 |
|
---|
| 282 | { Priority classes }
|
---|
| 283 | CONST
|
---|
| 284 | PRTYC_NOCHANGE =0;
|
---|
| 285 | PRTYC_IDLETIME =1;
|
---|
| 286 | PRTYC_REGULAR =2;
|
---|
| 287 | PRTYC_TIMECRITICAL =3;
|
---|
| 288 | PRTYC_FOREGROUNDSERVER =4;
|
---|
| 289 |
|
---|
| 290 | { Priority deltas }
|
---|
| 291 |
|
---|
| 292 | PRTYD_MINIMUM =-31;
|
---|
| 293 | PRTYD_MAXIMUM = 31;
|
---|
| 294 |
|
---|
| 295 |
|
---|
| 296 |
|
---|
| 297 | CONST
|
---|
| 298 | DKP_PROCESSTREE =0;
|
---|
| 299 | DKP_PROCESS =1;
|
---|
| 300 |
|
---|
| 301 | {************************************************************************
|
---|
| 302 | * CCHMAXPATH is the maximum fully qualified path name length including *
|
---|
| 303 | * the drive letter, colon, backslashes and terminating NULL. *
|
---|
| 304 | *************************************************************************}
|
---|
| 305 | CCHMAXPATH =260;
|
---|
| 306 |
|
---|
| 307 | {************************************************************************
|
---|
| 308 | * CCHMAXPATHCOMP is the maximum individual path component name length *
|
---|
| 309 | * including a terminating NULL. *
|
---|
| 310 | *************************************************************************}
|
---|
| 311 | CCHMAXPATHCOMP =256;
|
---|
| 312 |
|
---|
| 313 | { DosSetFilePtr() file position codes }
|
---|
| 314 | CONST
|
---|
| 315 | FILE_BEGIN =$0000; { Move relative to beginning of file }
|
---|
| 316 | FILE_CURRENT =$0001; { Move relative to current fptr position }
|
---|
| 317 | FILE_END =$0002; { Move relative to end of file }
|
---|
| 318 |
|
---|
| 319 | { DosFindFirst/Next Directory handle types }
|
---|
| 320 | HDIR_SYSTEM = 1; { Use system handle (1) }
|
---|
| 321 | HDIR_CREATE = -1; { Allocate a new, unused handle }
|
---|
| 322 |
|
---|
| 323 | { DosCopy control bits; may be or'ed together }
|
---|
| 324 | DCPY_EXISTING =$0001; { Copy even if target exists }
|
---|
| 325 | DCPY_APPEND =$0002; { Append to existing file, do not replace }
|
---|
| 326 | DCPY_FAILEAS =$0004; { Fail if EAs not supported on target}
|
---|
| 327 |
|
---|
| 328 | { DosOpen/DosQFHandState/DosQueryFileInfo et al file attributes; also }
|
---|
| 329 | { known as Dos File Mode bits... }
|
---|
| 330 | FILE_NORMAL =$0000;
|
---|
| 331 | FILE_READONLY =$0001;
|
---|
| 332 | FILE_HIDDEN =$0002;
|
---|
| 333 | FILE_SYSTEM =$0004;
|
---|
| 334 | FILE_DIRECTORY =$0010;
|
---|
| 335 | FILE_ARCHIVED =$0020;
|
---|
| 336 |
|
---|
| 337 | FILE_IGNORE =$10000; { ignore file attribute in }
|
---|
| 338 | { DosSetPath/File Info if }
|
---|
| 339 | { this bit is set}
|
---|
| 340 |
|
---|
| 341 | MUST_HAVE_READONLY =(FILE_READONLY SHL 8) OR FILE_READONLY;
|
---|
| 342 | MUST_HAVE_HIDDEN =(FILE_HIDDEN SHL 8) OR FILE_HIDDEN;
|
---|
| 343 | MUST_HAVE_SYSTEM =(FILE_SYSTEM SHL 8) OR FILE_SYSTEM;
|
---|
| 344 | MUST_HAVE_DIRECTORY =(FILE_DIRECTORY SHL 8) OR FILE_DIRECTORY;
|
---|
| 345 | MUST_HAVE_ARCHIVED =(FILE_ARCHIVED SHL 8) OR FILE_ARCHIVED;
|
---|
| 346 |
|
---|
| 347 | { DosOpen() actions }
|
---|
| 348 | FILE_EXISTED =$0001;
|
---|
| 349 | FILE_CREATED =$0002;
|
---|
| 350 | FILE_TRUNCATED =$0003;
|
---|
| 351 |
|
---|
| 352 | { DosOpen() open flags }
|
---|
| 353 | FILE_OPEN =$0001;
|
---|
| 354 | FILE_TRUNCATE =$0002;
|
---|
| 355 | FILE_CREATE =$0010;
|
---|
| 356 |
|
---|
| 357 | { this nibble applies if file already exists xxxx }
|
---|
| 358 | OPEN_ACTION_FAIL_IF_EXISTS =$0000; { ---- ---- ---- 0000 }
|
---|
| 359 | OPEN_ACTION_OPEN_IF_EXISTS =$0001; { ---- ---- ---- 0001 }
|
---|
| 360 | OPEN_ACTION_REPLACE_IF_EXISTS =$0002; { ---- ---- ---- 0010 }
|
---|
| 361 |
|
---|
| 362 | { this nibble applies if file does not exist xxxx }
|
---|
| 363 | OPEN_ACTION_FAIL_IF_NEW =$0000; { ---- ---- 0000 ---- }
|
---|
| 364 | OPEN_ACTION_CREATE_IF_NEW =$0010; { ---- ---- 0001 ---- }
|
---|
| 365 |
|
---|
| 366 | { DosOpen/DosSetFHandState flags }
|
---|
| 367 | OPEN_ACCESS_READONLY =$0000; { ---- ---- ---- -000 }
|
---|
| 368 | OPEN_ACCESS_WRITEONLY =$0001; { ---- ---- ---- -001 }
|
---|
| 369 | OPEN_ACCESS_READWRITE =$0002; { ---- ---- ---- -010 }
|
---|
| 370 | OPEN_SHARE_DENYREADWRITE =$0010; { ---- ---- -001 ---- }
|
---|
| 371 | OPEN_SHARE_DENYWRITE =$0020; { ---- ---- -010 ---- }
|
---|
| 372 | OPEN_SHARE_DENYREAD =$0030; { ---- ---- -011 ---- }
|
---|
| 373 | OPEN_SHARE_DENYNONE =$0040; { ---- ---- -100 ---- }
|
---|
| 374 | OPEN_FLAGS_NOINHERIT =$0080; { ---- ---- 1--- ---- }
|
---|
| 375 | OPEN_FLAGS_NO_LOCALITY =$0000; { ---- -000 ---- ---- }
|
---|
| 376 | OPEN_FLAGS_SEQUENTIAL =$0100; { ---- -001 ---- ---- }
|
---|
| 377 | OPEN_FLAGS_RANDOM =$0200; { ---- -010 ---- ---- }
|
---|
| 378 | OPEN_FLAGS_RANDOMSEQUENTIAL =$0300; { ---- -011 ---- ---- }
|
---|
| 379 | OPEN_FLAGS_NO_CACHE =$1000; { ---1 ---- ---- ---- }
|
---|
| 380 | OPEN_FLAGS_FAIL_ON_ERROR =$2000; { --1- ---- ---- ---- }
|
---|
| 381 | OPEN_FLAGS_WRITE_THROUGH =$4000; { -1-- ---- ---- ---- }
|
---|
| 382 | OPEN_FLAGS_DASD =$8000; { 1--- ---- ---- ---- }
|
---|
| 383 | OPEN_FLAGS_NONSPOOLED =$00040000;
|
---|
| 384 | OPEN_FLAGS_PROTECTED_HANDLE =$40000000;
|
---|
| 385 |
|
---|
| 386 |
|
---|
| 387 | { DosSearchPath() constants }
|
---|
| 388 | SEARCH_PATH =$0000;
|
---|
| 389 | SEARCH_CUR_DIRECTORY =$0001;
|
---|
| 390 | SEARCH_ENVIRONMENT =$0002;
|
---|
| 391 | SEARCH_IGNORENETERRS =$0004;
|
---|
| 392 |
|
---|
| 393 |
|
---|
| 394 | {***********************************************************
|
---|
| 395 | EA Info Levels & Find First/Next
|
---|
| 396 | =========================================
|
---|
| 397 | API's: DosFindFirst, DosQueryFileInfo, DosQueryPathInfo, DosSetFileInfo,
|
---|
| 398 | DosSetPathInfo
|
---|
| 399 | ***********************************************************}
|
---|
| 400 |
|
---|
| 401 | { File info levels&gml All listed API's }
|
---|
| 402 | FIL_STANDARD =1; { Info level 1, standard file info }
|
---|
| 403 | FIL_QUERYEASIZE =2; { Level 2, return Full EA size }
|
---|
| 404 | FIL_QUERYEASFROMLIST =3; { Level 3, return requested EA's }
|
---|
| 405 |
|
---|
| 406 | { File info levels: Dos...PathInfo only }
|
---|
| 407 | FIL_QUERYFULLNAME =5; { Level 5, return fully qualified
|
---|
| 408 | name of file }
|
---|
| 409 |
|
---|
| 410 |
|
---|
| 411 | { DosFsAttach() }
|
---|
| 412 | { Attact or detach }
|
---|
| 413 | FS_ATTACH =0; { Attach file server }
|
---|
| 414 | FS_DETACH =1; { Detach file server }
|
---|
| 415 | FS_SPOOLATTACH =2; { Register a spooler device }
|
---|
| 416 | FS_SPOOLDETACH =3; { De-register a spooler device }
|
---|
| 417 |
|
---|
| 418 |
|
---|
| 419 | { DosFsCtl() }
|
---|
| 420 | { Routing type }
|
---|
| 421 | FSCTL_HANDLE =1; { File Handle directs req routing }
|
---|
| 422 | FSCTL_PATHNAME =2; { Path Name directs req routing }
|
---|
| 423 | FSCTL_FSDNAME =3; { FSD Name directs req routing }
|
---|
| 424 |
|
---|
| 425 | { defined FSCTL functions }
|
---|
| 426 | FSCTL_ERROR_INFO =1; { return error info from FSD }
|
---|
| 427 | FSCTL_MAX_EASIZE =2; { Max ea size for the FSD }
|
---|
| 428 |
|
---|
| 429 | TYPE
|
---|
| 430 | PEASIZEBUF=^EASIZEBUF;
|
---|
| 431 | EASIZEBUF=RECORD { struct for FSCTL fn 2 - max ea size }
|
---|
| 432 | cbMaxEASize:WORD; { max. size of one EA }
|
---|
| 433 | cbMaxEAListSize:ULONG; { max size of the full EA List }
|
---|
| 434 | END;
|
---|
| 435 |
|
---|
| 436 | { DosQueryFSAttach() }
|
---|
| 437 | { Information level types (defines method of query) }
|
---|
| 438 | CONST
|
---|
| 439 | FSAIL_QUERYNAME =1; { Return data for a Drive or Device }
|
---|
| 440 | FSAIL_DEVNUMBER =2; { Return data for Ordinal Device # }
|
---|
| 441 | FSAIL_DRVNUMBER =3; { Return data for Ordinal Drive # }
|
---|
| 442 |
|
---|
| 443 | { Item types (from data structure item "iType") }
|
---|
| 444 | FSAT_CHARDEV =1; { Resident character device }
|
---|
| 445 | FSAT_PSEUDODEV =2; { Pusedu-character device }
|
---|
| 446 | FSAT_LOCALDRV =3; { Local drive }
|
---|
| 447 | FSAT_REMOTEDRV =4; { Remote drive attached to FSD }
|
---|
| 448 |
|
---|
| 449 | TYPE
|
---|
| 450 | PFSQBUFFER=^FSQBUFFER;
|
---|
| 451 | FSQBUFFER=RECORD { fsqbuf Data structure for QFSAttach}
|
---|
| 452 | iType:WORD; { Item type }
|
---|
| 453 | cbName:WORD; { Length of item name, sans NULL }
|
---|
| 454 | szName:BYTE; { ASCIIZ item name }
|
---|
| 455 | cbFSDName:WORD; { Length of FSD name, sans NULL }
|
---|
| 456 | szFSDName:BYTE; { ASCIIZ FSD name }
|
---|
| 457 | cbFSAData:USHORT; { Length of FSD Attach data returned }
|
---|
| 458 | rgFSAData:BYTE; { FSD Attach data from FSD }
|
---|
| 459 | END;
|
---|
| 460 |
|
---|
| 461 | PFSQBUFFER2=^FSQBUFFER2;
|
---|
| 462 | FSQBUFFER2=RECORD { fsqbuf Data structure for QFSAttach}
|
---|
| 463 | iType:USHORT;
|
---|
| 464 | cbName:USHORT;
|
---|
| 465 | cbFSDName:USHORT;
|
---|
| 466 | cbFSAData:USHORT;
|
---|
| 467 | szName:BYTE;
|
---|
| 468 | szFSDName:BYTE;
|
---|
| 469 | rgFSAData:BYTE;
|
---|
| 470 | END;
|
---|
| 471 |
|
---|
| 472 | PSPOOLATTACH=^SPOOLATTACH;
|
---|
| 473 | SPOOLATTACH=RECORD
|
---|
| 474 | hNmPipe:USHORT; { Named pipe handle }
|
---|
| 475 | ulKey:ULONG; { Attached key }
|
---|
| 476 | END;
|
---|
| 477 |
|
---|
| 478 |
|
---|
| 479 | {****************************************************************************
|
---|
| 480 | * File System Drive Information&gml DosQueryFSInfo DosSetFSInfo *
|
---|
| 481 | ****************************************************************************}
|
---|
| 482 |
|
---|
| 483 | { FS Drive Info Levels }
|
---|
| 484 | CONST
|
---|
| 485 | FSIL_ALLOC =1; { Drive allocation info (Query only) }
|
---|
| 486 | FSIL_VOLSER =2; { Drive Volum/Serial info }
|
---|
| 487 |
|
---|
| 488 | { DosQueryFHType() }
|
---|
| 489 | { Handle classes (low 8 bits of Handle Type) }
|
---|
| 490 | FHT_DISKFILE =$0000; { Disk file handle }
|
---|
| 491 | FHT_CHRDEV =$0001; { Character device handle }
|
---|
| 492 | FHT_PIPE =$0002; { Pipe handle }
|
---|
| 493 |
|
---|
| 494 | { Handle bits (high 8 bits of Handle Type) }
|
---|
| 495 | FHB_DSKREMOTE =$8000; { Remote disk }
|
---|
| 496 | FHB_CHRDEVREMOTE =$8000; { Remote character device }
|
---|
| 497 | FHB_PIPEREMOTE =$8000; { Remote pipe }
|
---|
| 498 |
|
---|
| 499 |
|
---|
| 500 | TYPE
|
---|
| 501 | PFTIME=^FTIME;
|
---|
| 502 | FTIME=WORD; {twosecs Bit 0..4, minutes bit 5..10, hours bit 11..15}
|
---|
| 503 |
|
---|
| 504 | PFDATE=^FDATE;
|
---|
| 505 | FDATE=WORD; {Day Bit 0..4, Month Bit 5..8, year bit 9..15}
|
---|
| 506 |
|
---|
| 507 | PVOLUMELABEL=^VOLUMELABEL;
|
---|
| 508 | VOLUMELABEL=RECORD
|
---|
| 509 | cch:BYTE;
|
---|
| 510 | szVolLabel:CSTRING[11];
|
---|
| 511 | END;
|
---|
| 512 |
|
---|
| 513 | PFSINFO=^FSINFO;
|
---|
| 514 | FSINFO=RECORD
|
---|
| 515 | fdateCreation:FDATE;
|
---|
| 516 | ftimeCreation:FTIME;
|
---|
| 517 | vol:VOLUMELABEL;
|
---|
| 518 | END;
|
---|
| 519 |
|
---|
| 520 | { HANDTYPE values }
|
---|
| 521 | CONST
|
---|
| 522 | HANDTYPE_FILE =$0000;
|
---|
| 523 | HANDTYPE_DEVICE =$0001;
|
---|
| 524 | HANDTYPE_PIPE =$0002;
|
---|
| 525 | HANDTYPE_PROTECTED =$4000;
|
---|
| 526 | HANDTYPE_NETWORK =$8000;
|
---|
| 527 |
|
---|
| 528 | TYPE
|
---|
| 529 | PFILELOCK=^FILELOCK;
|
---|
| 530 | FILELOCK=RECORD
|
---|
| 531 | lOffset:LONG;
|
---|
| 532 | lRange:LONG;
|
---|
| 533 | END;
|
---|
| 534 |
|
---|
| 535 | HFILE=LHANDLE;
|
---|
| 536 | HEV=ULONG;
|
---|
| 537 | FHLOCK=ULONG;
|
---|
| 538 |
|
---|
| 539 |
|
---|
| 540 | TYPE
|
---|
| 541 | PFILEFINDBUF=^FILEFINDBUF;
|
---|
| 542 | FILEFINDBUF=RECORD
|
---|
| 543 | fdateCreation:FDATE;
|
---|
| 544 | ftimeCreation:FTIME;
|
---|
| 545 | fdateLastAccess:FDATE;
|
---|
| 546 | ftimeLastAccess:FTIME;
|
---|
| 547 | fdateLastWrite:FDATE;
|
---|
| 548 | ftimeLastWrite:FTIME;
|
---|
| 549 | cbFile:ULONG;
|
---|
| 550 | cbFileAlloc:ULONG;
|
---|
| 551 | attrFile:USHORT;
|
---|
| 552 | cchName:BYTE;
|
---|
| 553 | achName:CSTRING[CCHMAXPATHCOMP-1];
|
---|
| 554 | END;
|
---|
| 555 |
|
---|
| 556 | PFILEFINDBUF2=^FILEFINDBUF2;
|
---|
| 557 | FILEFINDBUF2=RECORD {pack 2}
|
---|
| 558 | fdateCreation:FDATE;
|
---|
| 559 | ftimeCreation:FTIME;
|
---|
| 560 | fdateLastAccess:FDATE;
|
---|
| 561 | ftimeLastAccess:FTIME;
|
---|
| 562 | fdateLastWrite:FDATE;
|
---|
| 563 | ftimeLastWrite:FTIME;
|
---|
| 564 | cbFile:ULONG;
|
---|
| 565 | cbFileAlloc:ULONG;
|
---|
| 566 | attrFile:USHORT;
|
---|
| 567 | cbList:ULONG;
|
---|
| 568 | cchName:BYTE;
|
---|
| 569 | achName:CSTRING[CCHMAXPATHCOMP-1];
|
---|
| 570 | END;
|
---|
| 571 |
|
---|
| 572 | PFILEFINDBUF3=^FILEFINDBUF3;
|
---|
| 573 | FILEFINDBUF3=RECORD { pack 2 }
|
---|
| 574 | oNextEntryOffset:ULONG; { new field }
|
---|
| 575 | fdateCreation:FDATE;
|
---|
| 576 | ftimeCreation:FTIME;
|
---|
| 577 | fdateLastAccess:FDATE;
|
---|
| 578 | ftimeLastAccess:FTIME;
|
---|
| 579 | fdateLastWrite:FDATE;
|
---|
| 580 | ftimeLastWrite:FTIME;
|
---|
| 581 | cbFile:ULONG;
|
---|
| 582 | cbFileAlloc:ULONG;
|
---|
| 583 | attrFile:ULONG; { widened field }
|
---|
| 584 | cchName:BYTE;
|
---|
| 585 | achName:CSTRING[CCHMAXPATHCOMP-1];
|
---|
| 586 | END;
|
---|
| 587 |
|
---|
| 588 | PFILEFINDBUF4=^FILEFINDBUF4;
|
---|
| 589 | FILEFINDBUF4=RECORD { pack 2 }
|
---|
| 590 | oNextEntryOffset:ULONG; { new field }
|
---|
| 591 | fdateCreation:FDATE;
|
---|
| 592 | ftimeCreation:FTIME;
|
---|
| 593 | fdateLastAccess:FDATE;
|
---|
| 594 | ftimeLastAccess:FTIME;
|
---|
| 595 | fdateLastWrite:FDATE;
|
---|
| 596 | ftimeLastWrite:FTIME;
|
---|
| 597 | cbFile:ULONG;
|
---|
| 598 | cbFileAlloc:ULONG;
|
---|
| 599 | attrFile:ULONG; { widened field }
|
---|
| 600 | cbList:ULONG;
|
---|
| 601 | cchName:BYTE;
|
---|
| 602 | achName:CSTRING[CCHMAXPATHCOMP-1];
|
---|
| 603 | END;
|
---|
| 604 |
|
---|
| 605 | { extended attribute structures }
|
---|
| 606 |
|
---|
| 607 | PGEA=^GEA;
|
---|
| 608 | GEA=RECORD {pack 2}
|
---|
| 609 | cbName:BYTE; { name length not including NULL }
|
---|
| 610 | szName:CHAR; { attribute name }
|
---|
| 611 | END;
|
---|
| 612 |
|
---|
| 613 | PGEALIST=^GEALIST;
|
---|
| 614 | GEALIST=RECORD { pack 2 }
|
---|
| 615 | cbList:ULONG; { total bytes of structure including full list }
|
---|
| 616 | list:GEA; { variable length GEA structures }
|
---|
| 617 | END;
|
---|
| 618 |
|
---|
| 619 | PFEA=^FEA;
|
---|
| 620 | FEA=RECORD {pack 2}
|
---|
| 621 | fEA:BYTE; { flags }
|
---|
| 622 | cbName:BYTE; { name length not including NULL }
|
---|
| 623 | cbValue:USHORT; { value length }
|
---|
| 624 | END;
|
---|
| 625 |
|
---|
| 626 | { flags for _FEA.fEA }
|
---|
| 627 | CONST
|
---|
| 628 | FEA_NEEDEA =$80; { need EA bit }
|
---|
| 629 |
|
---|
| 630 | TYPE
|
---|
| 631 | PFEALIST=^FEALIST;
|
---|
| 632 | FEALIST=RECORD { pack 2}
|
---|
| 633 | cbList:ULONG; { total bytes of structure including full list }
|
---|
| 634 | list:FEA; { variable length FEA structures }
|
---|
| 635 | END;
|
---|
| 636 |
|
---|
| 637 | PEAOP=^EAOP;
|
---|
| 638 | EAOP=RECORD { pack 2}
|
---|
| 639 | fpGEAList:PGEALIST; { general EA list }
|
---|
| 640 | fpFEAList:PFEALIST; { full EA list }
|
---|
| 641 | oError:ULONG;
|
---|
| 642 | END;
|
---|
| 643 |
|
---|
| 644 | PFEA2=^FEA2;
|
---|
| 645 | FEA2=RECORD {pack 1}
|
---|
| 646 | oNextEntryOffset:ULONG; { new field }
|
---|
| 647 | fEA:BYTE;
|
---|
| 648 | cbName:BYTE;
|
---|
| 649 | cbValue:USHORT;
|
---|
| 650 | szName:CString[1]; { new field }
|
---|
| 651 | END;
|
---|
| 652 |
|
---|
| 653 | PFEA2LIST=^FEA2LIST;
|
---|
| 654 | FEA2LIST=RECORD {pack 1}
|
---|
| 655 | cbList:ULONG;
|
---|
| 656 | list:ARRAY[0..0] OF FEA2;
|
---|
| 657 | END;
|
---|
| 658 |
|
---|
| 659 | PGEA2=^GEA2;
|
---|
| 660 | GEA2=RECORD {pack 1}
|
---|
| 661 | oNextEntryOffset:ULONG; { new field }
|
---|
| 662 | cbName:BYTE;
|
---|
| 663 | szName:ARRAY[0..0] OF BYTE; { new field }
|
---|
| 664 | END;
|
---|
| 665 |
|
---|
| 666 | PGEA2LIST=^GEA2LIST;
|
---|
| 667 | GEA2LIST=RECORD { pack 1 }
|
---|
| 668 | cbList:ULONG;
|
---|
| 669 | list:ARRAY[0..0] OF GEA2;
|
---|
| 670 | END;
|
---|
| 671 |
|
---|
| 672 | PEAOP2=^EAOP2;
|
---|
| 673 | EAOP2=RECORD { pack 1 }
|
---|
| 674 | fpGEA2List:PGEA2LIST; { GEA set }
|
---|
| 675 | fpFEA2List:PFEA2LIST; { FEA set }
|
---|
| 676 | oError:ULONG; { offset of FEA error }
|
---|
| 677 | END;
|
---|
| 678 |
|
---|
| 679 | {
|
---|
| 680 | * Equates for the types of EAs that follow the convention that we have
|
---|
| 681 | * established.
|
---|
| 682 | *
|
---|
| 683 | * Values =$FFFE thru =$8000 are reserved.
|
---|
| 684 | * Values =$0000 thru =$7fff are user definable.
|
---|
| 685 | * Value =$FFFC is not used
|
---|
| 686 | }
|
---|
| 687 | CONST
|
---|
| 688 | EAT_BINARY =$FFFE; { length preceeded binary }
|
---|
| 689 | EAT_ASCII =$FFFD; { length preceeded ASCII }
|
---|
| 690 | EAT_BITMAP =$FFFB; { length preceeded bitmap }
|
---|
| 691 | EAT_METAFILE =$FFFA; { length preceeded metafile }
|
---|
| 692 | EAT_ICON =$FFF9; { length preceeded icon }
|
---|
| 693 | EAT_EA =$FFEE; { length preceeded ASCII }
|
---|
| 694 | { name of associated data (#include) }
|
---|
| 695 | EAT_MVMT =$FFDF; { multi-valued, multi-typed field }
|
---|
| 696 | EAT_MVST =$FFDE; { multi-valued, single-typed field }
|
---|
| 697 | EAT_ASN1 =$FFDD; { ASN.1 field }
|
---|
| 698 |
|
---|
| 699 | { File time and date types }
|
---|
| 700 |
|
---|
| 701 | TYPE
|
---|
| 702 | PFILESTATUS=^FILESTATUS;
|
---|
| 703 | FILESTATUS=RECORD
|
---|
| 704 | fdateCreation:FDATE;
|
---|
| 705 | ftimeCreation:FTIME;
|
---|
| 706 | fdateLastAccess:FDATE;
|
---|
| 707 | ftimeLastAccess:FTIME;
|
---|
| 708 | fdateLastWrite:FDATE;
|
---|
| 709 | ftimeLastWrite:FTIME;
|
---|
| 710 | cbFile:ULONG;
|
---|
| 711 | cbFileAlloc:ULONG;
|
---|
| 712 | attrFile:WORD;
|
---|
| 713 | END;
|
---|
| 714 |
|
---|
| 715 | PFILESTATUS2=^FILESTATUS2;
|
---|
| 716 | FILESTATUS2=RECORD
|
---|
| 717 | fdateCreation:FDATE;
|
---|
| 718 | ftimeCreation:FTIME;
|
---|
| 719 | fdateLastAccess:FDATE;
|
---|
| 720 | ftimeLastAccess:FTIME;
|
---|
| 721 | fdateLastWrite:FDATE;
|
---|
| 722 | ftimeLastWrite:FTIME;
|
---|
| 723 | cbFile:ULONG;
|
---|
| 724 | cbFileAlloc:ULONG;
|
---|
| 725 | attrFile:WORD;
|
---|
| 726 | cbList:ULONG;
|
---|
| 727 | END;
|
---|
| 728 |
|
---|
| 729 | PFILESTATUS3=^FILESTATUS3;
|
---|
| 730 | FILESTATUS3=RECORD
|
---|
| 731 | fdateCreation:FDATE;
|
---|
| 732 | ftimeCreation:FTIME;
|
---|
| 733 | fdateLastAccess:FDATE;
|
---|
| 734 | ftimeLastAccess:FTIME;
|
---|
| 735 | fdateLastWrite:FDATE;
|
---|
| 736 | ftimeLastWrite:FTIME;
|
---|
| 737 | cbFile:ULONG;
|
---|
| 738 | cbFileAlloc:ULONG;
|
---|
| 739 | attrFile:ULONG;
|
---|
| 740 | END;
|
---|
| 741 |
|
---|
| 742 | PFILESTATUS4=^FILESTATUS4;
|
---|
| 743 | FILESTATUS4=RECORD
|
---|
| 744 | fdateCreation:FDATE;
|
---|
| 745 | ftimeCreation:FTIME;
|
---|
| 746 | fdateLastAccess:FDATE;
|
---|
| 747 | ftimeLastAccess:FTIME;
|
---|
| 748 | fdateLastWrite:FDATE;
|
---|
| 749 | ftimeLastWrite:FTIME;
|
---|
| 750 | cbFile:ULONG;
|
---|
| 751 | cbFileAlloc:ULONG;
|
---|
| 752 | attrFile:ULONG;
|
---|
| 753 | cbList:ULONG;
|
---|
| 754 | END;
|
---|
| 755 |
|
---|
| 756 | PFSALLOCATE=^FSALLOCATE;
|
---|
| 757 | FSALLOCATE=RECORD
|
---|
| 758 | idFileSystem:ULONG;
|
---|
| 759 | cSectorUnit:ULONG;
|
---|
| 760 | cUnit:ULONG;
|
---|
| 761 | cUnitAvail:ULONG;
|
---|
| 762 | cbSector:USHORT;
|
---|
| 763 | END;
|
---|
| 764 |
|
---|
| 765 | HDIR=LHANDLE;
|
---|
| 766 |
|
---|
| 767 | { defines for DosSetPathInfo -pathinfo flag }
|
---|
| 768 | CONST
|
---|
| 769 | DSPI_WRTTHRU =$10; { write through }
|
---|
| 770 |
|
---|
| 771 |
|
---|
| 772 | TYPE
|
---|
| 773 | PDENA1=^DENA1;
|
---|
| 774 | DENA1=RECORD { pack 1 }
|
---|
| 775 | reserved:UCHAR; { 0 }
|
---|
| 776 | cbName:UCHAR; { length of name exculding NULL }
|
---|
| 777 | cbValue:USHORT; { length of value }
|
---|
| 778 | szName:UCHAR; { variable length asciiz name }
|
---|
| 779 | END;
|
---|
| 780 |
|
---|
| 781 | PDENA2=^DENA2;
|
---|
| 782 | DENA2=FEA2;
|
---|
| 783 |
|
---|
| 784 | { Infolevels for DosEnumAttribute }
|
---|
| 785 | CONST
|
---|
| 786 | ENUMEA_LEVEL_NO_VALUE =1; { FEA without value }
|
---|
| 787 | { Reference types for DosEnumAttribute }
|
---|
| 788 | ENUMEA_REFTYPE_FHANDLE =0; { file handle }
|
---|
| 789 | ENUMEA_REFTYPE_PATH =1; { path name }
|
---|
| 790 | ENUMEA_REFTYPE_MAX =ENUMEA_REFTYPE_PATH;
|
---|
| 791 |
|
---|
| 792 |
|
---|
| 793 | { 32-bit Semaphore Support }
|
---|
| 794 |
|
---|
| 795 | { Semaphore Attributes }
|
---|
| 796 | CONST
|
---|
| 797 | DC_SEM_SHARED =$01; { DosCreateMutex, DosCreateEvent, and }
|
---|
| 798 | { DosCreateMuxWait use it to indicate }
|
---|
| 799 | { whether the semaphore is shared or }
|
---|
| 800 | { private when the PSZ is null }
|
---|
| 801 | DCMW_WAIT_ANY =$02; { DosCreateMuxWait option for wait on any }
|
---|
| 802 | { event/mutex to occur }
|
---|
| 803 | DCMW_WAIT_ALL =$04; { DosCreateMuxWait option for wait on all }
|
---|
| 804 | { events/mutexs to occur }
|
---|
| 805 |
|
---|
| 806 | SEM_INDEFINITE_WAIT =-1;
|
---|
| 807 | SEM_IMMEDIATE_RETURN = 0;
|
---|
| 808 |
|
---|
| 809 |
|
---|
| 810 | TYPE
|
---|
| 811 | HSEM=LONGWORD;
|
---|
| 812 |
|
---|
| 813 | PSEMRECORD=^SEMRECORD;
|
---|
| 814 | SEMRECORD=RECORD
|
---|
| 815 | hsemCur:HSEM;
|
---|
| 816 | ulUser:ULONG;
|
---|
| 817 | END;
|
---|
| 818 |
|
---|
| 819 |
|
---|
| 820 | HMTX=ULONG;
|
---|
| 821 | HMUX=ULONG;
|
---|
| 822 |
|
---|
| 823 |
|
---|
| 824 | TYPE
|
---|
| 825 | HTIMER=LHANDLE;
|
---|
| 826 |
|
---|
| 827 | CONST
|
---|
| 828 | PT_16BIT =0;
|
---|
| 829 | PT_32BIT =1;
|
---|
| 830 |
|
---|
| 831 | {** Resource support }
|
---|
| 832 |
|
---|
| 833 | { Predefined resource types }
|
---|
| 834 | CONST
|
---|
| 835 | RT_POINTER =1; { mouse pointer shape }
|
---|
| 836 | RT_BITMAP =2; { bitmap }
|
---|
| 837 | RT_MENU =3; { menu template }
|
---|
| 838 | RT_DIALOG =4; { dialog template }
|
---|
| 839 | RT_STRING =5; { string tables }
|
---|
| 840 | RT_FONTDIR =6; { font directory }
|
---|
| 841 | RT_FONT =7; { font }
|
---|
| 842 | RT_ACCELTABLE =8; { accelerator tables }
|
---|
| 843 | RT_RCDATA =9; { binary data }
|
---|
| 844 | RT_MESSAGE =10; { error msg tables }
|
---|
| 845 | RT_DLGINCLUDE =11; { dialog include file name }
|
---|
| 846 | RT_VKEYTBL =12; { key to vkey tables }
|
---|
| 847 | RT_KEYTBL =13; { key to UGL tables }
|
---|
| 848 | RT_CHARTBL =14; { glyph to character tables }
|
---|
| 849 | RT_DISPLAYINFO =15; { screen display information }
|
---|
| 850 |
|
---|
| 851 | RT_FKASHORT =16; { function key area short form }
|
---|
| 852 | RT_FKALONG =17; { function key area long form }
|
---|
| 853 |
|
---|
| 854 | RT_HELPTABLE =18; { Help table for Cary Help manager }
|
---|
| 855 | RT_HELPSUBTABLE =19; { Help subtable for Cary Help manager }
|
---|
| 856 |
|
---|
| 857 | RT_FDDIR =20; { DBCS uniq/font driver directory }
|
---|
| 858 | RT_FD =21; { DBCS uniq/font driver }
|
---|
| 859 |
|
---|
| 860 | RT_MAX =22; { 1st unused Resource Type }
|
---|
| 861 |
|
---|
| 862 |
|
---|
| 863 | RF_ORDINALID =$80000000; { ordinal id flag in resource table }
|
---|
| 864 |
|
---|
| 865 |
|
---|
| 866 | {** NLS Support }
|
---|
| 867 |
|
---|
| 868 | TYPE
|
---|
| 869 | PCOUNTRYCODE=^COUNTRYCODE;
|
---|
| 870 | COUNTRYCODE=RECORD
|
---|
| 871 | country:ULONG;
|
---|
| 872 | codepage:ULONG;
|
---|
| 873 | END;
|
---|
| 874 |
|
---|
| 875 | PCOUNTRYINFO=^COUNTRYINFO;
|
---|
| 876 | COUNTRYINFO=RECORD
|
---|
| 877 | country:ULONG;
|
---|
| 878 | codepage:ULONG;
|
---|
| 879 | fsDateFmt:ULONG;
|
---|
| 880 | szCurrency:CSTRING[4];
|
---|
| 881 | szThousandsSeparator:CSTRING[1];
|
---|
| 882 | szDecimal:CSTRING[1];
|
---|
| 883 | szDateSeparator:CSTRING[1];
|
---|
| 884 | szTimeSeparator:CSTRING[1];
|
---|
| 885 | fsCurrencyFmt:UCHAR;
|
---|
| 886 | cDecimalPlace:UCHAR;
|
---|
| 887 | fsTimeFmt:UCHAR;
|
---|
| 888 | abReserved1:ARRAY[0..1] OF USHORT;
|
---|
| 889 | szDataSeparator:CSTRING[1];
|
---|
| 890 | abReserved2:ARRAY[0..4] OF USHORT;
|
---|
| 891 | END;
|
---|
| 892 |
|
---|
| 893 | { DosSetSigExceptionFocus codes }
|
---|
| 894 | CONST
|
---|
| 895 | SIG_UNSETFOCUS =0;
|
---|
| 896 | SIG_SETFOCUS =1;
|
---|
| 897 |
|
---|
| 898 | TYPE
|
---|
| 899 | HQUEUE=LHANDLE;
|
---|
| 900 |
|
---|
| 901 | PREQUESTDATA=^REQUESTDATA;
|
---|
| 902 | REQUESTDATA=RECORD
|
---|
| 903 | pid:PID;
|
---|
| 904 | ulData:ULONG;
|
---|
| 905 | END;
|
---|
| 906 |
|
---|
| 907 | CONST
|
---|
| 908 | QUE_FIFO =0;
|
---|
| 909 | QUE_LIFO =1;
|
---|
| 910 | QUE_PRIORITY =2;
|
---|
| 911 | QUE_NOCONVERT_ADDRESS =0;
|
---|
| 912 | QUE_CONVERT_ADDRESS =4;
|
---|
| 913 |
|
---|
| 914 | { definitions for DosSearchPath control word }
|
---|
| 915 | CONST
|
---|
| 916 | DSP_IMPLIEDCUR =1; { current dir will be searched first }
|
---|
| 917 | DSP_PATHREF =2; { from env.variable }
|
---|
| 918 | DSP_IGNORENETERR =4; { ignore net errs & continue search }
|
---|
| 919 |
|
---|
| 920 | { indices for DosQuerySysInfo }
|
---|
| 921 | QSV_MAX_PATH_LENGTH =1;
|
---|
| 922 | Q_MAX_PATH_LENGTH =QSV_MAX_PATH_LENGTH;
|
---|
| 923 | QSV_MAX_TEXT_SESSIONS =2;
|
---|
| 924 | QSV_MAX_PM_SESSIONS =3;
|
---|
| 925 | QSV_MAX_VDM_SESSIONS =4;
|
---|
| 926 | QSV_BOOT_DRIVE =5; { 1=A, 2=B, etc. }
|
---|
| 927 | QSV_DYN_PRI_VARIATION =6; { 0=Absolute, 1=Dynamic }
|
---|
| 928 | QSV_MAX_WAIT =7; { seconds }
|
---|
| 929 | QSV_MIN_SLICE =8; { milli seconds }
|
---|
| 930 | QSV_MAX_SLICE =9; { milli seconds }
|
---|
| 931 | QSV_PAGE_SIZE =10;
|
---|
| 932 | QSV_VERSION_MAJOR =11;
|
---|
| 933 | QSV_VERSION_MINOR =12;
|
---|
| 934 | QSV_VERSION_REVISION =13; { Revision letter }
|
---|
| 935 | QSV_MS_COUNT =14; { Free running millisecond counter }
|
---|
| 936 | QSV_TIME_LOW =15; { Low dword of time in seconds }
|
---|
| 937 | QSV_TIME_HIGH =16; { High dword of time in seconds }
|
---|
| 938 | QSV_TOTPHYSMEM =17; { Physical memory on system }
|
---|
| 939 | QSV_TOTRESMEM =18; { Resident memory on system }
|
---|
| 940 | QSV_TOTAVAILMEM =19; { Available memory for all processes }
|
---|
| 941 | QSV_MAXPRMEM =20; { Avail private mem for calling proc }
|
---|
| 942 | QSV_MAXSHMEM =21; { Avail shared mem for calling proc }
|
---|
| 943 | QSV_TIMER_INTERVAL =22; { Timer interval in tenths of ms }
|
---|
| 944 | QSV_MAX_COMP_LENGTH =23; { max len of one component in a name }
|
---|
| 945 | QSV_MAX =QSV_MAX_COMP_LENGTH;
|
---|
| 946 |
|
---|
| 947 | { definitions for DosError - combine with | }
|
---|
| 948 | FERR_DISABLEHARDERR =$00000000; { disable hard error popups }
|
---|
| 949 | FERR_ENABLEHARDERR =$00000001; { enable hard error popups }
|
---|
| 950 | FERR_ENABLEEXCEPTION =$00000000; { enable exception popups }
|
---|
| 951 | FERR_DISABLEEXCEPTION =$00000002; { disable exception popups }
|
---|
| 952 |
|
---|
| 953 | { definitions for DosQueryRASInfo Index }
|
---|
| 954 | SIS_MMIOADDR =0;
|
---|
| 955 | SIS_MEC_TABLE =1;
|
---|
| 956 | SIS_SYS_LOG =2;
|
---|
| 957 |
|
---|
| 958 | {** Session manager support }
|
---|
| 959 | TYPE
|
---|
| 960 | PSTARTDATA=^STARTDATA;
|
---|
| 961 | STARTDATA=RECORD
|
---|
| 962 | Length:USHORT;
|
---|
| 963 | Related:USHORT;
|
---|
| 964 | FgBg:USHORT;
|
---|
| 965 | TraceOpt:USHORT;
|
---|
| 966 | PgmTitle:PChar;
|
---|
| 967 | PgmName:PChar;
|
---|
| 968 | PgmInputs:PChar;
|
---|
| 969 | TermQ:PBYTE;
|
---|
| 970 | Environment:PBYTE;
|
---|
| 971 | InheritOpt:USHORT;
|
---|
| 972 | SessionType:USHORT;
|
---|
| 973 | IconFile:PChar;
|
---|
| 974 | PgmHandle:ULONG;
|
---|
| 975 | PgmControl:USHORT;
|
---|
| 976 | InitXPos:USHORT;
|
---|
| 977 | InitYPos:USHORT;
|
---|
| 978 | InitXSize:USHORT;
|
---|
| 979 | InitYSize:USHORT;
|
---|
| 980 | Reserved:USHORT;
|
---|
| 981 | ObjectBuffer:PChar;
|
---|
| 982 | ObjectBuffLen:ULONG;
|
---|
| 983 | END;
|
---|
| 984 |
|
---|
| 985 | CONST
|
---|
| 986 | SSF_RELATED_INDEPENDENT =0;
|
---|
| 987 | SSF_RELATED_CHILD =1;
|
---|
| 988 |
|
---|
| 989 | SSF_FGBG_FORE =0;
|
---|
| 990 | SSF_FGBG_BACK =1;
|
---|
| 991 |
|
---|
| 992 | SSF_TRACEOPT_NONE =0;
|
---|
| 993 | SSF_TRACEOPT_TRACE =1;
|
---|
| 994 | SSF_TRACEOPT_TRACEALL =2;
|
---|
| 995 |
|
---|
| 996 | SSF_INHERTOPT_SHELL =0;
|
---|
| 997 | SSF_INHERTOPT_PARENT =1;
|
---|
| 998 |
|
---|
| 999 | { note that these types are identical to those in pmshl.h for PROG_* }
|
---|
| 1000 | SSF_TYPE_DEFAULT =0;
|
---|
| 1001 | SSF_TYPE_FULLSCREEN =1;
|
---|
| 1002 | SSF_TYPE_WINDOWABLEVIO =2;
|
---|
| 1003 | SSF_TYPE_PM =3;
|
---|
| 1004 | SSF_TYPE_VDM =4;
|
---|
| 1005 | SSF_TYPE_GROUP =5;
|
---|
| 1006 | SSF_TYPE_DLL =6;
|
---|
| 1007 | SSF_TYPE_WINDOWEDVDM =7;
|
---|
| 1008 | SSF_TYPE_PDD =8;
|
---|
| 1009 | SSF_TYPE_VDD =9;
|
---|
| 1010 |
|
---|
| 1011 | { note that these flags are identical to those in pmshl.h for SHE_* }
|
---|
| 1012 | SSF_CONTROL_VISIBLE =$0000;
|
---|
| 1013 | SSF_CONTROL_INVISIBLE =$0001;
|
---|
| 1014 | SSF_CONTROL_MAXIMIZE =$0002;
|
---|
| 1015 | SSF_CONTROL_MINIMIZE =$0004;
|
---|
| 1016 | SSF_CONTROL_NOAUTOCLOSE =$0008;
|
---|
| 1017 | SSF_CONTROL_SETPOS =$8000;
|
---|
| 1018 |
|
---|
| 1019 | TYPE
|
---|
| 1020 | PSTATUSDATA=^STATUSDATA;
|
---|
| 1021 | STATUSDATA=RECORD
|
---|
| 1022 | Length:USHORT;
|
---|
| 1023 | SelectInd:USHORT;
|
---|
| 1024 | BondInd:USHORT;
|
---|
| 1025 | END;
|
---|
| 1026 |
|
---|
| 1027 | { SelectInd and BondInd paramater values for DosSetSession }
|
---|
| 1028 | CONST
|
---|
| 1029 | SET_SESSION_UNCHANGED =0;
|
---|
| 1030 | SET_SESSION_SELECTABLE =1;
|
---|
| 1031 | SET_SESSION_NON_SELECTABLE =2;
|
---|
| 1032 | SET_SESSION_BOND =1;
|
---|
| 1033 | SET_SESSION_NO_BOND =2;
|
---|
| 1034 |
|
---|
| 1035 | { TargetOption (scope) parameter values for DosStopSession }
|
---|
| 1036 | STOP_SESSION_SPECIFIED =0;
|
---|
| 1037 | STOP_SESSION_ALL =1;
|
---|
| 1038 |
|
---|
| 1039 | { AppType returned in by DosQueryAppType in pFlags as follows }
|
---|
| 1040 | CONST
|
---|
| 1041 | FAPPTYP_NOTSPEC =$0000;
|
---|
| 1042 | FAPPTYP_NOTWINDOWCOMPAT =$0001;
|
---|
| 1043 | FAPPTYP_WINDOWCOMPAT =$0002;
|
---|
| 1044 | FAPPTYP_WINDOWAPI =$0003;
|
---|
| 1045 | FAPPTYP_BOUND =$0008;
|
---|
| 1046 | FAPPTYP_DLL =$0010;
|
---|
| 1047 | FAPPTYP_DOS =$0020;
|
---|
| 1048 | FAPPTYP_PHYSDRV =$0040; { physical device driver }
|
---|
| 1049 | FAPPTYP_VIRTDRV =$0080; { virtual device driver }
|
---|
| 1050 | FAPPTYP_PROTDLL =$0100; { 'protected memory' dll }
|
---|
| 1051 | FAPPTYP_WINDOWSREAL =$0200; { Windows real mode app }
|
---|
| 1052 | FAPPTYP_WINDOWSPROT =$0400; { Windows protect mode app }
|
---|
| 1053 | FAPPTYP_WINDOWSPROT31 =$1000; { Windows 3.1 protect mode app }
|
---|
| 1054 | FAPPTYP_32BIT =$4000;
|
---|
| 1055 | FAPPTYP_EXETYPE =FAPPTYP_WINDOWAPI;
|
---|
| 1056 |
|
---|
| 1057 | FAPPTYP_RESERVED =NOT (FAPPTYP_WINDOWAPI | FAPPTYP_BOUND |
|
---|
| 1058 | FAPPTYP_DLL | FAPPTYP_DOS |
|
---|
| 1059 | FAPPTYP_PHYSDRV | FAPPTYP_VIRTDRV |
|
---|
| 1060 | FAPPTYP_PROTDLL | FAPPTYP_32BIT);
|
---|
| 1061 |
|
---|
| 1062 | EAT_APPTYP_PMAPI =$00; { Uses PM API }
|
---|
| 1063 | EAT_APPTYP_DOS =$01; { DOS APP }
|
---|
| 1064 | EAT_APPTYP_PMW =$02; { Window compatible }
|
---|
| 1065 | EAT_APPTYP_NOPMW =$03; { Not Window compatible }
|
---|
| 1066 | EAT_APPTYP_EXETYPE =$03; { EXE type mask }
|
---|
| 1067 | EAT_APPTYP_RESERVED =NOT EAT_APPTYP_EXETYPE;
|
---|
| 1068 |
|
---|
| 1069 | CONST
|
---|
| 1070 | DEVINFO_PRINTER =0; { Number of printers attached }
|
---|
| 1071 | DEVINFO_RS232 =1; { Number of RS232 ports }
|
---|
| 1072 | DEVINFO_FLOPPY =2; { Number of diskette drives }
|
---|
| 1073 | DEVINFO_COPROCESSOR =3; { Presence of math coprocessor }
|
---|
| 1074 | DEVINFO_SUBMODEL =4; { PC Submodel Type }
|
---|
| 1075 | DEVINFO_MODEL =5; { PC Model Type }
|
---|
| 1076 | DEVINFO_ADAPTER =6; { Primary display adapter type }
|
---|
| 1077 |
|
---|
| 1078 |
|
---|
| 1079 | CONST
|
---|
| 1080 | INFO_COUNT_PARTITIONABLE_DISKS =1; { # of partitionable disks }
|
---|
| 1081 | INFO_GETIOCTLHANDLE =2; { Obtain handle }
|
---|
| 1082 | INFO_FREEIOCTLHANDLE =3; { Release handle }
|
---|
| 1083 |
|
---|
| 1084 |
|
---|
| 1085 |
|
---|
| 1086 | {** Data structures used with named pipes **}
|
---|
| 1087 | TYPE
|
---|
| 1088 | HPIPE=LHANDLE;
|
---|
| 1089 |
|
---|
| 1090 |
|
---|
| 1091 | PAVAILDATA=^AVAILDATA;
|
---|
| 1092 | AVAILDATA=RECORD
|
---|
| 1093 | cbpipe:USHORT; { bytes left in the pipe }
|
---|
| 1094 | cbmessage:USHORT; { bytes left in the current message }
|
---|
| 1095 | END;
|
---|
| 1096 |
|
---|
| 1097 | PPIPEINFO=^PIPEINFO;
|
---|
| 1098 | PIPEINFO=RECORD
|
---|
| 1099 | cbOut:USHORT; { length of outgoing I/O buffer }
|
---|
| 1100 | cbIn:USHORT; { length of incoming I/O buffer }
|
---|
| 1101 | cbMaxInst:BYTE; { maximum number of instances }
|
---|
| 1102 | cbCurInst:BYTE; { current number of instances }
|
---|
| 1103 | cbName:BYTE; { length of pipe name }
|
---|
| 1104 | szName:CHAR; { start of name }
|
---|
| 1105 | END;
|
---|
| 1106 |
|
---|
| 1107 | PPIPESEMSTATE=^PIPESEMSTATE;
|
---|
| 1108 | PIPESEMSTATE=RECORD
|
---|
| 1109 | fStatus:BYTE; { type of record, 0 = EOI, 1 = read ok, }
|
---|
| 1110 | { 2 = write ok, 3 = pipe closed }
|
---|
| 1111 | fFlag:BYTE; { additional info, 01 = waiting thread }
|
---|
| 1112 | usKey:USHORT; { user's key value }
|
---|
| 1113 | usAvail:USHORT;{ available data/space if status = 1/2 }
|
---|
| 1114 | END;
|
---|
| 1115 |
|
---|
| 1116 | CONST
|
---|
| 1117 | NP_INDEFINITE_WAIT =-1;
|
---|
| 1118 | NP_DEFAULT_WAIT =0;
|
---|
| 1119 |
|
---|
| 1120 | { DosPeekNmPipe() pipe states }
|
---|
| 1121 |
|
---|
| 1122 | NP_STATE_DISCONNECTED =$0001;
|
---|
| 1123 | NP_STATE_LISTENING =$0002;
|
---|
| 1124 | NP_STATE_CONNECTED =$0003;
|
---|
| 1125 | NP_STATE_CLOSING =$0004;
|
---|
| 1126 |
|
---|
| 1127 | { DosCreateNPipe open modes }
|
---|
| 1128 |
|
---|
| 1129 | NP_ACCESS_INBOUND =$0000;
|
---|
| 1130 | NP_ACCESS_OUTBOUND =$0001;
|
---|
| 1131 | NP_ACCESS_DUPLEX =$0002;
|
---|
| 1132 | NP_INHERIT =$0000;
|
---|
| 1133 | NP_NOINHERIT =$0080;
|
---|
| 1134 | NP_WRITEBEHIND =$0000;
|
---|
| 1135 | NP_NOWRITEBEHIND =$4000;
|
---|
| 1136 |
|
---|
| 1137 | { DosCreateNPipe and DosQueryNPHState state }
|
---|
| 1138 |
|
---|
| 1139 | NP_READMODE_BYTE =$0000;
|
---|
| 1140 | NP_READMODE_MESSAGE =$0100;
|
---|
| 1141 | NP_TYPE_BYTE =$0000;
|
---|
| 1142 | NP_TYPE_MESSAGE =$0400;
|
---|
| 1143 | NP_END_CLIENT =$0000;
|
---|
| 1144 | NP_END_SERVER =$4000;
|
---|
| 1145 | NP_WAIT =$0000;
|
---|
| 1146 | NP_NOWAIT =$8000;
|
---|
| 1147 | NP_UNLIMITED_INSTANCES =$00FF;
|
---|
| 1148 |
|
---|
| 1149 | { values in fStatus }
|
---|
| 1150 | CONST
|
---|
| 1151 | NPSS_EOI =0; { End Of Information }
|
---|
| 1152 | NPSS_RDATA =1; { read data available }
|
---|
| 1153 | NPSS_WSPACE =2; { write space available }
|
---|
| 1154 | NPSS_CLOSE =3; { pipe in CLOSING state }
|
---|
| 1155 |
|
---|
| 1156 | { values in npss_flag }
|
---|
| 1157 | NPSS_WAIT =$01; { waiting thread on end of pipe }
|
---|
| 1158 |
|
---|
| 1159 | { defined bits in pipe mode }
|
---|
| 1160 | NP_NBLK =$8000; { non-blocking read/write }
|
---|
| 1161 | NP_SERVER =$4000; { set if server end }
|
---|
| 1162 | NP_WMESG =$0400; { write messages }
|
---|
| 1163 | NP_RMESG =$0100; { read as messages }
|
---|
| 1164 | NP_ICOUNT =$00FF; { instance count field }
|
---|
| 1165 |
|
---|
| 1166 |
|
---|
| 1167 | {Named pipes may be in one of several states depending on the actions
|
---|
| 1168 | * that have been taken on it by the server end and client end. The
|
---|
| 1169 | * following state/action table summarizes the valid state transitions:
|
---|
| 1170 | *
|
---|
| 1171 | * Current state Action Next state
|
---|
| 1172 | *
|
---|
| 1173 | * <none> server DosMakeNmPipe DISCONNECTED
|
---|
| 1174 | * DISCONNECTED server connect LISTENING
|
---|
| 1175 | * LISTENING client open CONNECTED
|
---|
| 1176 | * CONNECTED server disconn DISCONNECTED
|
---|
| 1177 | * CONNECTED client close CLOSING
|
---|
| 1178 | * CLOSING server disconn DISCONNECTED
|
---|
| 1179 | * CONNECTED server close CLOSING
|
---|
| 1180 | * <any other> server close <pipe deallocated>
|
---|
| 1181 | *
|
---|
| 1182 | * If a server disconnects his end of the pipe, the client end will enter a
|
---|
| 1183 | * special state in which any future operations (except close) on the file
|
---|
| 1184 | * descriptor associated with the pipe will return an error.
|
---|
| 1185 | }
|
---|
| 1186 |
|
---|
| 1187 | {
|
---|
| 1188 | * Values for named pipe state
|
---|
| 1189 | }
|
---|
| 1190 |
|
---|
| 1191 | NP_DISCONNECTED =1; { after pipe creation or Disconnect }
|
---|
| 1192 | NP_LISTENING =2; { after DosNmPipeConnect }
|
---|
| 1193 | NP_CONNECTED =3; { after Client open }
|
---|
| 1194 | NP_CLOSING =4; { after Client or Server close }
|
---|
| 1195 |
|
---|
| 1196 |
|
---|
| 1197 | { DosProfile ordinal number }
|
---|
| 1198 | CONST
|
---|
| 1199 | PROF_ORDINAL =133;
|
---|
| 1200 |
|
---|
| 1201 | { DosProfile usType }
|
---|
| 1202 |
|
---|
| 1203 | PROF_SYSTEM =0;
|
---|
| 1204 | PROF_USER =1;
|
---|
| 1205 | PROF_USEDD =2;
|
---|
| 1206 | PROF_KERNEL =4;
|
---|
| 1207 | PROF_VERBOSE =8;
|
---|
| 1208 | PROF_ENABLE =16;
|
---|
| 1209 |
|
---|
| 1210 | { DosProfile usFunc }
|
---|
| 1211 |
|
---|
| 1212 | PROF_ALLOC =0;
|
---|
| 1213 | PROF_CLEAR =1;
|
---|
| 1214 | PROF_ON =2;
|
---|
| 1215 | PROF_OFF =3;
|
---|
| 1216 | PROF_DUMP =4;
|
---|
| 1217 | PROF_FREE =5;
|
---|
| 1218 |
|
---|
| 1219 | { DosProfile tic count granularity (DWORD) }
|
---|
| 1220 |
|
---|
| 1221 | PROF_SHIFT =2;
|
---|
| 1222 |
|
---|
| 1223 | { DosProfile module name string length }
|
---|
| 1224 |
|
---|
| 1225 | PROF_MOD_NAME_SIZE =10;
|
---|
| 1226 |
|
---|
| 1227 | { DosProfile error code for end of data }
|
---|
| 1228 |
|
---|
| 1229 | PROF_END_OF_DATA =13;
|
---|
| 1230 |
|
---|
| 1231 |
|
---|
| 1232 | TYPE
|
---|
| 1233 | HVDD=LHANDLE;
|
---|
| 1234 |
|
---|
| 1235 |
|
---|
| 1236 | IMPORTS
|
---|
| 1237 |
|
---|
| 1238 | FUNCTION DosBeep(freq,dur:ULONG):APIRET;
|
---|
| 1239 | APIENTRY; 'DOSCALLS' index 286;
|
---|
| 1240 | FUNCTION DosExit(action,result:ULONG):APIRET;
|
---|
| 1241 | APIENTRY; 'DOSCALLS' index 234;
|
---|
| 1242 | FUNCTION DosCreateThread(VAR aptid:TID;pfn:POINTER;param:POINTER;flag:ULONG;
|
---|
| 1243 | cbStack:ULONG):APIRET;
|
---|
| 1244 | APIENTRY; 'DOSCALLS' index 311;
|
---|
| 1245 | FUNCTION DosResumeThread(atid:TID):APIRET;
|
---|
| 1246 | APIENTRY; 'DOSCALLS' index 237;
|
---|
| 1247 | FUNCTION DosSuspendThread(atid:TID):APIRET;
|
---|
| 1248 | APIENTRY; 'DOSCALLS' index 238;
|
---|
| 1249 | FUNCTION DosGetInfoBlocks(VAR pptib:PTIB;VAR pppib:PPIB):APIRET;
|
---|
| 1250 | APIENTRY; 'DOSCALLS' index 312;
|
---|
| 1251 | FUNCTION DosKillThread(atid:TID):APIRET;
|
---|
| 1252 | APIENTRY; 'DOSCALLS' index 111;
|
---|
| 1253 | FUNCTION DosWaitChild(action,option:ULONG;VAR pres:RESULTCODES;
|
---|
| 1254 | VAR appid:PID;apid:PID):APIRET;
|
---|
| 1255 | APIENTRY; 'DOSCALLS' index 280;
|
---|
| 1256 | FUNCTION DosWaitThread(VAR aptid:TID;option:ULONG):APIRET;
|
---|
| 1257 | APIENTRY; 'DOSCALLS' index 349;
|
---|
| 1258 | FUNCTION DosSleep(msec:ULONG):APIRET;
|
---|
| 1259 | APIENTRY; 'DOSCALLS' index 229;
|
---|
| 1260 | FUNCTION DosDebug(VAR apdbgbuf:TDBGBUF):APIRET;
|
---|
| 1261 | APIENTRY; 'DOSCALLS' index 317;
|
---|
| 1262 | FUNCTION DosEnterCritSec:APIRET;
|
---|
| 1263 | APIENTRY; 'DOSCALLS' index 232;
|
---|
| 1264 | FUNCTION DosExitCritSec:APIRET;
|
---|
| 1265 | APIENTRY; 'DOSCALLS' index 233;
|
---|
| 1266 | FUNCTION DosExitList(ordercode:ULONG;pfn:POINTER):APIRET;
|
---|
| 1267 | APIENTRY; 'DOSCALLS' index 296;
|
---|
| 1268 | FUNCTION DosExecPgm(pObjname:POINTER;cbObjname:LONG;execFlag:ULONG;
|
---|
| 1269 | VAR pArg,pEnv:CSTRING;VAR pRes:RESULTCODES;
|
---|
| 1270 | CONST pName:CSTRING):APIRET;
|
---|
| 1271 | APIENTRY; 'DOSCALLS' index 283;
|
---|
| 1272 | FUNCTION DosSetPriority(scope,aclass:ULONG;delta:LONG;PorTid:ULONG):APIRET;
|
---|
| 1273 | APIENTRY; 'DOSCALLS' index 236;
|
---|
| 1274 | FUNCTION DosKillProcess(action:ULONG;apid:PID):APIRET;
|
---|
| 1275 | APIENTRY; 'DOSCALLS' index 235;
|
---|
| 1276 | FUNCTION DosSetFileLocks(ahFile:HFILE;VAR pflUnlock,pflLock:FILELOCK;
|
---|
| 1277 | timeout,flags:ULONG):APIRET;
|
---|
| 1278 | APIENTRY; 'DOSCALLS' index 428;
|
---|
| 1279 | FUNCTION DosProtectSetFileLocks(ahFile:HFILE;VAR pflUnlock,pflLock:FILELOCK;
|
---|
| 1280 | timeout,flags:ULONG;
|
---|
| 1281 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1282 | APIENTRY; 'DOSCALLS' index 639;
|
---|
| 1283 | FUNCTION DosCancelLockRequest(ahFile:HFILE;VAR pflLock:FILELOCK):APIRET;
|
---|
| 1284 | APIENTRY; 'DOSCALLS' index 429;
|
---|
| 1285 | FUNCTION DosOpen(pszFileName:CSTRING;VAR pHf:HFILE;VAR pulAction:ULONG;
|
---|
| 1286 | cbFile,ulAttribute,fsOpenFlags,fsOpenMode:ULONG;
|
---|
| 1287 | VAR apeaop2:EAOP2):APIRET;
|
---|
| 1288 | APIENTRY; 'DOSCALLS' index 273;
|
---|
| 1289 | FUNCTION DosProtectOpen(pszFileName:CSTRING;VAR phf:HFILE;VAR pulAction:ULONG;
|
---|
| 1290 | cbFile,ulAttribute,fsOpenFlags,fsOpenMode:ULONG;
|
---|
| 1291 | VAR apeaop2:EAOP2;
|
---|
| 1292 | VAR pfhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1293 | APIENTRY; 'DOSCALLS' index 637;
|
---|
| 1294 | FUNCTION DosClose(ahFile:HFILE):APIRET;
|
---|
| 1295 | APIENTRY; 'DOSCALLS' index 257;
|
---|
| 1296 | FUNCTION DosProtectClose(ahFile:HFILE;fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1297 | APIENTRY; 'DOSCALLS' index 638;
|
---|
| 1298 | FUNCTION DosRead(ahFile:HFILE;VAR pBuffer;cbRead:ULONG;
|
---|
| 1299 | VAR pcbActual:ULONG):APIRET;
|
---|
| 1300 | APIENTRY; 'DOSCALLS' index 281;
|
---|
| 1301 | FUNCTION DosProtectRead(ahFile:HFILE;VAR pBuffer;cbRead:ULONG;
|
---|
| 1302 | VAR pcbActual:ULONG;fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1303 | APIENTRY; 'DOSCALLS' index 641;
|
---|
| 1304 | FUNCTION DosWrite(ahFile:HFILE;CONST pBuffer;cbWrite:ULONG;
|
---|
| 1305 | VAR pcbActual:ULONG):APIRET;
|
---|
| 1306 | APIENTRY; 'DOSCALLS' index 282;
|
---|
| 1307 | FUNCTION DosProtectWrite(ahFile:HFILE;VAR pBuffer;cbWrite:ULONG;
|
---|
| 1308 | VAR pcbActual:ULONG;
|
---|
| 1309 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1310 | APIENTRY; 'DOSCALLS' index 642;
|
---|
| 1311 | FUNCTION DosDelete(VAR pszFile:CSTRING):APIRET;
|
---|
| 1312 | APIENTRY; 'DOSCALLS' index 259;
|
---|
| 1313 | FUNCTION DosForceDelete(VAR pszFile:CSTRING):APIRET;
|
---|
| 1314 | APIENTRY; 'DOSCALLS' index 110;
|
---|
| 1315 | FUNCTION DosDupHandle(ahFile:HFILE;VAR apHfile:HFILE):APIRET;
|
---|
| 1316 | APIENTRY; 'DOSCALLS' index 260;
|
---|
| 1317 | FUNCTION DosQueryFHState(ahFile:HFILE;VAR pMode:ULONG):APIRET;
|
---|
| 1318 | APIENTRY; 'DOSCALLS' index 276;
|
---|
| 1319 | FUNCTION DosProtectQueryFHState(ahFile:HFILE;VAR pMode:ULONG;
|
---|
| 1320 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1321 | APIENTRY; 'DOSCALLS' index 645;
|
---|
| 1322 | FUNCTION DosSetFHState(ahFile:HFILE;mode:ULONG):APIRET;
|
---|
| 1323 | APIENTRY; 'DOSCALLS' index 221;
|
---|
| 1324 | FUNCTION DosProtectSetFHState(ahFile:HFILE;mode:ULONG;
|
---|
| 1325 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1326 | APIENTRY; 'DOSCALLS' index 644;
|
---|
| 1327 | FUNCTION DosQueryHType(ahFile:HFILE;VAR pType,pAttr:ULONG):APIRET;
|
---|
| 1328 | APIENTRY; 'DOSCALLS' index 224;
|
---|
| 1329 | FUNCTION DosFindFirst(VAR pszFileSpec:CSTRING;VAR aphdir:HDIR;flAttribute:ULONG;
|
---|
| 1330 | VAR pfindbuf;cbBuf:ULONG;VAR pcFileNames:ULONG;
|
---|
| 1331 | ulInfoLevel:ULONG):APIRET;
|
---|
| 1332 | APIENTRY; 'DOSCALLS' index 264;
|
---|
| 1333 | FUNCTION DosFindNext(ahDir:HDIR;VAR pfindbuf;cbfindbuf:ULONG;
|
---|
| 1334 | VAR pcFilenames:ULONG):APIRET;
|
---|
| 1335 | APIENTRY; 'DOSCALLS' index 265;
|
---|
| 1336 | FUNCTION DosFindClose(ahDir:HDIR):APIRET;
|
---|
| 1337 | APIENTRY; 'DOSCALLS' index 263;
|
---|
| 1338 | FUNCTION DosFSAttach(VAR pszDevice:CSTRING;VAR pszFilesystem:CSTRING;VAR pData;
|
---|
| 1339 | cbData:ULONG;flag:ULONG):APIRET;
|
---|
| 1340 | APIENTRY; 'DOSCALLS' index 269;
|
---|
| 1341 | FUNCTION DosQueryFSAttach(VAR pszDeviceName:CSTRING;ulOrdinal,ulFSAInfoLevel:ULONG;
|
---|
| 1342 | VAR pfsqb:FSQBUFFER2;
|
---|
| 1343 | VAR pcbBuffLength:ULONG):APIRET;
|
---|
| 1344 | APIENTRY; 'DOSCALLS' index 277;
|
---|
| 1345 | FUNCTION DosFSCtl(VAR pData;cbData:ULONG;VAR pcbData:ULONG;VAR pParms;
|
---|
| 1346 | cbParms:ULONG;VAR pcbParms:ULONG;afunction:ULONG;
|
---|
| 1347 | VAR pszRoute:CSTRING;ahFile:HFILE;method:ULONG):APIRET;
|
---|
| 1348 | APIENTRY; 'DOSCALLS' index 285;
|
---|
| 1349 | FUNCTION DosSetFileSize(ahFile:HFILE;cbSize:ULONG):APIRET;
|
---|
| 1350 | APIENTRY; 'DOSCALLS' index 272;
|
---|
| 1351 | FUNCTION DosProtectSetFileSize(ahFile:HFILE;cbSize:ULONG;
|
---|
| 1352 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1353 | APIENTRY; 'DOSCALLS' index 640;
|
---|
| 1354 | FUNCTION DosResetBuffer(ahFile:HFILE):APIRET;
|
---|
| 1355 | APIENTRY; 'DOSCALLS' index 254;
|
---|
| 1356 | FUNCTION DosSetFilePtr(ahFile:HFILE;ib:LONG;method:ULONG;
|
---|
| 1357 | VAR ibActual:ULONG):APIRET;
|
---|
| 1358 | APIENTRY; 'DOSCALLS' index 256;
|
---|
| 1359 | FUNCTION DosProtectSetFilePtr(ahFile:HFILE;ib:LONG;method:ULONG;
|
---|
| 1360 | VAR ibActual:ULONG;
|
---|
| 1361 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1362 | APIENTRY; 'DOSCALLS' index 621;
|
---|
| 1363 | FUNCTION DosMove(VAR pszOld,pszNew:CSTRING):APIRET;
|
---|
| 1364 | APIENTRY; 'DOSCALLS' index 271;
|
---|
| 1365 | FUNCTION DosCopy(VAR pszOld,pszNew:CSTRING;option:ULONG):APIRET;
|
---|
| 1366 | APIENTRY; 'DOSCALLS' index 258;
|
---|
| 1367 | FUNCTION DosEditName(metalevel:ULONG;VAR pszSource,pszEdit:CSTRING;
|
---|
| 1368 | VAR pszTarget;cbTarget:ULONG):APIRET;
|
---|
| 1369 | APIENTRY; 'DOSCALLS' index 261;
|
---|
| 1370 | FUNCTION DosCreateDir(pszDirName:CSTRING;VAR apeaop2:EAOP2):APIRET;
|
---|
| 1371 | APIENTRY; 'DOSCALLS' index 270;
|
---|
| 1372 | FUNCTION DosDeleteDir(pszDir:CSTRING):APIRET;
|
---|
| 1373 | APIENTRY; 'DOSCALLS' index 226;
|
---|
| 1374 | FUNCTION DosSetDefaultDisk(disknum:ULONG):APIRET;
|
---|
| 1375 | APIENTRY; 'DOSCALLS' index 220;
|
---|
| 1376 | FUNCTION DosQueryCurrentDisk(VAR pdisknum,plogical:ULONG):APIRET;
|
---|
| 1377 | APIENTRY; 'DOSCALLS' index 275;
|
---|
| 1378 | FUNCTION DosSetCurrentDir(pszDir:CSTRING):APIRET;
|
---|
| 1379 | APIENTRY; 'DOSCALLS' index 255;
|
---|
| 1380 | FUNCTION DosQueryCurrentDirAPI(disknum:ULONG;VAR pBuf;
|
---|
| 1381 | VAR pcbBuf:ULONG):APIRET;
|
---|
| 1382 | APIENTRY; 'DOSCALLS' index 274;
|
---|
| 1383 | FUNCTION DosQueryFSInfo(disknum,infolevel:ULONG;VAR pBuf;
|
---|
| 1384 | cbBuf:ULONG):APIRET;
|
---|
| 1385 | APIENTRY; 'DOSCALLS' index 278;
|
---|
| 1386 | FUNCTION DosSetFSInfo(disknum,infolevel:ULONG;VAR pBuf;
|
---|
| 1387 | cbBuf:ULONG):APIRET;
|
---|
| 1388 | APIENTRY; 'DOSCALLS' index 222;
|
---|
| 1389 | FUNCTION DosQueryVerify(VAR apBool:ULONG):APIRET;
|
---|
| 1390 | APIENTRY; 'DOSCALLS' index 225;
|
---|
| 1391 | FUNCTION DosSetVerify(apBool:ULONG):APIRET;
|
---|
| 1392 | APIENTRY; 'DOSCALLS' index 210;
|
---|
| 1393 | FUNCTION DosSetMaxFH(cFH:ULONG):APIRET;
|
---|
| 1394 | APIENTRY; 'DOSCALLS' index 209;
|
---|
| 1395 | FUNCTION DosSetRelMaxFH(VAR pcbReqCount:LONG;
|
---|
| 1396 | VAR pcbCurMaxFH:ULONG):APIRET;
|
---|
| 1397 | APIENTRY; 'DOSCALLS' index 382;
|
---|
| 1398 | FUNCTION DosQueryFileInfo(hf:HFILE;ulInfoLevel:ULONG;
|
---|
| 1399 | VAR pInfo;cbInfoBuf:ULONG):APIRET;
|
---|
| 1400 | APIENTRY; 'DOSCALLS' index 279;
|
---|
| 1401 | FUNCTION DosProtectQueryFileInfo(hf:HFILE;ulInfoLevel:ULONG;
|
---|
| 1402 | VAR pInfo;cbInfoBuf:ULONG;
|
---|
| 1403 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1404 | APIENTRY; 'DOSCALLS' index 646;
|
---|
| 1405 | FUNCTION DosSetFileInfo(hf:HFILE;ulInfoLevel:ULONG;VAR pInfoBuf;
|
---|
| 1406 | cbInfoBuf:ULONG):APIRET;
|
---|
| 1407 | APIENTRY; 'DOSCALLS' index 218;
|
---|
| 1408 | FUNCTION DosProtectSetFileInfo(hf:HFILE;ulInfoLevel:ULONG;VAR pInfoBuf;
|
---|
| 1409 | cbInfoBuf:ULONG;
|
---|
| 1410 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1411 | APIENTRY; 'DOSCALLS' index 643;
|
---|
| 1412 | FUNCTION DosQueryPathInfo(VAR pszPathName:CSTRING;ulInfoLevel:ULONG;VAR pInfoBuf;
|
---|
| 1413 | cbInfoBuf:ULONG):APIRET;
|
---|
| 1414 | APIENTRY; 'DOSCALLS' index 223;
|
---|
| 1415 | FUNCTION DosSetPathInfo(pszPathName:CSTRING;ulInfoLevel:ULONG;VAR pInfoBuf;
|
---|
| 1416 | cbInfoBuf,flOptions:ULONG):APIRET;
|
---|
| 1417 | APIENTRY; 'DOSCALLS' index 219;
|
---|
| 1418 | FUNCTION DosShutdown(ulReserved:ULONG):APIRET;
|
---|
| 1419 | APIENTRY; 'DOSCALLS' index 415;
|
---|
| 1420 | FUNCTION DosEnumAttribute(ulRefType:ULONG;VAR pvFile;ulEntry:ULONG;
|
---|
| 1421 | VAR pvBuf;cbBuf:ULONG;VAR pulCount:ULONG;
|
---|
| 1422 | ulInfoLevel:ULONG):APIRET;
|
---|
| 1423 | APIENTRY; 'DOSCALLS' index 372;
|
---|
| 1424 | FUNCTION DosProtectEnumAttribute(ulRefType:ULONG;VAR pvFile;
|
---|
| 1425 | ulEntry:ULONG;VAR pvBuf;cbBuf:ULONG;
|
---|
| 1426 | VAR pulCount:ULONG;ulInfoLevel:ULONG;
|
---|
| 1427 | fhFileHandleLockID:FHLOCK):APIRET;
|
---|
| 1428 | APIENTRY; 'DOSCALLS' index 636;
|
---|
| 1429 | FUNCTION DosAllocMem(VAR ppb:POINTER;cb,flag:ULONG):APIRET;
|
---|
| 1430 | APIENTRY; 'DOSCALLS' index 299;
|
---|
| 1431 | FUNCTION DosFreeMem(pb:POINTER):APIRET;
|
---|
| 1432 | APIENTRY; 'DOSCALLS' index 304;
|
---|
| 1433 | FUNCTION DosSetMem(pb:POINTER;cb,flag:ULONG):APIRET;
|
---|
| 1434 | APIENTRY; 'DOSCALLS' index 305;
|
---|
| 1435 | FUNCTION DosGiveSharedMem(pb:POINTER;apid:PID;flag:ULONG):APIRET;
|
---|
| 1436 | APIENTRY; 'DOSCALLS' index 303;
|
---|
| 1437 | FUNCTION DosGetSharedMem(pb:POINTER;flag:ULONG):APIRET;
|
---|
| 1438 | APIENTRY; 'DOSCALLS' index 302;
|
---|
| 1439 | FUNCTION DosGetNamedSharedMem(VAR ppb:POINTER;pszName:CSTRING;
|
---|
| 1440 | flag:ULONG):APIRET;
|
---|
| 1441 | APIENTRY; 'DOSCALLS' index 301;
|
---|
| 1442 | FUNCTION DosAllocSharedMem(VAR ppb:POINTER;VAR pszName:CSTRING;
|
---|
| 1443 | cb,flag:ULONG):APIRET;
|
---|
| 1444 | APIENTRY; 'DOSCALLS' index 300;
|
---|
| 1445 | FUNCTION DosQueryMem(pb:POINTER;VAR pcb,pFlag:ULONG):APIRET;
|
---|
| 1446 | APIENTRY; 'DOSCALLS' index 306;
|
---|
| 1447 | FUNCTION DosSubAllocMem(pbBase:POINTER;VAR ppb:POINTER;
|
---|
| 1448 | cb:ULONG):APIRET;
|
---|
| 1449 | APIENTRY; 'DOSCALLS' index 345;
|
---|
| 1450 | FUNCTION DosSubFreeMem(pbBase:POINTER;pb:POINTER;cb:ULONG):APIRET;
|
---|
| 1451 | APIENTRY; 'DOSCALLS' index 346;
|
---|
| 1452 | FUNCTION DosSubSetMem(pbBase:POINTER;flag,cb:ULONG):APIRET;
|
---|
| 1453 | APIENTRY; 'DOSCALLS' index 344;
|
---|
| 1454 | FUNCTION DosSubUnsetMem(pbBase:POINTER):APIRET;
|
---|
| 1455 | APIENTRY; 'DOSCALLS' index 347;
|
---|
| 1456 | FUNCTION DosCreateEventSem(VAR pszName:CSTRING;VAR aphev:HEV;flAttr:ULONG;
|
---|
| 1457 | fState:BOOL):APIRET;
|
---|
| 1458 | APIENTRY; 'DOSCALLS' index 324;
|
---|
| 1459 | FUNCTION DosOpenEventSem (VAR pszName:CSTRING;VAR aphev:HEV):APIRET;
|
---|
| 1460 | APIENTRY; 'DOSCALLS' index 325;
|
---|
| 1461 | FUNCTION DosCloseEventSem(ahev:HEV):APIRET;
|
---|
| 1462 | APIENTRY; 'DOSCALLS' index 326;
|
---|
| 1463 | FUNCTION DosResetEventSem(ahev:HEV;VAR pulPostCt:ULONG):APIRET;
|
---|
| 1464 | APIENTRY; 'DOSCALLS' index 327;
|
---|
| 1465 | FUNCTION DosPostEventSem(ahev:HEV):APIRET;
|
---|
| 1466 | APIENTRY; 'DOSCALLS' index 328;
|
---|
| 1467 | FUNCTION DosWaitEventSem(ahev:HEV;ulTimeout:ULONG):APIRET;
|
---|
| 1468 | APIENTRY; 'DOSCALLS' index 329;
|
---|
| 1469 | FUNCTION DosQueryEventSem(ahev:HEV;VAR pulPostCt:ULONG):APIRET;
|
---|
| 1470 | APIENTRY; 'DOSCALLS' index 330;
|
---|
| 1471 | FUNCTION DosCreateMutexSem(pszName:CSTRING;VAR aphmtx:HMTX;flAttr:ULONG;
|
---|
| 1472 | fState:BOOL):APIRET;
|
---|
| 1473 | APIENTRY; 'DOSCALLS' index 331;
|
---|
| 1474 | FUNCTION DosOpenMutexSem (pszName:CSTRING;VAR phmtx:HMTX):APIRET;
|
---|
| 1475 | APIENTRY; 'DOSCALLS' index 332;
|
---|
| 1476 | FUNCTION DosCloseMutexSem (ahmtx:HMTX):APIRET;
|
---|
| 1477 | APIENTRY; 'DOSCALLS' index 333;
|
---|
| 1478 | FUNCTION DosRequestMutexSem(ahmtx:HMTX;ulTimeout:ULONG):APIRET;
|
---|
| 1479 | APIENTRY; 'DOSCALLS' index 334;
|
---|
| 1480 | FUNCTION DosReleaseMutexSem(ahmtx:HMTX):APIRET;
|
---|
| 1481 | APIENTRY; 'DOSCALLS' index 335;
|
---|
| 1482 | FUNCTION DosQueryMutexSem(ahmtx:HMTX;VAR appid:PID;VAR aptid:TID;
|
---|
| 1483 | VAR pulCount:ULONG):APIRET;
|
---|
| 1484 | APIENTRY; 'DOSCALLS' index 336;
|
---|
| 1485 | FUNCTION DosCreateMuxWaitSem(VAR pszName:CSTRING;VAR aphmux:HMUX;cSemRec:ULONG;
|
---|
| 1486 | VAR pSemRec;flAttr:ULONG):APIRET;
|
---|
| 1487 | APIENTRY; 'DOSCALLS' index 337;
|
---|
| 1488 | FUNCTION DosOpenMuxWaitSem(VAR pszName:CSTRING;VAR aphmux:HMUX):APIRET;
|
---|
| 1489 | APIENTRY; 'DOSCALLS' index 338;
|
---|
| 1490 | FUNCTION DosCloseMuxWaitSem(ahmux:HMUX):APIRET;
|
---|
| 1491 | APIENTRY; 'DOSCALLS' index 339;
|
---|
| 1492 | FUNCTION DosWaitMuxWaitSem(ahmux:HMUX;ulTimeout:ULONG;
|
---|
| 1493 | VAR pulUser:ULONG):APIRET;
|
---|
| 1494 | APIENTRY; 'DOSCALLS' index 340;
|
---|
| 1495 | FUNCTION DosAddMuxWaitSem(ahmux:HMUX;VAR pSemRec:SEMRECORD):APIRET;
|
---|
| 1496 | APIENTRY; 'DOSCALLS' index 341;
|
---|
| 1497 | FUNCTION DosDeleteMuxWaitSem(ahmux:HMUX;ahSem:HSEM):APIRET;
|
---|
| 1498 | APIENTRY; 'DOSCALLS' index 342;
|
---|
| 1499 | FUNCTION DosQueryMuxWaitSem(ahmux:HMUX;VAR pcSemRec:ULONG;
|
---|
| 1500 | VAR pSemRec:SEMRECORD;
|
---|
| 1501 | VAR pflAttr:ULONG):APIRET;
|
---|
| 1502 | APIENTRY; 'DOSCALLS' index 343;
|
---|
| 1503 | FUNCTION DosGetDateTime(VAR pdt:DATETIME):APIRET;
|
---|
| 1504 | APIENTRY; 'DOSCALLS' index 230;
|
---|
| 1505 | FUNCTION DosSetDateTime(VAR pdt:DATETIME):APIRET;
|
---|
| 1506 | APIENTRY; 'DOSCALLS' index 292;
|
---|
| 1507 | FUNCTION DosAsyncTimer(msec:ULONG;ahsem:HSEM;VAR aphtimer:HTIMER):APIRET;
|
---|
| 1508 | APIENTRY; 'DOSCALLS' index 350;
|
---|
| 1509 | FUNCTION DosStartTimer(msec:ULONG;ahsem:HSEM;VAR aphtimer:HTIMER):APIRET;
|
---|
| 1510 | APIENTRY; 'DOSCALLS' index 351;
|
---|
| 1511 | FUNCTION DosStopTimer(ahtimer:HTIMER):APIRET;
|
---|
| 1512 | APIENTRY; 'DOSCALLS' index 290;
|
---|
| 1513 | FUNCTION DosLoadModule(pszName:CSTRING;cbName:ULONG;pszModname:CSTRING;
|
---|
| 1514 | VAR phmod:HMODULE):APIRET;
|
---|
| 1515 | APIENTRY; 'DOSCALLS' index 318;
|
---|
| 1516 | FUNCTION DosFreeModule(hmod:HMODULE):APIRET;
|
---|
| 1517 | APIENTRY; 'DOSCALLS' index 322;
|
---|
| 1518 | FUNCTION DosQueryProcAddr(hmod:HMODULE;ordinal:ULONG;VAR pszName:CSTRING;
|
---|
| 1519 | VAR ppfn:POINTER):APIRET;
|
---|
| 1520 | APIENTRY; 'DOSCALLS' index 321;
|
---|
| 1521 | FUNCTION DosQueryModuleHandle(VAR pszModname:CSTRING;VAR phmod:HMODULE):APIRET;
|
---|
| 1522 | APIENTRY; 'DOSCALLS' index 319;
|
---|
| 1523 | FUNCTION DosQueryModuleName(hmod:HMODULE;cbName:ULONG;VAR apch):APIRET;
|
---|
| 1524 | APIENTRY; 'DOSCALLS' index 320;
|
---|
| 1525 | FUNCTION DosQueryProcType(hmod:HMODULE;ordinal:ULONG;VAR pszName:CSTRING;
|
---|
| 1526 | VAR pulproctype:ULONG):APIRET;
|
---|
| 1527 | APIENTRY; 'DOSCALLS' index 586;
|
---|
| 1528 | FUNCTION DosGetResource(hmod:HMODULE;idType,idName:ULONG;
|
---|
| 1529 | VAR ppb:POINTER):APIRET;
|
---|
| 1530 | APIENTRY; 'DOSCALLS' index 352;
|
---|
| 1531 | FUNCTION DosFreeResource(pb:POINTER):APIRET;
|
---|
| 1532 | APIENTRY; 'DOSCALLS' index 353;
|
---|
| 1533 | FUNCTION DosQueryResourceSize(hmod:HMODULE;idt,idn:ULONG;
|
---|
| 1534 | VAR pulsize:ULONG):APIRET;
|
---|
| 1535 | APIENTRY; 'DOSCALLS' index 572;
|
---|
| 1536 | FUNCTION DosQueryCtryInfo(cb:ULONG;VAR pcc:COUNTRYCODE;VAR pci:COUNTRYINFO;
|
---|
| 1537 | VAR pcbActual:ULONG):APIRET;
|
---|
| 1538 | APIENTRY; 'NLS' index 5;
|
---|
| 1539 | FUNCTION DosQueryDBCSEnv(cb:ULONG;VAR pcc:COUNTRYCODE;
|
---|
| 1540 | VAR pBuf):APIRET;
|
---|
| 1541 | APIENTRY; 'NLS' index 6;
|
---|
| 1542 | FUNCTION DosMapCase(cb:ULONG;VAR pcc:COUNTRYCODE;VAR apch):APIRET;
|
---|
| 1543 | APIENTRY; 'NLS' index 7;
|
---|
| 1544 | FUNCTION DosQueryCollate(cb:ULONG;VAR pcc:COUNTRYCODE;
|
---|
| 1545 | VAR apch;VAR pcch:ULONG):APIRET;
|
---|
| 1546 | APIENTRY; 'NLS' index 8;
|
---|
| 1547 | FUNCTION DosQueryCp(cb:ULONG;VAR arCP,pcCP:ULONG):APIRET;
|
---|
| 1548 | APIENTRY; 'DOSCALLS' index 291;
|
---|
| 1549 | FUNCTION DosSetProcessCp(cp:ULONG):APIRET;
|
---|
| 1550 | APIENTRY; 'DOSCALLS' index 289;
|
---|
| 1551 | FUNCTION DosSetExceptionHandler(VAR PERegrec:EXCEPTIONREGISTRATIONRECORD):APIRET;
|
---|
| 1552 | APIENTRY; 'DOSCALLS' index 354;
|
---|
| 1553 | FUNCTION DosUnsetExceptionHandler(VAR PERegRec:EXCEPTIONREGISTRATIONRECORD):APIRET;
|
---|
| 1554 | APIENTRY; 'DOSCALLS' index 355;
|
---|
| 1555 | FUNCTION DosRaiseException(VAR Pexcept:EXCEPTIONREPORTRECORD):APIRET;
|
---|
| 1556 | APIENTRY; 'DOSCALLS' index 356;
|
---|
| 1557 | FUNCTION DosSendSignalException(apid:PID;exception:ULONG):APIRET;
|
---|
| 1558 | APIENTRY; 'DOSCALLS' index 379;
|
---|
| 1559 | FUNCTION DosUnwindException(VAR pHandler:EXCEPTIONREGISTRATIONRECORD;
|
---|
| 1560 | VAR pTargetIP;
|
---|
| 1561 | VAR pERepRec:EXCEPTIONREPORTRECORD):APIRET;
|
---|
| 1562 | APIENTRY; 'DOSCALLS' index 357;
|
---|
| 1563 | FUNCTION DosSetSignalExceptionFocus(flag:BOOL;VAR pulTimes:ULONG):APIRET;
|
---|
| 1564 | APIENTRY; 'DOSCALLS' index 378;
|
---|
| 1565 | FUNCTION DosEnterMustComplete(VAR pulNesting:ULONG):APIRET;
|
---|
| 1566 | APIENTRY; 'DOSCALLS' index 380;
|
---|
| 1567 | FUNCTION DosExitMustComplete(VAR pulNesting:ULONG):APIRET;
|
---|
| 1568 | APIENTRY; 'DOSCALLS' index 381;
|
---|
| 1569 | FUNCTION DosAcknowledgeSignalException(ulSignalNum:ULONG):APIRET;
|
---|
| 1570 | APIENTRY; 'DOSCALLS' index 418;
|
---|
| 1571 | FUNCTION DosCreatePipe(VAR phfRead,phfWrite:HFILE;cb:ULONG):APIRET;
|
---|
| 1572 | APIENTRY; 'DOSCALLS' index 239;
|
---|
| 1573 | FUNCTION DosCloseQueue(hq:HQUEUE):APIRET;
|
---|
| 1574 | APIENTRY; 'QUECALLS' index 11;
|
---|
| 1575 | FUNCTION DosCreateQueue(VAR phq:HQUEUE;priority:ULONG;VAR pszName:CSTRING):APIRET;
|
---|
| 1576 | APIENTRY; 'QUECALLS' index 16;
|
---|
| 1577 | FUNCTION DosOpenQueue(VAR appid:PID;VAR phq:HQUEUE;VAR pszName:CSTRING):APIRET;
|
---|
| 1578 | APIENTRY; 'QUECALLS' index 15;
|
---|
| 1579 | FUNCTION DosPeekQueue(hq:HQUEUE;VAR pRequest:REQUESTDATA;VAR pcbData:ULONG;
|
---|
| 1580 | VAR ppbuf;VAR element:ULONG;nowait:BOOL;
|
---|
| 1581 | VAR ppriority;hsem:HEV):APIRET;
|
---|
| 1582 | APIENTRY; 'QUECALLS' index 13;
|
---|
| 1583 | FUNCTION DosPurgeQueue(hq:HQUEUE):APIRET;
|
---|
| 1584 | APIENTRY; 'QUECALLS' index 10;
|
---|
| 1585 | FUNCTION DosQueryQueue(hq:HQUEUE;VAR pcbEntries:ULONG):APIRET;
|
---|
| 1586 | APIENTRY; 'QUECALLS' index 12;
|
---|
| 1587 | FUNCTION DosReadQueue(hq:HQUEUE;VAR pRequest:REQUESTDATA;VAR pcbData:ULONG;
|
---|
| 1588 | VAR ppbuf;element:ULONG;wait:BOOL;
|
---|
| 1589 | VAR ppriority;hsem:HEV):APIRET;
|
---|
| 1590 | APIENTRY; 'QUECALLS' index 9;
|
---|
| 1591 | FUNCTION DosWriteQueue(hq:HQUEUE;request,cbData:ULONG;VAR pbData;
|
---|
| 1592 | priority:ULONG):APIRET;
|
---|
| 1593 | APIENTRY; 'QUECALLS' index 14;
|
---|
| 1594 | FUNCTION DosErrorAPI(error:ULONG):APIRET;
|
---|
| 1595 | APIENTRY; 'DOSCALLS' index 212;
|
---|
| 1596 | FUNCTION DosErrClass(code:ULONG;VAR pClass,pAction,pLocus:ULONG):APIRET;
|
---|
| 1597 | APIENTRY; 'DOSCALLS' index 211;
|
---|
| 1598 | FUNCTION DosInsertMessage(VAR pTable;cTable:ULONG;VAR pszMsg:CSTRING;cbMsg:ULONG;
|
---|
| 1599 | VAR pBuf;cbBuf:ULONG;VAR pcbMsg:ULONG):APIRET;
|
---|
| 1600 | APIENTRY; 'MSG' index 4;
|
---|
| 1601 | FUNCTION DosPutMessage(ahfile:HFILE;cbMsg:ULONG;VAR pBuf):APIRET;
|
---|
| 1602 | APIENTRY; 'MSG' index 5;
|
---|
| 1603 | FUNCTION DosQuerySysInfo(iStart,iLast:ULONG;VAR pBuf;cbBuf:ULONG):APIRET;
|
---|
| 1604 | APIENTRY; 'DOSCALLS' index 348;
|
---|
| 1605 | FUNCTION DosScanEnv(VAR pszName:CSTRING;VAR ppszValue:PCHAR):APIRET;
|
---|
| 1606 | APIENTRY; 'DOSCALLS' index 227;
|
---|
| 1607 | FUNCTION DosSearchPath(flag:ULONG;VAR pszPathOrName,pszFilename:CSTRING;
|
---|
| 1608 | VAR pBuf;cbBuf:ULONG):APIRET;
|
---|
| 1609 | APIENTRY; 'DOSCALLS' index 228;
|
---|
| 1610 | FUNCTION DosQueryRASInfo(index:ULONG;VAR Addr:POINTER):APIRET;
|
---|
| 1611 | APIENTRY; 'DOSCALLS' index 112;
|
---|
| 1612 | FUNCTION DosStartSession(VAR psd:STARTDATA;VAR pidSession:ULONG;
|
---|
| 1613 | VAR appid:PID):APIRET;
|
---|
| 1614 | APIENTRY; 'SESMGR' index 37;
|
---|
| 1615 | FUNCTION DosSetSession(idSession:ULONG;VAR psd:STATUSDATA):APIRET;
|
---|
| 1616 | APIENTRY; 'SESMGR' index 39;
|
---|
| 1617 | FUNCTION DosSelectSessionAPI(idSession:ULONG):APIRET;
|
---|
| 1618 | APIENTRY; 'SESMGR' index 38;
|
---|
| 1619 | FUNCTION DosStopSession(scope,idSession:ULONG):APIRET;
|
---|
| 1620 | APIENTRY; 'SESMGR' index 40;
|
---|
| 1621 | FUNCTION DosQueryAppType(CONST pszName:CSTRING;VAR pFlags:ULONG):APIRET;
|
---|
| 1622 | APIENTRY; 'DOSCALLS' index 323;
|
---|
| 1623 | FUNCTION DosDevConfig(VAR pdevinfo;item:ULONG):APIRET;
|
---|
| 1624 | APIENTRY; 'DOSCALLS' index 231;
|
---|
| 1625 | FUNCTION DosDevIOCtl(hDevice:HFILE;category,afunction:ULONG;
|
---|
| 1626 | VAR pParams;cbParmLenMax:ULONG;VAR pcbParmLen:ULONG;
|
---|
| 1627 | VAR pData;cbDataLenMax:ULONG;VAR pcbDataLen:ULONG):APIRET;
|
---|
| 1628 | APIENTRY; 'DOSCALLS' index 284;
|
---|
| 1629 | FUNCTION DosPhysicalDisk(afunction:ULONG;VAR pBuf;cbBuf:ULONG;
|
---|
| 1630 | VAR pParams;cbParams:ULONG):APIRET;
|
---|
| 1631 | APIENTRY; 'DOSCALLS' index 287;
|
---|
| 1632 | FUNCTION DosCallNPipe(VAR pszName:CSTRING;VAR pInbuf;cbIn:ULONG;VAR pOutbuf;
|
---|
| 1633 | cbOut:ULONG;VAR pcbActual:ULONG;msec:ULONG):APIRET;
|
---|
| 1634 | APIENTRY; 'DOSCALLS' index 240;
|
---|
| 1635 | FUNCTION DosConnectNPipe(ahpipe:HPIPE):APIRET;
|
---|
| 1636 | APIENTRY; 'DOSCALLS' index 241;
|
---|
| 1637 | FUNCTION DosDisConnectNPipe(ahpipe:HPIPE):APIRET;
|
---|
| 1638 | APIENTRY; 'DOSCALLS' index 242;
|
---|
| 1639 | FUNCTION DosCreateNPipe(VAR pszName:CSTRING;VAR apHpipe:HPIPE;openmode,pipemode,
|
---|
| 1640 | cbInbuf,cbOutbuf,msec:ULONG):APIRET;
|
---|
| 1641 | APIENTRY; 'DOSCALLS' index 243;
|
---|
| 1642 | FUNCTION DosPeekNPipe(ahpipe:HPIPE;VAR pBuf;cbBuf:ULONG;VAR pcbActual:ULONG;
|
---|
| 1643 | VAR pAvail:AVAILDATA;VAR pState:ULONG):APIRET;
|
---|
| 1644 | APIENTRY; 'DOSCALLS' index 244;
|
---|
| 1645 | FUNCTION DosQueryNPHState(ahpipe:HPIPE;VAR pState:ULONG):APIRET;
|
---|
| 1646 | APIENTRY; 'DOSCALLS' index 245;
|
---|
| 1647 | FUNCTION DosQueryNPipeInfo(ahpipe:HPIPE;infolevel:ULONG;VAR pBuf;
|
---|
| 1648 | cbBuf:ULONG):APIRET;
|
---|
| 1649 | APIENTRY; 'DOSCALLS' index 248;
|
---|
| 1650 | FUNCTION DosQueryNPipeSemState(ahsem:HSEM;VAR pnpss:PIPESEMSTATE;
|
---|
| 1651 | cbBuf:ULONG):APIRET;
|
---|
| 1652 | APIENTRY; 'DOSCALLS' index 249;
|
---|
| 1653 | FUNCTION DosRawReadNPipe(VAR pszName:CSTRING;cb:ULONG;VAR pLen:ULONG;
|
---|
| 1654 | VAR pBuf):APIRET;
|
---|
| 1655 | APIENTRY; 'DOSCALLS' index 246;
|
---|
| 1656 | FUNCTION DosRawWriteNPipe(VAR pszName:CSTRING;cb:ULONG):APIRET;
|
---|
| 1657 | APIENTRY; 'DOSCALLS' index 247;
|
---|
| 1658 | FUNCTION DosSetNPHState(ahpipe:HPIPE;state:ULONG):APIRET;
|
---|
| 1659 | APIENTRY; 'DOSCALLS' index 250;
|
---|
| 1660 | FUNCTION DosSetNPipeSem(ahpipe:HPIPE;ahsem:HSEM;key:ULONG):APIRET;
|
---|
| 1661 | APIENTRY; 'DOSCALLS' index 251;
|
---|
| 1662 | FUNCTION DosTransactNPipe(ahpipe:HPIPE;VAR pOutbuf;cbOut:ULONG;
|
---|
| 1663 | VAR pInbuf;cbIn:ULONG;VAR pcbRead:ULONG):APIRET;
|
---|
| 1664 | APIENTRY; 'DOSCALLS' index 252;
|
---|
| 1665 | FUNCTION DosWaitNPipe(VAR pszName:CSTRING;msec:ULONG):APIRET;
|
---|
| 1666 | APIENTRY; 'DOSCALLS' index 253;
|
---|
| 1667 | FUNCTION DosTmrQueryFreq(VAR pulTmrFreq:ULONG):APIRET;
|
---|
| 1668 | APIENTRY; 'DOSCALLS' index 362;
|
---|
| 1669 | FUNCTION DosTmrQueryTime(VAR pqwTmrTime):APIRET;
|
---|
| 1670 | APIENTRY; 'DOSCALLS' index 363;
|
---|
| 1671 | FUNCTION DosRegisterPerfCtrs(VAR pbDataBlk;VAR pbTextBlk;
|
---|
| 1672 | flFlags:ULONG):APIRET;
|
---|
| 1673 | APIENTRY; 'DOSCALLS' index 367;
|
---|
| 1674 | FUNCTION DosOpenVDD(VAR pszVDD:CSTRING;VAR aphvdd:HVDD):APIRET;
|
---|
| 1675 | APIENTRY; 'DOSCALLS' index 308;
|
---|
| 1676 | FUNCTION DosRequestVDD(ahvdd:HVDD;asgid:SGID;cmd,cbInput:ULONG;VAR pInput;
|
---|
| 1677 | cbOutput:ULONG;VAR pOutput):APIRET;
|
---|
| 1678 | APIENTRY; 'DOSCALLS' index 309;
|
---|
| 1679 | FUNCTION DosCloseVDD(ahvdd:HVDD):APIRET;
|
---|
| 1680 | APIENTRY; 'DOSCALLS' index 310;
|
---|
| 1681 | FUNCTION DosQueryDOSProperty(asgid:SGID;VAR pszName:CSTRING;cb:ULONG;VAR apch):APIRET;
|
---|
| 1682 | APIENTRY; 'DOSCALLS' index 373;
|
---|
| 1683 | FUNCTION DosSetDOSProperty(asgid:SGID;VAR pszName:CSTRING;cb:ULONG;pch:CSTRING):APIRET;
|
---|
| 1684 | APIENTRY; 'DOSCALLS' index 374;
|
---|
| 1685 |
|
---|
| 1686 | END; {IMPORTS}
|
---|
| 1687 |
|
---|
| 1688 |
|
---|
| 1689 | {OS/2 API errors ??}
|
---|
| 1690 |
|
---|
| 1691 | {exception instance is deleted if pBuf crosses 64K boundary}
|
---|
| 1692 | FUNCTION DosQueryCurrentDir(disknum:LONGWORD;VAR pBuf;
|
---|
| 1693 | VAR pcbBuf:LONGWORD):LONGWORD;
|
---|
| 1694 |
|
---|
| 1695 | {ds and es are zeroed under some circumstances}
|
---|
| 1696 | FUNCTION DosSelectSession(idSession:ULONG):APIRET;
|
---|
| 1697 |
|
---|
| 1698 | {additional parameter required in redirected function}
|
---|
| 1699 | FUNCTION DosQueryMessageCP(VAR pb;cb:ULONG;VAR pszFilename:CSTRING;
|
---|
| 1700 | VAR cbBuf:ULONG):APIRET;
|
---|
| 1701 |
|
---|
| 1702 | {additional parameter required in redirected function}
|
---|
| 1703 | FUNCTION DosGetMessage(VAR pTable;cTable:ULONG; VAR pBuf;cbBuf,msgnumber:ULONG;
|
---|
| 1704 | CONST pszFile:CSTRING;VAR pcbMsg:ULONG):APIRET;
|
---|
| 1705 |
|
---|
| 1706 |
|
---|
| 1707 | IMPLEMENTATION
|
---|
| 1708 |
|
---|
| 1709 |
|
---|
| 1710 | FUNCTION DosQueryCurrentDir(disknum:LONGWORD;VAR pBuf;
|
---|
| 1711 | VAR pcbBuf:LONGWORD):LONGWORD;
|
---|
| 1712 | BEGIN
|
---|
| 1713 | //a bug in OS/2 ??
|
---|
| 1714 | //exception instance is deleted if pBuf crosses 64K boundary
|
---|
| 1715 | ASM
|
---|
| 1716 | XOR EAX,EAX
|
---|
| 1717 | DB $64,$FF,$30 //PUSHD FS:[EAX]
|
---|
| 1718 | END;
|
---|
| 1719 | Result := DosQueryCurrentDirAPI(disknum,pBuf,pcbBuf);
|
---|
| 1720 | ASM
|
---|
| 1721 | XOR EAX,EAX
|
---|
| 1722 | DB $64,$8F,$00 //POPD FS:[EAX]
|
---|
| 1723 | END;
|
---|
| 1724 | END;
|
---|
| 1725 |
|
---|
| 1726 |
|
---|
| 1727 | FUNCTION DosSelectSession(idSession:ULONG):APIRET;
|
---|
| 1728 | BEGIN
|
---|
| 1729 | //a bug in OS/2 ???
|
---|
| 1730 | //DS and ES are sometimes set to 0 selectors !
|
---|
| 1731 | ASM
|
---|
| 1732 | DB $1E,06 //PUSH DS PUSH ES
|
---|
| 1733 | END;
|
---|
| 1734 | Result := DosSelectSessionAPI(idSession);
|
---|
| 1735 | ASM
|
---|
| 1736 | DB 07,$1F //POP ES POP DS
|
---|
| 1737 | END;
|
---|
| 1738 | END;
|
---|
| 1739 |
|
---|
| 1740 |
|
---|
| 1741 |
|
---|
| 1742 |
|
---|
| 1743 | IMPORTS
|
---|
| 1744 |
|
---|
| 1745 | FUNCTION DosIQueryMessageCP(VAR pb;cb:ULONG;VAR pszFilename:CSTRING;
|
---|
| 1746 | VAR cbBuf:ULONG;Signature:POINTER):APIRET;
|
---|
| 1747 | APIENTRY; 'MSG' index 8;
|
---|
| 1748 | FUNCTION DosTrueGetMessage(Signature:POINTER;VAR pTable;cTable:ULONG;
|
---|
| 1749 | VAR pBuf;cbBuf,msgnumber:ULONG;
|
---|
| 1750 | CONST pszFile:CSTRING;VAR pcbMsg:ULONG):APIRET;
|
---|
| 1751 | APIENTRY; 'MSG' index 6;
|
---|
| 1752 |
|
---|
| 1753 | END; {IMPORTS}
|
---|
| 1754 |
|
---|
| 1755 | VAR
|
---|
| 1756 | MagicHeaderAddress:POINTER;
|
---|
| 1757 | MagicEndAddress:POINTER;
|
---|
| 1758 |
|
---|
| 1759 | {start of _MSGSEG32 segment}
|
---|
| 1760 | ASSEMBLER
|
---|
| 1761 | BseDos.!MagicHeaderStart PROC NEAR32
|
---|
| 1762 | DB $0FF
|
---|
| 1763 | DB $4D,$53,$47,$53,$45,$47,$33,$32, 0 //'MSGSEG32'
|
---|
| 1764 | DD $8001
|
---|
| 1765 | DD @BseDos.!MAGICHEADEREND
|
---|
| 1766 | BseDos.!MagicHeaderStart ENDP
|
---|
| 1767 | END;
|
---|
| 1768 |
|
---|
| 1769 | FUNCTION DosGetMessage(VAR pTable;cTable:ULONG; VAR pBuf;cbBuf,msgnumber:ULONG;
|
---|
| 1770 | CONST pszFile:CSTRING;VAR pcbMsg:ULONG):APIRET;
|
---|
| 1771 | BEGIN
|
---|
| 1772 | Result := DosTrueGetMessage(MagicHeaderAddress,pTable,cTable,
|
---|
| 1773 | pBuf,cbBuf,msgnumber,pszFile,pcbMsg);
|
---|
| 1774 | END;
|
---|
| 1775 |
|
---|
| 1776 |
|
---|
| 1777 | FUNCTION DosQueryMessageCP(VAR pb;cb:ULONG;VAR pszFilename:CSTRING;
|
---|
| 1778 | VAR cbBuf:ULONG):APIRET;
|
---|
| 1779 | BEGIN
|
---|
| 1780 | Result := DosIQueryMessageCP(pb,cb,pszFileName,cbBuf,MagicEndAddress);
|
---|
| 1781 | END;
|
---|
| 1782 |
|
---|
| 1783 | ASSEMBLER
|
---|
| 1784 | BseDos.!MagicHeaderEnd PROC NEAR32
|
---|
| 1785 | DD $0FFFF0000
|
---|
| 1786 | BseDos.!MagicHeaderEnd ENDP
|
---|
| 1787 | END;
|
---|
| 1788 |
|
---|
| 1789 | BEGIN
|
---|
| 1790 | ASM
|
---|
| 1791 | MOV EAX,@BseDos.!MagicHeaderStart
|
---|
| 1792 | MOV BseDos.MagicHeaderAddress,EAX
|
---|
| 1793 | MOV EAX,@BseDos.!MagicHeaderEnd
|
---|
| 1794 | MOV BseDos.MagicEndAddress,EAX
|
---|
| 1795 | END;
|
---|
| 1796 | END.
|
---|