home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / C / BC_DICE2.DMS / in.adf / INCLUDE / exec / tasks.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-10  |  1.6 KB  |  97 lines

  1. #ifndef EXEC_TASKS_H
  2. #define EXEC_TASKS_H
  3. /*
  4. ** $Filename: exec/tasks.h $
  5. ** $Release: 2.04 Includes, V37.4 $
  6. ** $Revision: 36.9 $
  7. ** $Date: 91/11/06 $
  8. **
  9. ** Task Control Block, Singals, and Task flags.
  10. **
  11. ** (C) Copyright 1985-1991 Commodore-Amiga, Inc.
  12. ** All Rights Reserved
  13. */
  14.  
  15. #ifndef EXEC_NODES_H
  16. #include "exec/nodes.h"
  17. #endif 
  18.  
  19. #ifndef EXEC_LISTS_H
  20. #include "exec/lists.h"
  21. #endif 
  22.  
  23.  
  24.  
  25. struct Task {
  26.  struct Node tc_Node;
  27.  UBYTE tc_Flags;
  28.  UBYTE tc_State;
  29.  BYTE tc_IDNestCnt; 
  30.  BYTE tc_TDNestCnt; 
  31.  ULONG tc_SigAlloc; 
  32.  ULONG tc_SigWait; 
  33.  ULONG tc_SigRecvd; 
  34.  ULONG tc_SigExcept; 
  35.  UWORD tc_TrapAlloc; 
  36.  UWORD tc_TrapAble; 
  37.  APTR tc_ExceptData; 
  38.  APTR tc_ExceptCode; 
  39.  APTR tc_TrapData; 
  40.  APTR tc_TrapCode; 
  41.  APTR tc_SPReg; 
  42.  APTR tc_SPLower; 
  43.  APTR tc_SPUpper; 
  44.  VOID (*tc_Switch)(); 
  45.  VOID (*tc_Launch)(); 
  46.  struct List tc_MemEntry; 
  47.  APTR tc_UserData; 
  48. };
  49.  
  50.  
  51. struct StackSwapStruct {
  52.  APTR stk_Lower; 
  53.  ULONG stk_Upper; 
  54.  APTR stk_Pointer; 
  55. };
  56.  
  57.  
  58. #define TB_PROCTIME 0
  59. #define TB_ETASK 3
  60. #define TB_STACKCHK 4
  61. #define TB_EXCEPT 5
  62. #define TB_SWITCH 6
  63. #define TB_LAUNCH 7
  64.  
  65. #define TF_PROCTIME (1<<0)
  66. #define TF_ETASK (1<<3)
  67. #define TF_STACKCHK (1<<4)
  68. #define TF_EXCEPT (1<<5)
  69. #define TF_SWITCH (1<<6)
  70. #define TF_LAUNCH (1<<7)
  71.  
  72.  
  73. #define TS_INVALID 0
  74. #define TS_ADDED 1
  75. #define TS_RUN 2
  76. #define TS_READY 3
  77. #define TS_WAIT 4
  78. #define TS_EXCEPT 5
  79. #define TS_REMOVED 6
  80.  
  81.  
  82. #define SIGB_ABORT 0
  83. #define SIGB_CHILD 1
  84. #define SIGB_BLIT 4 
  85. #define SIGB_SINGLE 4 
  86. #define SIGB_INTUITION 5
  87. #define SIGB_DOS 8
  88.  
  89. #define SIGF_ABORT (1L<<0)
  90. #define SIGF_CHILD (1L<<1)
  91. #define SIGF_BLIT (1L<<4)
  92. #define SIGF_SINGLE (1L<<4)
  93. #define SIGF_INTUITION (1L<<5)
  94. #define SIGF_DOS (1L<<8)
  95.  
  96. #endif 
  97.