home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sd386v50.zip / sd386src.zip / PID.H < prev    next >
Text File  |  1995-10-30  |  4KB  |  90 lines

  1. /*****************************************************************************/
  2. /* - serial sema4 requests for connect/disconnect.                           */
  3. /*****************************************************************************/
  4. #define CONNECT_WAIT         0
  5. #define DISCONNECT           1
  6. #define DISCONNECT_WAIT      2
  7. #define JUST_WAIT            3
  8. #define SET_WAIT             4
  9.  
  10. /*****************************************************************************/
  11. /* - Dbg Connected/Disconnected state definitions.                           */
  12. /*****************************************************************************/
  13. #define CONNECTED            10
  14. #define DISCONNECTED         11
  15.  
  16. /*****************************************************************************/
  17. /* - Some defines for informing esp of a connection at dbg.                  */
  18. /*****************************************************************************/
  19. #define INFORM_ESP    1
  20. #define NO_INFORM_ESP 2
  21.  
  22. /*****************************************************************************/
  23. /* - Some defines for sema4 states.                                          */
  24. /*****************************************************************************/
  25. #define SEMA4_NOT    0
  26. #define SEMA4_RESET  1
  27. #define SEMA4_POSTED 2
  28.  
  29. /*****************************************************************************/
  30. /* Structure of the Dbg session queue element.                               */
  31. /*****************************************************************************/
  32. typedef struct _pidflags
  33. {
  34.  int   ConnectYielded :1;  /* flag indicating that this pid has yielded      */
  35.                            /* it's connection. ( Applies to serial           */
  36.                            /* connections only.)                             */
  37.  int   IsDebug        :1;  /* Is this pid being debugged flag.               */
  38.  int   RequestConnect :1;  /* The probe is requesting a connection.          */
  39.  int   Initializing   :1;  /* Debugger running to entry point.               */
  40.  int   Executing      :1;  /* Flag to indicate GoFast()/GoStep() processing. */
  41.  int   CtrlBreak      :1;  /* Flag for handling Ctrl-Break.                  */
  42.  int   Reserved       :26;
  43. }PID_FLAGS;
  44.  
  45. /*****************************************************************************/
  46. /* - structure for a queued notification element added to shared memory      */
  47. /*   when debugging multiple processes over a serial channel. The element    */
  48. /*   will be removed after it is reported.                                   */
  49. /*****************************************************************************/
  50. typedef struct _sqeMessage
  51. {
  52.  struct  _sqeMessage *next;
  53.  ULONG                size;             /* size of this block.               */
  54.  signed char          msg;              /* the message being queued.         */
  55.  int                  Reported :1;      /* TRUE==>reported                   */
  56.  int                  Reserved :31;     /*                                   */
  57.  char                 parms[1];         /* parameters for the message.       */
  58. }SQE_MESSAGE;
  59.  
  60. /*****************************************************************************/
  61. /* - list node of all pids.                                                  */
  62. /*****************************************************************************/
  63. typedef struct _allpids
  64. {
  65.  struct _allpids *next;
  66.  USHORT           pid;
  67.  USHORT           mte;
  68.  ULONG            sid;
  69.  ULONG            type;
  70.  char            *pFileSpec;
  71.  HEV              ConnectSema4;
  72.  int              Connect;
  73.  USHORT           DbgPid;
  74.  ULONG            DbgSid;
  75.  USHORT           EspPid;
  76.  ULONG            EspSid;
  77.  SQE_MESSAGE     *pSqeMsg;              /* NULL for all except parent probe  */
  78.                                         /* and is used for serial only.      */
  79.  PID_FLAGS        PidFlags;
  80.  char            *pTermQue;             /* NULL for parent dbg/esp.          */
  81. }ALLPIDS;
  82.  
  83. typedef struct
  84. {
  85.  USHORT pid;
  86.  ULONG  type;
  87.  ULONG  mte;
  88. }SQE_NEW_PROCESS;
  89.  
  90.