]> pd.if.org Git - mmurtl/blob - ossource/mkernel.h
autocommit for file dated 2003-12-29 17:36:54
[mmurtl] / ossource / mkernel.h
1 /* MKernel.h   MMURTL OS KERNEL PROTOTYPES */\r
2 \r
3 /* MMURTL Operating System Source Code\r
4    Copyright 1991,1992,1993, Richard A. Burgess\r
5    ALL RIGHTS RESERVED\r
6    Version x0.8\r
7 */\r
8 \r
9 extern far long AllocExch(long *pExchRet);\r
10 \r
11 extern far long DeAllocExch(long Exch);\r
12 \r
13 extern far long GetTSSExch(unsigned long  *pExchRet);\r
14 \r
15 extern far long SetPriority(long bPriority);\r
16 \r
17 extern far long NewTask(long JobNum,\r
18                                            long CodeSeg,\r
19                                            long Priority,\r
20                                            long fDebug,\r
21                                            long Exch,\r
22                                            unsigned long ESP,\r
23                                            unsigned long EIP);\r
24 \r
25 extern far SpawnTask(char *pEntry,\r
26                              long dPriority,\r
27                      long fDebug,\r
28                      char *pStack,\r
29                              long fOSCode);\r
30 \r
31 extern far long SendMsg(long Exch, long msg1, long msg2);\r
32 \r
33 extern far long ISendMsg(long Exch, long msg1, long msg2);\r
34 \r
35 extern far long WaitMsg(long Exch, char *pMsgRet);\r
36 \r
37 extern far long CheckMsg(long Exch, char *pMsgRet);\r
38 \r
39 extern far long Request(unsigned char *pSvcName,\r
40                                                 unsigned int  wSvcCode,\r
41                                                 unsigned long dRespExch,\r
42                                                 unsigned long *pRqHndlRet,\r
43                                                 unsigned long dnpSend,\r
44                                                 unsigned char *pData1,\r
45                                                 unsigned long dcbData1,\r
46                                                 unsigned char *pData2,\r
47                                                 unsigned long dcbData2,\r
48                                                 unsigned long dData0,\r
49                                                 unsigned long dData1,\r
50                                                 unsigned long dData2);\r
51 \r
52 extern far long MoveRequest(long dRqBlkHndl, long dDestExch);\r
53 \r
54 extern far long Respond(long dRqHndl, long dStatRet);\r
55 \r
56 struct RqBlkType {                      /* 64 byte Request block structure */\r
57         long ServiceExch;\r
58         long RespExch;\r
59         long RqOwnerJob;\r
60         long ServiceRoute;\r
61         char *pRqHndlRet;\r
62         long dData0;\r
63         long dData1;\r
64         long dData2;\r
65         short int  ServiceCode;\r
66         char npSend;\r
67         char npRecv;\r
68         char *pData1;\r
69         long cbData1;\r
70         char *pData2;\r
71         long cbData2;\r
72         long RQBRsvd1;\r
73         long RQBRsvd2;\r
74         long RQBRsvd3;\r
75         };\r
76 \r
77 \r
78 /******* End of MKernel.h ******/\r