#ifndef	EXEC_EXECBASE_H
#define	EXEC_EXECBASE_H
#ifndef EXEC_TYPES_H
#include "exec/types.h"
#endif /* !EXEC_TYPES_H */
#ifndef	EXEC_LISTS_H
#include	"exec/lists.h"
#endif	/* !EXEC_LISTS_H */
#ifndef	EXEC_INTERRUPTS_H
#include	"exec/interrupts.h"
#endif	/* !EXEC_INTERRUPTS_H */
#ifndef	EXEC_LIBRARIES_H
#include	"exec/libraries.h"
#endif	/* !EXEC_LIBRARIES_H */
#ifndef	EXEC_TASKS_H
#include	"exec/tasks.h"
#endif	/* !EXEC_TASKS_H */
struct	ExecBase	{
struct	Library	LibNode;
UWORD	SoftVer;
WORD	LowMemChkSum;
ULONG	ChkBase;
APTR	ColdCapture;
APTR	CoolCapture;
APTR	WarmCapture;
APTR	SysStkUpper;
APTR	SysStkLower;
ULONG	MaxLocMem;
APTR	DebugEntry;
APTR	DebugData;
APTR	AlertData;
APTR	MaxExtMem;
UWORD	ChkSum;
struct	IntVector	IntVects[16];
struct	Task	*ThisTask;
ULONG	IdleCount;
ULONG	DispCount;
UWORD	Quantum;
UWORD	Elapsed;
UWORD	SysFlags;
BYTE	IDNestCnt;
BYTE	TDNestCnt;
UWORD	AttnFlags;
UWORD	AttnResched;
APTR	ResModules;
APTR	TaskTrapCode;
APTR	TaskExceptCode;
APTR	TaskExitCode;
ULONG	TaskSigAlloc;
UWORD	TaskTrapAlloc;
struct	List	MemList;
struct	List	ResourceList;
struct	List	DeviceList;
struct	List	IntrList;
struct	List	LibList;
struct	List	PortList;
struct	List	TaskReady;
struct	List	TaskWait;
struct	SoftIntList	SoftInts[5];
LONG	LastAlert[4];
UBYTE	VBlankFrequency;
UBYTE	PowerSupplyFrequency;
struct	List	SemaphoreList;
APTR	KickMemPtr;
APTR	KickTagPtr;
APTR	KickCheckSum;
UBYTE	ExecBaseReserved[10];
UBYTE	ExecBaseNewReserved[20];
};
#define	SYSBASESIZE	sizeof(struct	ExecBase)
#define	AFB_68010	0L
#define	AFB_68020	1L
#define	AFB_68881	4L
#define	AFF_68010	(1L<<0)
#define	AFF_68020	(1L<<1)
#define	AFF_68881	(1L<<4)
#define	AFB_RESERVED8	8L
#define	AFB_RESERVED9	9L
#endif
