home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / famapi.zip / INCLUDE.ZIP / OS2 / DOSCALLS.H < prev    next >
C/C++ Source or Header  |  1993-01-25  |  16KB  |  514 lines

  1. //
  2. //    *******************************************************************
  3. //      JdeBP C++ Library Routines      General Public Licence v1.00
  4. //          Copyright (c) 1991,1992  Jonathan de Boyne Pollard
  5. //    *******************************************************************
  6. //
  7.  
  8. //
  9. //  OS/2 DOS API
  10. //
  11.  
  12. #ifndef _DOSTYPES_DEFINED
  13.  
  14. typedef struct {
  15.     unsigned day:   5;
  16.     unsigned month: 4;
  17.     unsigned year:  7;
  18. } FDATE ;
  19.  
  20. typedef struct {
  21.     unsigned twosecs:   5;
  22.     unsigned minutes:   6;
  23.     unsigned hours:     5;
  24. } FTIME ;
  25.  
  26. typedef struct {
  27.     unsigned char   hours;
  28.     unsigned char   minutes;
  29.     unsigned char   seconds;
  30.     unsigned char   hundredths;
  31.     unsigned char   day;
  32.     unsigned char   month;
  33.     unsigned short  year;
  34.     short           timezone;
  35.     unsigned char   weekday;
  36. } DOSDATETIME;
  37.  
  38. typedef struct {
  39.     unsigned short country;
  40.     unsigned short codepage;
  41. } DOSCOUNTRYCODE;
  42.  
  43. typedef struct {
  44.     FDATE   fdateCreation;
  45.     FTIME   ftimeCreation;
  46.     FDATE   fdateLastAccess;
  47.     FTIME   ftimeLastAccess;
  48.     FDATE   fdateLastWrite;
  49.     FTIME   ftimeLastWrite;
  50.     unsigned long  cbFile;
  51.     unsigned long  cbFileAlloc;
  52.     unsigned short attrFile;
  53. } DOSFILESTATUS;
  54.  
  55. typedef struct {
  56.     unsigned short country;
  57.     unsigned short codepage;
  58.     unsigned short fsDateFmt;
  59.     char   szCurrency[5];
  60.     char   szThousandsSeparator[2];
  61.     char   szDecimal[2];
  62.     char   szDateSeparator[2];
  63.     char   szTimeSeparator[2];
  64.     unsigned char  fsCurrencyFmt;
  65.     unsigned char  cDecimalPlace;
  66.     unsigned char  fsTimeFmt;
  67.     unsigned short abReserved1[2];
  68.     char   szDataSeparator[2];
  69.     unsigned short abReserved2[5];
  70. } DOSCOUNTRYINFO;
  71.  
  72. typedef struct {
  73.     unsigned long  idFileSystem;
  74.     unsigned long  cSectorUnit;
  75.     unsigned long  cUnit;
  76.     unsigned long  cUnitAvail;
  77.     unsigned short cbSector;
  78. } FSALLOCATE;
  79.  
  80. #define CCHMAXPATHCOMP    256        /* Support for HPFS long filenames */
  81.  
  82. typedef struct {
  83.     FDATE   fdateCreation;
  84.     FTIME   ftimeCreation;
  85.     FDATE   fdateLastAccess;
  86.     FTIME   ftimeLastAccess;
  87.     FDATE   fdateLastWrite;
  88.     FTIME   ftimeLastWrite;
  89.     unsigned long   cbFile;
  90.     unsigned long   cbFileAlloc;
  91.     unsigned int    attrFile;
  92.     unsigned char   cchName;
  93.     char            achName[CCHMAXPATHCOMP];
  94. } FILEFINDBUF ;
  95.  
  96. typedef struct {
  97.     unsigned int    pid ;
  98.     unsigned int    tid ;
  99.     unsigned int    pidParent ;
  100. } PIDINFO ;
  101.  
  102. typedef struct {
  103.     unsigned int    codeTerminate ;
  104.     unsigned int    codeResult ;
  105. } RESULTCODES ;
  106.  
  107. typedef struct {
  108.     ULONG   time;
  109.     ULONG   msecs;
  110.     UCHAR   hour;
  111.     UCHAR   minutes;
  112.     UCHAR   seconds;
  113.     UCHAR   hundredths;
  114.     USHORT  timezone;
  115.     USHORT  cusecTimerInterval;
  116.     UCHAR   day;
  117.     UCHAR   month;
  118.     USHORT  year;
  119.     UCHAR   weekday;
  120.     UCHAR   uchMajorVersion;
  121.     UCHAR   uchMinorVersion;
  122.     UCHAR   chRevisionLetter;
  123.     UCHAR   sgCurrent;
  124.     UCHAR   sgMax;
  125.     UCHAR   cHugeShift;
  126.     UCHAR   fProtectModeOnly;
  127.     USHORT  pidForeground;
  128.     UCHAR   fDynamicSched;
  129.     UCHAR   csecMaxWait;
  130.     USHORT  cmsecMinSlice;
  131.     USHORT  cmsecMaxSlice;
  132.     USHORT  bootdrive;
  133.     UCHAR   amecRAS[32];
  134. } GINFOSEG;
  135.  
  136. typedef struct {
  137.     USHORT  pidCurrent;
  138.     USHORT  pidParent;
  139.     USHORT  prtyCurrent;
  140.     USHORT  tidCurrent;
  141.     USHORT  sgCurrent;
  142.     USHORT  sgSub;
  143.     USHORT  fForeground;
  144. } LINFOSEG;
  145.  
  146. typedef struct {
  147.     USHORT zero;
  148.     USHORT hsem;
  149. } MUXSEM;
  150.  
  151. typedef struct {
  152.     USHORT  cmxs;
  153.     MUXSEM  amxs[16];
  154. } MUXSEMLIST;
  155.  
  156. typedef struct {
  157.     USHORT cb;
  158.     USHORT Related;
  159.     USHORT FgBg;
  160.     USHORT TraceOpt;
  161.     const UCHAR far *PgmTitle;
  162.     const UCHAR far *PgmName;
  163.     BYTE  far *PgmInputs;
  164.     BYTE  far *TermQ;
  165. } STARTDATA;
  166.  
  167. typedef struct {
  168.     USHORT cb;
  169.     USHORT SelectInd;
  170.     USHORT BindInd;
  171. } STATUSDATA;
  172.  
  173. #define _DOSTYPES_DEFINED
  174. #endif
  175.  
  176. extern "C" {
  177.  
  178.  
  179.  
  180. #if defined(INCL_DOS) || defined(INCL_DOSPROCESS)
  181.  
  182. void  _APICALL  DosBeep     (USHORT, USHORT);
  183. void  _APICALL  DosExit     (USHORT, USHORT);
  184.  
  185. #define EXIT_THREAD         0
  186. #define EXIT_PROCESS        1
  187.  
  188. USHORT _APICALL DosCreateThread (void (far *)(void), UINT far *, unsigned char far *) ;
  189. USHORT _APICALL DosResumeThread (UINT) ;
  190. USHORT _APICALL DosSuspendThread (UINT) ;
  191.  
  192. USHORT _APICALL DosCWait (UINT, UINT, RESULTCODES far *, UINT far *, UINT) ;
  193. void  _APICALL  DosSleep    (unsigned long);
  194.  
  195. #define DCWA_PROCESS        0
  196. #define DCWA_PROCESSTREE    1
  197. #define DCWW_WAIT   0
  198. #define DCWW_NOWAIT 1
  199.  
  200. #define TC_EXIT          0
  201. #define TC_HARDERROR     1
  202. #define TC_TRAP          2
  203. #define TC_KILLPROCESS   3
  204.  
  205. USHORT _APICALL DosEnterCritSec (void) ;
  206. USHORT _APICALL DosExitCritSec (void) ;
  207. USHORT _APICALL DosExitList (UINT, void (far *)(UINT)) ;
  208.  
  209. #define EXLST_ADD       1
  210. #define EXLST_REMOVE    2
  211. #define EXLST_EXIT      3
  212.  
  213. USHORT _APICALL DosExecPgm (char far *, USHORT, USHORT, char far *, char far *, RESULTCODES far *, char far *);
  214.  
  215. #define EXEC_SYNC           0
  216. #define EXEC_ASYNC          1
  217. #define EXEC_ASYNCRESULT    2
  218. #define EXEC_TRACE          3
  219. #define EXEC_BACKGROUND     4
  220. #define EXEC_LOAD           5
  221.  
  222. USHORT _APICALL DosGetPid   (PIDINFO far *);
  223. USHORT _APICALL DosGetPrty (UINT, UINT far *, UINT) ;
  224. USHORT _APICALL DosSetPrty (UINT, UINT, short int, UINT) ;
  225.  
  226. #define PRTYS_PROCESS       0
  227. #define PRTYS_PROCESSTREE   1
  228. #define PRTYS_THREAD        2
  229.  
  230. #define PRTYC_NOCHANGE      0
  231. #define PRTYC_IDLETIME      1
  232. #define PRTYC_REGULAR       2
  233. #define PRTYC_TIMECRITICAL  3
  234.  
  235. USHORT _APICALL DosKillProcess (UINT, UINT) ;
  236.  
  237. #define DKP_PROCESS         0
  238. #define DKP_PROCESSTREE     1
  239.  
  240. #endif /* INCL_DOSPROCESS */
  241.  
  242.  
  243.  
  244.  
  245. #if defined(INCL_DOS) || defined(INCL_DOSINFOSEG)
  246.  
  247. #define PT_FULLSCREEN       0
  248. #define PT_REALMODE         1
  249. #define PT_WINDOWABLEVIO    2
  250. #define PT_PM               3
  251. #define PT_DETACHED         4
  252.  
  253. USHORT _APICALL DosGetInfoSeg (USHORT far *, USHORT far *) ;
  254.  
  255. #endif /* INCL_DOSINFOSEG */
  256.  
  257.  
  258.  
  259.  
  260. #if defined(INCL_DOS) || defined(INCL_DOSFILEMGR)
  261.  
  262. USHORT _APICALL DosClose    (USHORT);
  263. USHORT _APICALL DosOpen     (const char far *, USHORT far *, unsigned int far *, unsigned long, unsigned int, unsigned int, unsigned int, unsigned long);
  264. USHORT _APICALL DosRead     (USHORT, void far *, USHORT, USHORT far *);
  265. USHORT _APICALL DosWrite    (USHORT, void far *, USHORT, USHORT far *);
  266. USHORT _APICALL DosBufReset (USHORT);
  267. USHORT _APICALL DosChdir    (const char far *);
  268. USHORT _APICALL DosChgFilePtr (USHORT, long, USHORT, long far *);
  269. USHORT _APICALL DosDelete   (const char far *, unsigned long);
  270. USHORT _APICALL DosDupHandle (USHORT, USHORT far *);
  271. USHORT _APICALL DosFileLocks (USHORT, long far *, long far *);
  272. USHORT _APICALL DosFindClose (USHORT) ;
  273. USHORT _APICALL DosFindFirst (char far *, USHORT far *, unsigned int, FILEFINDBUF far *, unsigned int, unsigned int far *, unsigned long);
  274. USHORT _APICALL DosFindNext (USHORT, FILEFINDBUF far *, unsigned int, unsigned int far *);
  275. USHORT _APICALL DosNewSize  (USHORT, unsigned long);
  276. USHORT _APICALL DosMkdir    (const char far *, unsigned long);
  277. USHORT _APICALL DosMove     (const char far *, const char far *, unsigned long);
  278. USHORT _APICALL DosQCurDir  (USHORT, char far *, USHORT far *);
  279. USHORT _APICALL DosQCurDisk (USHORT far *, unsigned long far *);
  280. USHORT _APICALL DosQFHandState (USHORT, USHORT far *);
  281. USHORT _APICALL DosQFileInfo (USHORT, USHORT, DOSFILESTATUS far *, USHORT);
  282. USHORT _APICALL DosQFileMode (const char far *, USHORT far *, unsigned long);
  283. USHORT _APICALL DosQFSInfo  (USHORT, USHORT, BYTE far *, USHORT);
  284. USHORT _APICALL DosQHandType (USHORT, USHORT far *, USHORT far *);
  285. USHORT _APICALL DosQVerify  (USHORT far *);
  286. USHORT _APICALL DosReadAsync (USHORT, unsigned long far *, USHORT far *, void far *, USHORT, USHORT far *) ;
  287. USHORT _APICALL DosRmdir    (const char far *, unsigned long);
  288. USHORT _APICALL DosSelectDisk (USHORT);
  289. USHORT _APICALL DosSetFHandState (USHORT, USHORT);
  290. USHORT _APICALL DosSetFileInfo (USHORT, USHORT, DOSFILESTATUS far *, USHORT);
  291. USHORT _APICALL DosSetFileMode (const char far *, USHORT, unsigned long);
  292. USHORT _APICALL DosSetFSInfo (USHORT, USHORT, BYTE far *, USHORT);
  293. USHORT _APICALL DosSetMaxFH (USHORT);
  294. USHORT _APICALL DosSetVerify (USHORT);
  295. USHORT _APICALL DosWriteAsync (USHORT, unsigned long far *, USHORT far *, void far *, USHORT, USHORT far *) ;
  296.  
  297. #endif /* INCL_DOSFILEMGR */
  298.  
  299.  
  300.  
  301.  
  302.  
  303. #if defined(INCL_DOS) || defined(INCL_DOSMEMMGR)
  304.  
  305. USHORT _APICALL DosAllocSeg (USHORT, USHORT far *, USHORT);
  306. USHORT _APICALL DosFreeSeg  (USHORT);
  307. USHORT _APICALL DosMemAvail (ULONG far *);
  308. USHORT _APICALL DosReallocSeg (USHORT, USHORT);
  309.  
  310. #define SEG_GIVEABLE        0x0001
  311. #define SEG_GETTABLE        0x0002
  312. #define SEG_DISCARDABLE     0x0004
  313.  
  314. USHORT _APICALL DosLockSeg (USHORT) ;
  315. USHORT _APICALL DosUnlockSeg (USHORT) ;
  316.  
  317. USHORT _APICALL DosAllocHuge (USHORT, USHORT, USHORT far *, USHORT, USHORT);
  318. USHORT _APICALL DosGetHugeShift (USHORT far *);
  319. USHORT _APICALL DosReallocHuge (USHORT, USHORT, USHORT);
  320.  
  321. USHORT _APICALL DosAllocShrSeg (UINT, char far *, USHORT far *) ;
  322. USHORT _APICALL DosGiveSeg  (USHORT, USHORT, USHORT far *);
  323. USHORT _APICALL DosGetSeg   (USHORT);
  324. USHORT _APICALL DosGetShrSeg (char far *, USHORT far *) ;
  325.  
  326. USHORT _APICALL DosSubAlloc (USHORT, USHORT far *, USHORT);
  327. USHORT _APICALL DosSubFree  (USHORT, USHORT, USHORT);
  328. USHORT _APICALL DosSubSet   (USHORT, USHORT, USHORT);
  329.  
  330. USHORT _APICALL DosCreateCSAlias (USHORT, USHORT far *) ;
  331.  
  332. #endif /* INCL_DOSMEMMGR */
  333.  
  334.  
  335. #if defined(INCL_DOS) || defined(INCL_DOSSEMAPHORES)
  336.  
  337. //USHORT _APICALL DosCloseSem(HSEM);
  338. //USHORT _APICALL DosCreateSem(USHORT, PHSYSSEM, PSZ);
  339. //USHORT _APICALL DosOpenSem(PHSEM, PSZ);
  340. //USHORT _APICALL DosSemClear(HSEM);
  341. //USHORT _APICALL DosSemRequest(HSEM, LONG);
  342. //USHORT _APICALL DosSemSet(HSEM);
  343. //USHORT _APICALL DosSemSetWait(HSEM, LONG);
  344. //USHORT _APICALL DosSemWait(HSEM, LONG);
  345.  
  346. #define CSEM_PRIVATE    0
  347. #define CSEM_PUBLIC     1
  348.  
  349. /*
  350.  * Since a MUXSEMLIST structure is actually a variable length
  351.  * structure, the following macro may be used to define a MUXSEMLIST
  352.  * structure having size elements, named "name".
  353.  */
  354. #define DEFINEMUXSEMLIST(name, size) \
  355.     struct {                         \
  356.         USHORT cmxs;                 \
  357.         MUXSEM amxs[size];           \
  358.     } name;
  359.  
  360. /*
  361.  * This function actually takes a far pointer to a MUXSEMLIST structure
  362.  * as its second parameter, but in order to allow its use with the
  363.  * DEFINEMUXSEMLIST macro, it is declared here as PVOID.
  364.  */
  365. //USHORT _APICALL DosMuxSemWait(PUSHORT, PVOID, LONG);
  366.  
  367. #endif /* INCL_DOSSEMAPHORES */
  368.  
  369.  
  370.  
  371. #if defined(INCL_DOS) || defined(INCL_DOSDATETIME)
  372.  
  373. USHORT _APICALL DosGetDateTime (DOSDATETIME far *);
  374. USHORT _APICALL DosSetDateTime (DOSDATETIME far *);
  375.  
  376. USHORT _APICALL DosTimerAsync(ULONG, USHORT, USHORT far *);
  377. USHORT _APICALL DosTimerStart(ULONG, USHORT, USHORT far *);
  378. USHORT _APICALL DosTimerStop(USHORT);
  379.  
  380. #endif /* INCL_DOSDATETIME */
  381.  
  382.  
  383.  
  384. #if defined(INCL_DOS) || defined(INCL_DOSMODULEMGR)
  385.  
  386. //USHORT _APICALL DosLoadModule(PSZ, USHORT, PSZ, PHMODULE);
  387. //USHORT _APICALL DosFreeModule(HMODULE);
  388. //USHORT _APICALL DosGetProcAddr(HMODULE, PSZ, PPFN);
  389. //USHORT _APICALL DosGetModHandle(PSZ, PHMODULE);
  390. //USHORT _APICALL DosGetModName(HMODULE, USHORT, PCHAR);
  391.  
  392. #endif /* INCL_DOSMODULEMGR */
  393.  
  394.  
  395.  
  396. #if defined(INCL_DOS) || defined(INCL_DOSNLS)
  397.  
  398. USHORT _APICALL DosCaseMap  (USHORT, DOSCOUNTRYCODE far *, char far *);
  399. USHORT _APICALL DosGetCollate (USHORT, DOSCOUNTRYCODE far *, char far *, USHORT far *);
  400. USHORT _APICALL DosGetCp    (USHORT, USHORT far *, USHORT far *);
  401. USHORT _APICALL DosGetCtryInfo (USHORT, DOSCOUNTRYCODE far *, DOSCOUNTRYINFO far *, USHORT far *);
  402. USHORT _APICALL DosGetDBCSEv (USHORT, DOSCOUNTRYCODE far *, char far *);
  403. USHORT _APICALL DosSetCp    (USHORT, USHORT);
  404.  
  405. #endif /* INCL_DOSNLS */
  406.  
  407.  
  408.  
  409. #if defined(INCL_DOS) || defined(INCL_DOSSIGNALS)
  410.  
  411. #define SIG_CTRLC           1       /* Control C            */
  412. #define SIG_BROKENPIPE      2       /* Broken Pipe          */
  413. #define SIG_KILLPROCESS     3       /* Program Termination  */
  414. #define SIG_CTRLBREAK       4       /* Control Break        */
  415. #define SIG_PFLG_A          5       /* Process Flag A       */
  416. #define SIG_PFLG_B          6       /* Process Flag B       */
  417. #define SIG_PFLG_C          7       /* Process Flag C       */
  418. #define SIG_CSIGNALS        8       /* number of signals plus one */
  419.  
  420. #define PFLG_A              0       /* Process Flag A       */
  421. #define PFLG_B              1       /* Process Flag B       */
  422. #define PFLG_C              2       /* Process Flag C       */
  423.  
  424. #define SIGA_KILL           0
  425. #define SIGA_IGNORE         1
  426. #define SIGA_ACCEPT         2
  427. #define SIGA_ERROR          3
  428. #define SIGA_ACKNOWLEDGE    4
  429.  
  430. #define HLDSIG_ENABLE       0
  431. #define HLDSIG_DISABLE      1
  432.  
  433. #define FLGP_SUBTREE        0
  434. #define FLGP_PID            1
  435.  
  436. USHORT _APICALL DosSetSigHandler (void (_APICALL *)(USHORT, USHORT), void (_APICALL * far *)(USHORT, USHORT), unsigned int far *, unsigned int, unsigned int) ;
  437. //USHORT _APICALL DosFlagProcess(PID, USHORT, USHORT, USHORT);
  438. //USHORT _APICALL DosHoldSignal(USHORT);
  439. //USHORT _APICALL DosSendSignal(USHORT, USHORT);
  440.  
  441. #endif /* INCL_DOSSIGNALS */
  442.  
  443.  
  444.  
  445.  
  446. #if defined(INCL_DOS) || defined(INCL_DOSMONITORS)
  447.  
  448. //USHORT _APICALL   DosMonClose () ;
  449. //USHORT _APICALL   DosMonOpen () ;
  450. //USHORT _APICALL   DosMonRead () ;
  451. //USHORT _APICALL   DosMonReg () ;
  452. //USHORT _APICALL   DosMonWrite () ;
  453.  
  454. #endif /* DOS_MONITORS */
  455.  
  456.  
  457. #if defined(INCL_DOS) || defined(INCL_DOSQUEUES)
  458. USHORT _APICALL DosMakePipe (USHORT far *, USHORT far *, UINT) ;
  459. //USHORT _APICALL DosCloseQueue(HQUEUE);
  460. //USHORT _APICALL DosCreateQueue(PHQUEUE, USHORT, PSZ);
  461. //USHORT _APICALL DosOpenQueue(PUSHORT, PHQUEUE, PSZ);
  462. //USHORT _APICALL DosPeekQueue(HQUEUE, PULONG, PUSHORT, PULONG, PUSHORT, USHORT, PBYTE, HSEM);
  463. //USHORT _APICALL DosPurgeQueue(HQUEUE);
  464. //USHORT _APICALL DosQueryQueue(HQUEUE, PUSHORT);
  465. //USHORT _APICALL DosReadQueue(HQUEUE, PULONG, PUSHORT, PULONG, USHORT, USHORT, PBYTE, HSEM);
  466. //USHORT _APICALL DosWriteQueue(HQUEUE, USHORT, USHORT, PBYTE, USHORT);
  467. #endif /* INCL_DOSQUEUES */
  468.  
  469.  
  470. #if defined(INCL_DOS) || defined(INCL_DOSMISC)
  471.  
  472. USHORT _APICALL DosErrClass (USHORT, USHORT far *, USHORT far *, USHORT far *);
  473. USHORT _APICALL DosError    (USHORT);
  474. USHORT _APICALL DosSetVec   (USHORT, int (_APICALL *)(void), int (_APICALL * far *)(void));
  475.  
  476. USHORT _APICALL DosGetEnv   (USHORT far *, USHORT far *) ;
  477. USHORT _APICALL DosGetMachineMode (unsigned char far *);
  478. USHORT _APICALL DosGetVersion (USHORT far *);
  479. USHORT _APICALL DosScanEnv  (const char far *, const char far * far *);
  480. USHORT _APICALL DosSearchPath (USHORT, const char far *, const char far *, unsigned char far *, USHORT);
  481.  
  482. USHORT _APICALL DosGetMessage (char far * far *, USHORT, char far *, USHORT, USHORT, char far *, USHORT far *);
  483. USHORT _APICALL DosInsMessage (char far * far *, USHORT, char far *, USHORT, char far *, USHORT, USHORT far *);
  484. USHORT _APICALL DosPutMessage (int, USHORT, char far *);
  485.  
  486. #endif /* INCL_DOSMISC */
  487.  
  488. #if defined(INCL_DOS) || defined(INCL_DOSSESMGR)
  489.  
  490. //USHORT _APICALL DosStartSession(STARTDATA far *, USHORT far *, USHORT far *);
  491. //USHORT _APICALL DosSetSession(USHORT, STATUSDATA far *);
  492. //USHORT _APICALL DosSelectSession(USHORT, ULONG);
  493. //USHORT _APICALL DosStopSession(USHORT, USHORT, ULONG);
  494.  
  495. #endif /* INCL_DOSSESMGR */
  496.  
  497.  
  498.  
  499. #if defined(INCL_DOS) || defined(INCL_DOSDEVICES)
  500.  
  501. USHORT _APICALL DosCLIAccess (void) ;
  502. USHORT _APICALL DosDevConfig (void far *, UINT, UINT) ;
  503. USHORT _APICALL DosDevIOCtl (void far *, void far *, UINT, UINT, UINT);
  504. USHORT _APICALL DosPhysicalDisc (UINT, unsigned char far *, UINT, unsigned char far *, UINT) ;
  505. USHORT _APICALL DosPortAccess (UINT, UINT, UINT, UINT) ;
  506.  
  507. //USHORT _APICALL   DosPTrace () ;
  508. //USHORT _APICALL DosSystemService(USHORT, void far *, void far *);
  509.  
  510.  
  511. #endif /* INCL_DOSDEVICES */
  512.  
  513. }
  514.