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

  1. #ifndef EXEC_EXECBASE_H
  2. #define EXEC_EXECBASE_H
  3. /*
  4. ** $Filename: exec/execbase.h $
  5. ** $Release: 2.04 Includes, V37.4 $
  6. ** $Revision: 36.18 $
  7. ** $Date: 91/10/10 $
  8. **
  9. ** Definition of the exec.library base structure.
  10. **
  11. ** (C) Copyright 1985-1991 Commodore-Amiga, Inc.
  12. ** All Rights Reserved
  13. */
  14.  
  15. #ifndef EXEC_LISTS_H
  16. #include "exec/lists.h"
  17. #endif 
  18.  
  19. #ifndef EXEC_INTERRUPTS_H
  20. #include "exec/interrupts.h"
  21. #endif 
  22.  
  23. #ifndef EXEC_LIBRARIES_H
  24. #include "exec/libraries.h"
  25. #endif 
  26.  
  27. #ifndef EXEC_TASKS_H
  28. #include "exec/tasks.h"
  29. #endif 
  30.  
  31.  
  32.  
  33. struct ExecBase {
  34.  struct Library LibNode; 
  35.  
  36.  
  37.  
  38.  UWORD SoftVer; 
  39.  WORD LowMemChkSum; 
  40.  ULONG ChkBase; 
  41.  APTR ColdCapture; 
  42.  APTR CoolCapture; 
  43.  APTR WarmCapture; 
  44.  APTR SysStkUpper; 
  45.  APTR SysStkLower; 
  46.  ULONG MaxLocMem; 
  47.  APTR DebugEntry; 
  48.  APTR DebugData; 
  49.  APTR AlertData; 
  50.  APTR MaxExtMem; 
  51.  
  52.  UWORD ChkSum; 
  53.  
  54.  
  55.  
  56.  struct IntVector IntVects[16];
  57.  
  58.  
  59.  
  60.  struct Task *ThisTask; 
  61.  
  62.  ULONG IdleCount; 
  63.  ULONG DispCount; 
  64.  UWORD Quantum; 
  65.  UWORD Elapsed; 
  66.  UWORD SysFlags; 
  67.  BYTE IDNestCnt; 
  68.  BYTE TDNestCnt; 
  69.  
  70.  UWORD AttnFlags; 
  71.  
  72.  UWORD AttnResched; 
  73.  APTR ResModules; 
  74.  APTR TaskTrapCode;
  75.  APTR TaskExceptCode;
  76.  APTR TaskExitCode;
  77.  ULONG TaskSigAlloc;
  78.  UWORD TaskTrapAlloc;
  79.  
  80.  
  81.  
  82.  
  83.  struct List MemList;
  84.  struct List ResourceList;
  85.  struct List DeviceList;
  86.  struct List IntrList;
  87.  struct List LibList;
  88.  struct List PortList;
  89.  struct List TaskReady;
  90.  struct List TaskWait;
  91.  
  92.  struct SoftIntList SoftInts[5];
  93.  
  94.  
  95.  
  96.  LONG LastAlert[4];
  97.  
  98.  
  99.  UBYTE VBlankFrequency; 
  100.  UBYTE PowerSupplyFrequency; 
  101.  
  102.  struct List SemaphoreList;
  103.  
  104.  
  105.  APTR KickMemPtr; 
  106.  APTR KickTagPtr; 
  107.  APTR KickCheckSum; 
  108.  
  109.  
  110.  
  111.  UWORD ex_Pad0;
  112.  ULONG ex_LaunchPoint; 
  113.  APTR ex_RamLibPrivate;
  114.  
  115.  ULONG ex_EClockFrequency; 
  116.  ULONG ex_CacheControl; 
  117.  ULONG ex_TaskID; 
  118.  
  119.  ULONG ex_PuddleSize;
  120.  ULONG ex_PoolThreshold;
  121.  struct MinList ex_PublicPool;
  122.  
  123.  APTR ex_MMULock; 
  124.  
  125.  UBYTE ex_Reserved[12];
  126. };
  127.  
  128.  
  129.  
  130.  
  131.  
  132. #define AFB_68010 0 
  133. #define AFB_68020 1 
  134. #define AFB_68030 2 
  135. #define AFB_68040 3
  136. #define AFB_68881 4 
  137. #define AFB_68882 5
  138. #define AFB_FPU40 6 
  139.  
  140.  
  141. #define AFB_PRIVATE 15 
  142.  
  143. #define AFF_68010 (1L<<0)
  144. #define AFF_68020 (1L<<1)
  145. #define AFF_68030 (1L<<2)
  146. #define AFF_68040 (1L<<3)
  147. #define AFF_68881 (1L<<4)
  148. #define AFF_68882 (1L<<5)
  149. #define AFF_FPU40 (1L<<6)
  150.  
  151. #define AFF_PRIVATE (1L<<15)
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159. #define CACRF_EnableI (1L<<0) 
  160. #define CACRF_FreezeI (1L<<1) 
  161. #define CACRF_ClearI (1L<<3) 
  162. #define CACRF_IBE (1L<<4) 
  163. #define CACRF_EnableD (1L<<8) 
  164. #define CACRF_FreezeD (1L<<9) 
  165. #define CACRF_ClearD (1L<<11) 
  166. #define CACRF_DBE (1L<<12) 
  167. #define CACRF_WriteAllocate (1L<<13) 
  168. #define CACRF_CopyBack (1L<<31) 
  169.  
  170. #define DMA_Continue (1L<<1) 
  171. #define DMA_NoModify (1L<<2) 
  172.  
  173.  
  174. #endif 
  175.