/*
 * Clone of <exec/types.h>, which could not be included because it's
 * (c) Commodore/Escom/Amiga/whatever.
 *
 */


#ifndef EXEC_TYPES_H
#define	EXEC_TYPES_H

#define GLOBAL	extern	    /* the declaratory use of an external */
#define IMPORT	extern	    /* reference to an external */
#define STATIC	static	    /* a local static variable */
#define REGISTER register   /* a (hopefully) register variable */

#ifndef VOID
#define VOID		void
#endif


typedef void*			APTR;		/* Address pointer */

typedef unsigned long	ULONG;
typedef long			LONG;
typedef unsigned long	LONGBITS;	/* Longword accessed bitwise */

typedef short			WORD;
typedef unsigned short	UWORD;
typedef unsigned short	WORDBITS;

typedef unsigned char	UBYTE;
typedef unsigned char	BYTEBITS;

typedef unsigned short	RPTR;	    /* relative pointer */


#if __STDC__
typedef signed char		BYTE;
#else
typedef char			BYTE;
#endif

#ifdef __cplusplus
typedef char *			STRPTR;     /* pointer to a string */
#else
typedef unsigned char *	STRPTR;     /* pointer to a string */
#endif

typedef float			FLOAT;
typedef double			DOUBLE;
typedef short			BOOL;		/* Boolean value */
typedef unsigned char	TEXT;


#ifndef TRUE
#define TRUE			1
#endif
#ifndef FALSE
#define FALSE			0
#endif
#ifndef NULL
#define NULL			0L
#endif


#endif