Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

643 lines
26 KiB

  1. /****************************************************************************
  2. INTEL CORPORATION PROPRIETARY INFORMATION
  3. Copyright (c) 1992 Intel Corporation
  4. All Rights Reserved
  5. This software is supplied under the terms of a license
  6. agreement or non-disclosure agreement with Intel Corporation
  7. and may not be copied or disclosed except in accordance
  8. with the terms of that agreement
  9. $Source: q:/prism/include/rcs/isrg.h $
  10. $Revision: 1 $
  11. $Date: 6/19/96 3:46p $
  12. $Author: Lscline $
  13. $Locker: $
  14. Description
  15. -----------
  16. Interrupt Service Routine debug header file
  17. This module allows for a way of doing OutputDebugString()
  18. at interrupt time.
  19. ****************************************************************************/
  20. #ifndef ISRG_H
  21. #define ISRG_H
  22. #ifdef __cplusplus
  23. extern "C" { // Assume C declarations for C++.
  24. #endif // __cplusplus
  25. // Use for Win16
  26. //#define DllExport
  27. //#define DllImport
  28. //#define DLL_EXPORT _export
  29. // Use for Win32
  30. #define DllExport __declspec( dllexport )
  31. #define DllImport __declspec( dllimport )
  32. #define DLL_EXPORT
  33. //
  34. // directions
  35. // Pick a number (mod 100) and create a base for the next
  36. // 100 entries. Do it this way so that your numbers can
  37. // be easily moved. The string assigned to the base you select
  38. // will be displayed as the filter string in a list box when
  39. // viewing. After defining your constants go to isrdsp.rc
  40. // and assign strings to them. You will need to build the
  41. // isrdsp.exe but not the isrdbg.dll. You only need to
  42. // inlude this h file and import the functions from this
  43. // file into your def file. Happy debugging.
  44. //------------------------------------------------------------------------------
  45. #define kModSNameSize 16
  46. #define kModLNameSize 32
  47. //------------------------------------------------------------------------------
  48. // defines for tISRModule.Flags
  49. #define kCaptureOn 0x01
  50. //------------------------------------------------------------------------------
  51. typedef struct _tISRModule
  52. {
  53. WORD Flags;
  54. BYTE CaptureFilter;
  55. BYTE DisplayFilter;
  56. char zSName[kModSNameSize]; // Short name of user registered debug module
  57. char zLName[kModLNameSize]; // Long name of user registered debug module
  58. } tISRModule, FAR *ptISRModule;
  59. //------------------------------------------------------------------------------
  60. #define kModuleBufSize ((DWORD) (16*1024L))
  61. #define kMaxModules ((UINT) (kModuleBufSize/sizeof(tISRModule)))
  62. //------------------------------------------------------------------------------
  63. typedef struct _tISRItem
  64. {
  65. WORD hISRInst; // Our handle to registered modules
  66. BYTE DbgLevel; // Caller determined debug level
  67. BYTE Flags;
  68. UINT IP; // Callers Instruction Ptr address
  69. DWORD Param1;
  70. DWORD Param2;
  71. } tISRItem, FAR *ptISRItem;
  72. //------------------------------------------------------------------------------
  73. #define kISRBufSize ((DWORD) (32*1024L))
  74. #define kMaxISRItems ((UINT) (kISRBufSize/sizeof(tISRItem)))
  75. #define kMaxStrTab ((UINT) (60*1024L))
  76. //------------------------------------------------------------------------------
  77. // defines for tISRItem.Flags
  78. #define kParam1IsStr 0x01
  79. #define kParam1IsRes 0x02
  80. #define kParam1IsNum 0x04 // Use only if passed two numbers.
  81. //------------------------------------------------------------------------------
  82. // Supported DbgMsg state values.
  83. //------------------------------------------------------------------------------
  84. // REVIEW: We build with DBG=1
  85. #undef DBG
  86. #define DBG 0
  87. #define ERR 1
  88. #define kISRCritical 0x01 // Progammer errors that should never happen
  89. #define kISRError 0x02 // Errors that need to be fixed
  90. #define kISRWarning 0x04 // The user could have problems if not corrected
  91. #define kISRNotify 0x08 // Status, events, settings...
  92. #define kISRTrace 0x10 // Trace info that will not overrun the system
  93. #define kISRTemp 0x20 // Trace info that may be reproduced in heavy loops
  94. #define kISRReserved1 0x40 // Future use
  95. #define kISRReserved2 0x80 // Future use
  96. #define kISRDefault kISRReserved2 // Historical use only
  97. #define TT_CRITICAL kISRCritical
  98. #define TT_ERROR kISRError
  99. #define TT_WARNING kISRWarning
  100. #define TT_NOTIFY kISRNotify
  101. #define TT_TRACE kISRTrace
  102. #define TT_TEMP kISRTemp
  103. //------------------------------------------------------------------------------
  104. // exports from isrdbg.dll
  105. // Include these in your def file if you want to output at interrupt time.
  106. // The ISR_Hook*() functions are the same as their counterparts. The only
  107. // difference is that these functions need the Instruction Pointer passed
  108. // in. If you are using an intermediate library to encapsulate the debug
  109. // functions then you must be responsible for pulling the IP off the stack.
  110. // Register the module and get a handle for making debug calls. If a debug
  111. // call is made with an invalid handle then the results are not defined.
  112. // It is possible to drop the debug event or to place the event into the
  113. // compatibility module. If no more module handles are available then
  114. // the handle returned will be the compatibility handle.
  115. DllExport void WINAPI DLL_EXPORT
  116. ISR_RegisterModule (LPWORD phISRInst, LPSTR zShortName, LPSTR zLongName);
  117. // Allow two strings to be concatenated togeter.
  118. DllExport void WINAPI DLL_EXPORT
  119. ISR_HookDbgStrStr (UINT IP, WORD hISRInst, BYTE DbgLevel, LPSTR pzStr1, LPSTR pzStr2);
  120. // Use a resource to format a number.
  121. DllExport void WINAPI DLL_EXPORT
  122. ISR_HookDbgRes (UINT IP, WORD hISRInst, BYTE DbgLevel, UINT uResId, DWORD Param1);
  123. // Use a str to format a number.
  124. DllExport void WINAPI DLL_EXPORT
  125. ISR_HookDbgStr (UINT IP, WORD hISRInst, BYTE DbgLevel, LPSTR pzStr1, DWORD Param1);
  126. // Allow two strings to be concatenated togeter.
  127. DllExport void WINAPI DLL_EXPORT
  128. ISR_DbgStrStr (WORD hISRInst, BYTE DbgLevel, LPSTR pzStr1, LPSTR pzStr2);
  129. // Use a resource to format a number.
  130. DllExport void WINAPI DLL_EXPORT
  131. ISR_DbgRes (WORD hISRInst, BYTE DbgLevel, UINT uResId, DWORD Param1);
  132. // Use a str to format a number.
  133. DllExport void WINAPI DLL_EXPORT
  134. ISR_DbgStr (WORD hISRInst, BYTE DbgLevel, LPSTR pzStr1, DWORD Param1);
  135. // WARNING: Call at task time only. Not reentrant.
  136. DllExport void FAR cdecl DLL_EXPORT
  137. TTDbgMsg
  138. (
  139. WORD hISRInst, // Module's ISRDBG handle.
  140. BYTE DbgLevel, // Appropriate ISRDBG level.
  141. LPCSTR zMsgFmt, // Output format string (like printf).
  142. ... // Optional parameter list.
  143. );
  144. // Old functions for compatibility only.
  145. DllExport void WINAPI DLL_EXPORT
  146. ISR_OutputDbgStr (LPSTR pzStr);
  147. DllExport void WINAPI DLL_EXPORT
  148. ISR_OutputStr (UINT uResId);
  149. DllExport void WINAPI DLL_EXPORT
  150. ISR_OutputNum (UINT uResId, DWORD Num);
  151. // WARNING: Call at task time only. Not reentrant.
  152. DllExport void FAR cdecl DLL_EXPORT
  153. DbgMsg
  154. (
  155. LPCSTR module,
  156. int state,
  157. LPCSTR format_str,
  158. ...
  159. );
  160. //------------------------------------------------------------------------------
  161. // exports from isrdbg.dll
  162. // Include these in your def file if you need to know the state of isrdbg.dll.
  163. // isrdsp.exe needs to do this to display the data at task time.
  164. DllExport void WINAPI DLL_EXPORT
  165. ISR_ClearItems (void);
  166. DllExport UINT WINAPI DLL_EXPORT
  167. ISR_GetNumItems (void);
  168. DllExport ptISRItem WINAPI DLL_EXPORT
  169. ISR_GetItem (UINT uItem,ptISRItem pItem);
  170. DllExport ptISRModule WINAPI DLL_EXPORT
  171. ISR_GetModule (UINT hISRInst);
  172. DllExport int WINAPI DLL_EXPORT
  173. ISR_SetCaptureFilter (WORD hISRInst, BYTE CaptureFilter, BYTE DisplayFilter);
  174. //------------------------------------------------------------------------------
  175. // The caller of ISR debug functions can call these Macros and then the
  176. // retail release will just drop all of the debug statement code.
  177. //------------------------------------------------------------------------------
  178. #if (DEBUG >= 1) || (_DEBUG >= 1)
  179. #define ISRDEBUGINFO 1
  180. extern WORD ghISRInst;
  181. #define ISRREGISTERMODULE(pghISRInst, ShortName, LongName) ISR_RegisterModule(pghISRInst, ShortName, LongName)
  182. #define ISRNOTIFY(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRNotify, Str, Num)
  183. #define ISRCRITICAL(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRCritical, Str, Num)
  184. #define ISRERROR(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRError, Str, Num)
  185. #define ISRWARNING(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRWarning, Str, Num)
  186. #define ISRTRACE(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRTrace, Str, Num)
  187. #define ISRTEMP(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRTemp, Str, Num)
  188. #define ISRRESERVED1(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRReserved1, Str, Num)
  189. #define ISRRESERVED2(ghISRInst, Str, Num) ISR_DbgStr(ghISRInst, kISRReserved2, Str, Num)
  190. #define ISRSNOTIFY(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRNotify, Str, Str2)
  191. #define ISRSCRITICAL(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRCritical, Str, Str2)
  192. #define ISRSERROR(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRError, Str, Str2)
  193. #define ISRSWARNING(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRWarning, Str, Str2)
  194. #define ISRSTRACE(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRTrace, Str, Str2)
  195. #define ISRSTEMP(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRTemp, Str, Str2)
  196. #define ISRSRESERVED1(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRReserved1, Str, Str2)
  197. #define ISRSRESERVED2(ghISRInst, Str, Str2) ISR_DbgStrStr(ghISRInst, kISRReserved2, Str, Str2)
  198. #define TTDBG TTDbgMsg
  199. #else
  200. #define ISRNOTIFY(ghISRInst, Str, Num)
  201. #define ISRREGISTERMODULE(pghISRInst, ShortName, LongName)
  202. #define ISRCRITICAL(ghISRInst, Str, Num)
  203. #define ISRERROR(ghISRInst, Str, Num)
  204. #define ISRWARNING(ghISRInst, Str, Num)
  205. #define ISRTRACE(ghISRInst, Str, Num)
  206. #define ISRTEMP(ghISRInst, Str, Num)
  207. #define ISRRESERVED1(ghISRInst, Str, Num)
  208. #define ISRRESERVED2(ghISRInst, Str, Num)
  209. #define ISRSNOTIFY(ghISRInst, Str, Str2)
  210. #define ISRSCRITICAL(ghISRInst, Str, Str2)
  211. #define ISRSERROR(ghISRInst, Str, Str2)
  212. #define ISRSWARNING(ghISRInst, Str, Str2)
  213. #define ISRSTRACE(ghISRInst, Str, Str2)
  214. #define ISRSTEMP(ghISRInst, Str, Str2)
  215. #define ISRSRESERVED1(ghISRInst, Str, Str2)
  216. #define ISRSRESERVED2(ghISRInst, Str, Str2)
  217. #define ghISRInst 0
  218. #define TTDBG 1 ? (void)0 : TTDbgMsg
  219. #endif
  220. //------------------------------------------------------------------------------
  221. // Local Functions
  222. static void
  223. InitModules (void);
  224. static UINT
  225. ValidCaptureMsg (WORD hISRInst, BYTE DbgLevel);
  226. // Local function but thunk needs to get to it
  227. DllExport void WINAPI
  228. OutputRec
  229. (
  230. WORD hISRInst, // Our handle to registered modules
  231. BYTE DbgLevel, // Caller determined debug level
  232. BYTE Flags,
  233. UINT IP, // Callers Instruction Ptr address
  234. DWORD Param1,
  235. DWORD Param2
  236. );
  237. // Local function but thunk needs to get to it
  238. DllExport void WINAPI
  239. OutputRecStr
  240. (
  241. WORD hISRInst, // Our handle to registered modules
  242. BYTE DbgLevel, // Caller determined debug level
  243. BYTE Flags,
  244. UINT IP, // Callers Instruction Ptr address
  245. LPSTR pzStr1,
  246. LPSTR pzStr2,
  247. DWORD Param1
  248. );
  249. //------------------------------------------------------------------------------
  250. // do not use a base of 0. Reserved for system use.
  251. #define ID_SysBase 0
  252. #define ID_SysStr (ID_SysBase + 1)
  253. #define ID_SysSInt (ID_SysBase + 2)
  254. #define ID_SysUInt (ID_SysBase + 3)
  255. #define ID_SysDWord (ID_SysBase + 4)
  256. #define ID_SysLong (ID_SysBase + 5)
  257. #define ID_SysHex (ID_SysBase + 6)
  258. //------------------------------------------------------------------------------
  259. // IsrDbg.dll
  260. #define ID_IsrDbgBase 100
  261. #define ID_IsrDbgLibMain (ID_IsrDbgBase + 1)
  262. #define ID_IsrDbgWep (ID_IsrDbgBase + 2)
  263. #define ID_IsrDbgReentrant (ID_IsrDbgBase + 3)
  264. //------------------------------------------------------------------------------
  265. // IsrDsp.exe
  266. #define ID_IsrDspBase 200
  267. #define ID_IsrDspInit (ID_IsrDspBase + 1)
  268. #define ID_IsrDspExit (ID_IsrDspBase + 2)
  269. //------------------------------------------------------------------------------
  270. // stMem.dll
  271. #define ID_stMemBase 300
  272. #define ID_stMemLibMain (ID_stMemBase + 1)
  273. #define ID_stMemWep (ID_stMemBase + 2)
  274. #define ID_stMemPreAlloc (ID_stMemBase + 3)
  275. #define ID_stMemPageLock (ID_stMemBase + 4)
  276. #define ID_stMemNoPageLock (ID_stMemBase + 5)
  277. #define ID_stMemAlloc (ID_stMemBase + 6)
  278. #define ID_stMemTotMem (ID_stMemBase + 7)
  279. #define ID_stMemstFree (ID_stMemBase + 8)
  280. //-------------------------------------------------------------------------------
  281. // DLM.dll
  282. // Errors
  283. #define ID_DLMErrorBase 400
  284. #define ID_DLMEnqError (ID_DLMErrorBase + 1)
  285. #define ID_DLMDeqError (ID_DLMErrorBase + 2)
  286. #define ID_DLMFreeError (ID_DLMErrorBase + 3)
  287. #define ID_DLMChanError (ID_DLMErrorBase + 4)
  288. #define ID_DLMChanNIUErr (ID_DLMErrorBase + 5)
  289. #define ID_DLMChanNumErr (ID_DLMErrorBase + 6)
  290. #define ID_DLMInConnErr (ID_DLMErrorBase + 7)
  291. #define ID_DLMInSessErr (ID_DLMErrorBase + 8)
  292. #define ID_DLMSessNIU (ID_DLMErrorBase + 9)
  293. #define ID_DLMSessNO (ID_DLMErrorBase + 10)
  294. #define ID_DLMConnNIU (ID_DLMErrorBase + 11)
  295. #define ID_DLMConnNO (ID_DLMErrorBase + 12)
  296. #define ID_DLMIDErr (ID_DLMErrorBase + 13)
  297. #define ID_DLMConnErr (ID_DLMErrorBase + 14)
  298. #define ID_DLMSessErr (ID_DLMErrorBase + 15)
  299. #define ID_DLMSessNF (ID_DLMErrorBase + 16)
  300. #define ID_DLMNoFreeConn (ID_DLMErrorBase + 17)
  301. #define ID_DLMConnCloseErr (ID_DLMErrorBase + 18)
  302. #define ID_DLMConnNF (ID_DLMErrorBase + 19)
  303. #define ID_DLMConnNC (ID_DLMErrorBase + 20)
  304. #define ID_DLMMDMError (ID_DLMErrorBase + 21)
  305. #define ID_DLMNoSess (ID_DLMErrorBase + 22)
  306. #define ID_DLMInvalidSess (ID_DLMErrorBase + 23)
  307. #define ID_DLMEventErr (ID_DLMErrorBase + 24)
  308. #define ID_DLMNoConn (ID_DLMErrorBase + 25)
  309. #define ID_DLMChanCloseErr (ID_DLMErrorBase + 26)
  310. #define ID_DLMInvalidConn (ID_DLMErrorBase + 27)
  311. #define ID_DLMCorruptQueue (ID_DLMErrorBase + 28)
  312. #define ID_DLMInvChanID (ID_DLMErrorBase + 29)
  313. #define ID_DLMChanInUse (ID_DLMErrorBase + 30)
  314. #define ID_DLMInvalidChan (ID_DLMErrorBase + 31)
  315. #define ID_DLMNoBufHdr (ID_DLMErrorBase + 32)
  316. #define ID_DLMEnqueueErr (ID_DLMErrorBase + 33)
  317. #define ID_DLMNMBufInProg (ID_DLMErrorBase + 34)
  318. #define ID_DLMNoBuffer (ID_DLMErrorBase + 35)
  319. #define ID_DLMEnterDumping (ID_DLMErrorBase + 36)
  320. #define ID_DLMSizeError (ID_DLMErrorBase + 37)
  321. #define ID_DLMNoBuf (ID_DLMErrorBase + 38)
  322. #define ID_DLMInitAlready (ID_DLMErrorBase + 39)
  323. #define ID_DLMGDLError (ID_DLMErrorBase + 40)
  324. #define ID_DLMNoEntryPoint (ID_DLMErrorBase + 41)
  325. #define ID_DLMNoEvent (ID_DLMErrorBase + 42)
  326. #define ID_DLMNoPackets (ID_DLMErrorBase + 43)
  327. // Debug level 1 messages
  328. #define ID_DLMDebug1Base 500
  329. #define ID_DLMCloseAllEntered (ID_DLMDebug1Base + 1)
  330. #define ID_DLMEstabHEntered (ID_DLMDebug1Base + 2)
  331. #define ID_DLMEstabHExit (ID_DLMDebug1Base + 3)
  332. #define ID_DLMReqHEntered (ID_DLMDebug1Base + 4)
  333. #define ID_DLMReqHAlloc (ID_DLMDebug1Base + 5)
  334. #define ID_DLMReqHExit (ID_DLMDebug1Base + 6)
  335. #define ID_DLMRejHEntered (ID_DLMDebug1Base + 7)
  336. #define ID_DLMRejHExit (ID_DLMDebug1Base + 8)
  337. #define ID_DLMCNoteHEntered (ID_DLMDebug1Base + 9)
  338. #define ID_DLMCNoteHExit (ID_DLMDebug1Base + 10)
  339. #define ID_DLMCComHEntered (ID_DLMDebug1Base + 11)
  340. #define ID_DLMCComHExit (ID_DLMDebug1Base + 12)
  341. #define ID_DLMSessCloseHEntered (ID_DLMDebug1Base + 13)
  342. #define ID_DLMSessCloseHExit (ID_DLMDebug1Base + 14)
  343. #define ID_DLMSessHEntered (ID_DLMDebug1Base + 15)
  344. #define ID_DLMSessHExit (ID_DLMDebug1Base + 16)
  345. #define ID_DLMBegSessEntered (ID_DLMDebug1Base + 17)
  346. #define ID_DLMBegSessExit (ID_DLMDebug1Base + 18)
  347. #define ID_DLMEndSessEntered (ID_DLMDebug1Base + 19)
  348. #define ID_DLMEndSessExit (ID_DLMDebug1Base + 20)
  349. #define ID_DLMListenEntered (ID_DLMDebug1Base + 21)
  350. #define ID_DLMListenExit (ID_DLMDebug1Base + 22)
  351. #define ID_DLMDoCloseEntered (ID_DLMDebug1Base + 23)
  352. #define ID_DLMDoCloseExit (ID_DLMDebug1Base + 24)
  353. #define ID_DLMMakeConnEntered (ID_DLMDebug1Base + 25)
  354. #define ID_DLMMakeConnExit (ID_DLMDebug1Base + 26)
  355. #define ID_DLMRejEntered (ID_DLMDebug1Base + 27)
  356. #define ID_DLMRejExit (ID_DLMDebug1Base + 28)
  357. #define ID_DLMAccEntered (ID_DLMDebug1Base + 29)
  358. #define ID_DLMAccExit (ID_DLMDebug1Base + 30)
  359. #define ID_DLMCloseConnEntered (ID_DLMDebug1Base + 31)
  360. #define ID_DLMCloseConnExit (ID_DLMDebug1Base + 32)
  361. #define ID_DLMTryEntered (ID_DLMDebug1Base + 33)
  362. #define ID_DLMTryExit (ID_DLMDebug1Base + 34)
  363. #define ID_DLMOpenEntered (ID_DLMDebug1Base + 35)
  364. #define ID_DLMOpenExit (ID_DLMDebug1Base + 36)
  365. #define ID_DLMSendEntered (ID_DLMDebug1Base + 37)
  366. #define ID_DLMSendExit (ID_DLMDebug1Base + 38)
  367. #define ID_DLMSendComEntered (ID_DLMDebug1Base + 39)
  368. #define ID_DLMSendComExit (ID_DLMDebug1Base + 40)
  369. #define ID_DLMPostEntered (ID_DLMDebug1Base + 41)
  370. #define ID_DLMPostExit (ID_DLMDebug1Base + 42)
  371. #define ID_DLMNewMsgEntered (ID_DLMDebug1Base + 43)
  372. #define ID_DLMNewMsgExit (ID_DLMDebug1Base + 44)
  373. #define ID_DLMContMsgEntered (ID_DLMDebug1Base + 45)
  374. #define ID_DLMContMsgExit (ID_DLMDebug1Base + 46)
  375. #define ID_DLMRecEntered (ID_DLMDebug1Base + 47)
  376. #define ID_DLMRecExit (ID_DLMDebug1Base + 48)
  377. #define ID_DLMCloseEntered (ID_DLMDebug1Base + 49)
  378. #define ID_DLMCloseExit (ID_DLMDebug1Base + 50)
  379. #define ID_DLMGetCharEntered (ID_DLMDebug1Base + 51)
  380. #define ID_DLMGetCharExit (ID_DLMDebug1Base + 52)
  381. #define ID_DLMInitEntered (ID_DLMDebug1Base + 53)
  382. #define ID_DLMInitExit (ID_DLMDebug1Base + 54)
  383. #define ID_DLMDeInitEntered (ID_DLMDebug1Base + 55)
  384. #define ID_DLMDeInitExit (ID_DLMDebug1Base + 56)
  385. #define ID_DLMCloseAllExit (ID_DLMDebug1Base + 57)
  386. #define ID_DLMEnqEntered (ID_DLMDebug1Base + 58)
  387. #define ID_DLMEnqExit (ID_DLMDebug1Base + 59)
  388. #define ID_DLMDeqEntered (ID_DLMDebug1Base + 60)
  389. #define ID_DLMDeqExit (ID_DLMDebug1Base + 61)
  390. #define ID_DLMEnqPEntered (ID_DLMDebug1Base + 62)
  391. #define ID_DLMEnqPExit (ID_DLMDebug1Base + 63)
  392. // Debug level 2 messages
  393. #define ID_DLMDebug2Base 600
  394. #define ID_DLMCallback (ID_DLMDebug2Base + 1)
  395. #define ID_DLMConnection (ID_DLMDebug2Base + 2)
  396. #define ID_DLMBuffer (ID_DLMDebug2Base + 3)
  397. #define ID_DLMSize (ID_DLMDebug2Base + 4)
  398. #define ID_DLMRemaining (ID_DLMDebug2Base + 5)
  399. #define ID_DLMReceived (ID_DLMDebug2Base + 6)
  400. #define ID_DLMToken (ID_DLMDebug2Base + 7)
  401. #define ID_DLMOChannel (ID_DLMDebug2Base + 8)
  402. #define ID_DLMRChannel (ID_DLMDebug2Base + 9)
  403. #define ID_DLMStatus (ID_DLMDebug2Base + 10)
  404. #define ID_DLMEndSessClosing (ID_DLMDebug2Base + 11)
  405. #define ID_DLMBufferSize (ID_DLMDebug2Base + 12)
  406. #define ID_DLMLinkPacket (ID_DLMDebug2Base + 13)
  407. #define ID_DLMChannel (ID_DLMDebug2Base + 14)
  408. #define ID_DLMInDumping (ID_DLMDebug2Base + 15)
  409. #define ID_DLMByteCount (ID_DLMDebug2Base + 16)
  410. #define ID_DLMDeqNoBuf (ID_DLMDebug2Base + 17)
  411. #define ID_DLMEnqPSkip (ID_DLMDebug2Base + 18)
  412. //------------------------------------------------------------------------------
  413. // MDM -> mdmnbios.dll
  414. #define ID_mdmBase 700
  415. #define ID_mdmLibMain (ID_mdmBase + 1)
  416. #define ID_mdmWep (ID_mdmBase + 2)
  417. #define ID_mdmBadhSesUser (ID_mdmBase + 3)
  418. #define ID_mdmBadhConUser (ID_mdmBase + 4)
  419. #define ID_mdmBadhSesFree (ID_mdmBase + 5)
  420. #define ID_mdmBadhConFree (ID_mdmBase + 6)
  421. #define ID_mdmBadhSesInt (ID_mdmBase + 7)
  422. #define ID_mdmBadhConInt (ID_mdmBase + 8)
  423. #define ID_mdmNoMorehSes (ID_mdmBase + 9)
  424. #define ID_mdmNoMorehCon (ID_mdmBase + 10)
  425. #define ID_mdmWepConFree (ID_mdmBase + 11)
  426. #define ID_mdmActiveCon (ID_mdmBase + 12)
  427. #define ID_mdmBBegSes (ID_mdmBase + 13)
  428. #define ID_mdmEBegSes (ID_mdmBase + 14)
  429. #define ID_mdmBEndSes (ID_mdmBase + 15)
  430. #define ID_mdmEEndSes (ID_mdmBase + 16)
  431. #define ID_mdmBListen (ID_mdmBase + 17)
  432. #define ID_mdmEListen (ID_mdmBase + 18)
  433. #define ID_mdmBMakeCon (ID_mdmBase + 19)
  434. #define ID_mdmEMakeCon (ID_mdmBase + 20)
  435. #define ID_mdmBAcceptCon (ID_mdmBase + 21)
  436. #define ID_mdmEAcceptCon (ID_mdmBase + 22)
  437. #define ID_mdmBRejectCon (ID_mdmBase + 23)
  438. #define ID_mdmERejectCon (ID_mdmBase + 24)
  439. #define ID_mdmBCloseCon (ID_mdmBase + 25)
  440. #define ID_mdmECloseCon (ID_mdmBase + 26)
  441. #define ID_mdmErrNetBios (ID_mdmBase + 27)
  442. #define ID_mdmNoSendNcb (ID_mdmBase + 28)
  443. #define ID_mdmNoFreeSndNcbSlot (ID_mdmBase + 29)
  444. #define ID_mdmInvalidConState (ID_mdmBase + 30)
  445. #define ID_mdmInvalidParams (ID_mdmBase + 31)
  446. #define ID_mdmToManyListens (ID_mdmBase + 32)
  447. #define ID_mdmKillTheListen (ID_mdmBase + 33)
  448. #define ID_mdmBListenCB (ID_mdmBase + 34)
  449. #define ID_mdmEListenCB (ID_mdmBase + 35)
  450. #define ID_mdmBConnectCB (ID_mdmBase + 36)
  451. #define ID_mdmEConnectCB (ID_mdmBase + 37)
  452. #define ID_mdmBCloseCB (ID_mdmBase + 38)
  453. #define ID_mdmECloseCB (ID_mdmBase + 39)
  454. #define ID_mdmBSndCB (ID_mdmBase + 40)
  455. #define ID_mdmESndCB (ID_mdmBase + 41)
  456. #define ID_mdmBRcvCB (ID_mdmBase + 42)
  457. #define ID_mdmERcvCB (ID_mdmBase + 43)
  458. //---------------------------------------------------------------------------------
  459. // MDM -> MDM Teleos
  460. // Errors
  461. #define ID_MDMTEBASE 1000
  462. #define ID_MDMTEDeqUnackNoHead (ID_MDMTEBASE + 1)
  463. #define ID_MDMTEDeqUnackNoNext (ID_MDMTEBASE + 2)
  464. #define ID_MDMTEDeqUnackNoPrev (ID_MDMTEBASE + 3)
  465. #define ID_MDMTEDeqArrNoTail (ID_MDMTEBASE + 4)
  466. #define ID_MDMTENullTCB (ID_MDMTEBASE + 5)
  467. #define ID_MDMTETCBRet (ID_MDMTEBASE + 6)
  468. #define ID_MDMTEWinSize (ID_MDMTEBASE + 7)
  469. #define ID_MDMTENoLinkPacket (ID_MDMTEBASE + 8)
  470. #define ID_MDMTETooLarge (ID_MDMTEBASE + 9)
  471. #define ID_MDMTELPNotFound (ID_MDMTEBASE + 10)
  472. #define ID_MDMTENoTCB (ID_MDMTEBASE + 11)
  473. #define ID_MDMTEInitAlready (ID_MDMTEBASE + 12)
  474. #define ID_MDMTETCBInitFail (ID_MDMTEBASE + 13)
  475. #define ID_MDMTELSNErr (ID_MDMTEBASE + 14)
  476. #define ID_MDMTESizeError (ID_MDMTEBASE + 15)
  477. #define ID_MDMTEReceived (ID_MDMTEBASE + 16)
  478. #define ID_MDMTEExpected (ID_MDMTEBASE + 17)
  479. #define ID_MDMTECorruptQ (ID_MDMTEBASE + 18)
  480. #define ID_MDMTENoInit (ID_MDMTEBASE + 19)
  481. #define ID_MDMTEAbanPack (ID_MDMTEBASE + 20)
  482. #define ID_MDMTESeqNum (ID_MDMTEBASE + 21)
  483. #define ID_MDMTESipPend (ID_MDMTEBASE + 22)
  484. #define ID_MDMTENoConn (ID_MDMTEBASE + 23)
  485. #define ID_MDMTEInvalidID (ID_MDMTEBASE + 24)
  486. #define ID_MDMTENoSess (ID_MDMTEBASE + 25)
  487. #define ID_MDMTENoLPM (ID_MDMTEBASE + 26)
  488. #define ID_MDMTESessID (ID_MDMTEBASE + 27)
  489. #define ID_MDMTESessNIU (ID_MDMTEBASE + 28)
  490. #define ID_MDMTESize (ID_MDMTEBASE + 29)
  491. #define ID_MDMTEState (ID_MDMTEBASE + 30)
  492. #define ID_MDMTEConnID (ID_MDMTEBASE + 31)
  493. #define ID_MDMTEConnNIU (ID_MDMTEBASE + 32)
  494. #define ID_MDMTETinyPacket (ID_MDMTEBASE + 33)
  495. #define ID_MDMTEPacketOOS (ID_MDMTEBASE + 34)
  496. #define ID_MDMTEECBNotFound (ID_MDMTEBASE + 35)
  497. // Trace Information
  498. #define ID_MDMTTBASE 1100
  499. #define ID_MDMTTB1CEnter (ID_MDMTTBASE + 1)
  500. #define ID_MDMTTB1CExit (ID_MDMTTBASE + 2)
  501. #define ID_MDMTTSB1Enter (ID_MDMTTBASE + 3)
  502. #define ID_MDMTTSB1Exit (ID_MDMTTBASE + 4)
  503. #define ID_MDMTTB2CEnter (ID_MDMTTBASE + 5)
  504. #define ID_MDMTTB2CExit (ID_MDMTTBASE + 6)
  505. #define ID_MDMTTSB2Enter (ID_MDMTTBASE + 7)
  506. #define ID_MDMTTSB2Exit (ID_MDMTTBASE + 8)
  507. #define ID_MDMTTSendEnter (ID_MDMTTBASE + 9)
  508. #define ID_MDMTTSendExit (ID_MDMTTBASE + 10)
  509. #define ID_MDMTTInitEnter (ID_MDMTTBASE + 11)
  510. #define ID_MDMTTInitExit (ID_MDMTTBASE + 12)
  511. #define ID_MDMTTDeInitEnter (ID_MDMTTBASE + 13)
  512. #define ID_MDMTTDeInitExit (ID_MDMTTBASE + 14)
  513. #define ID_MDMTTLB1Enter (ID_MDMTTBASE + 15)
  514. #define ID_MDMTTLB1Exit (ID_MDMTTBASE + 16)
  515. #define ID_MDMTTLB2Enter (ID_MDMTTBASE + 17)
  516. #define ID_MDMTTLB2Exit (ID_MDMTTBASE + 18)
  517. #define ID_MDMTTNBSEnter (ID_MDMTTBASE + 19)
  518. #define ID_MDMTTNBSExit (ID_MDMTTBASE + 20)
  519. #define ID_MDMTTRecEnter (ID_MDMTTBASE + 21)
  520. #define ID_MDMTTRecExit (ID_MDMTTBASE + 22)
  521. #define ID_MDMTTCTSEnter (ID_MDMTTBASE + 23)
  522. #define ID_MDMTTCTSExit (ID_MDMTTBASE + 24)
  523. #define ID_MDMTTGCEnter (ID_MDMTTBASE + 25)
  524. #define ID_MDMTTGCExit (ID_MDMTTBASE + 26)
  525. #define ID_MDMTTBegSessEnter (ID_MDMTTBASE + 27)
  526. #define ID_MDMTTBegSessExit (ID_MDMTTBASE + 28)
  527. #define ID_MDMTTEndSessEnter (ID_MDMTTBASE + 29)
  528. #define ID_MDMTTEndSessExit (ID_MDMTTBASE + 30)
  529. #define ID_MDMTTMakeConEnter (ID_MDMTTBASE + 31)
  530. #define ID_MDMTTMakeConExit (ID_MDMTTBASE + 32)
  531. #define ID_MDMTTCloseConEnter (ID_MDMTTBASE + 33)
  532. #define ID_MDMTTCloseConExit (ID_MDMTTBASE + 34)
  533. #define ID_MDMTTListEnter (ID_MDMTTBASE + 35)
  534. #define ID_MDMTTListExit (ID_MDMTTBASE + 36)
  535. #define ID_MDMTTAccEnter (ID_MDMTTBASE + 37)
  536. #define ID_MDMTTAccExit (ID_MDMTTBASE + 38)
  537. #define ID_MDMTTRejEnter (ID_MDMTTBASE + 39)
  538. #define ID_MDMTTRejExit (ID_MDMTTBASE + 40)
  539. #define ID_MDMTTRecLookEnter (ID_MDMTTBASE + 41)
  540. #define ID_MDMTTRecLookExit (ID_MDMTTBASE + 42)
  541. // Comment Information
  542. #define ID_MDMTCBASE 1200
  543. #define ID_MDMTCSeqNum (ID_MDMTCBASE + 1)
  544. #define ID_MDMTCFound (ID_MDMTCBASE + 2)
  545. #define ID_MDMTCWaiting (ID_MDMTCBASE + 3)
  546. #define ID_MDMTCCTSFail (ID_MDMTCBASE + 4)
  547. #define ID_MDMTCCTSPass (ID_MDMTCBASE + 5)
  548. #define ID_MDMTCCTSize (ID_MDMTCBASE + 6)
  549. #define ID_MDMTCCTSOut (ID_MDMTCBASE + 7)
  550. #define ID_MDMTCTCB (ID_MDMTCBASE + 8)
  551. #define ID_MDMTCECBPMAddr (ID_MDMTCBASE + 9)
  552. #define ID_MDMTCECBRMAddr (ID_MDMTCBASE + 10)
  553. #ifdef __cplusplus
  554. } // End of extern "C" {
  555. #endif // __cplusplus
  556. #endif // h file included already