X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Ftypes.h;h=15b25ce8da23c4449a74e2506dc34bca1f0203a0;hb=edaa850fd2d2cae7ec31961fae3d56487e710c71;hp=6e55364cb9ddd40945865a5eda9cbd262324c8ac;hpb=438885e31e0cf03304f95b125c949b9c8641e6b5;p=rocksndiamonds.git diff --git a/src/libgame/types.h b/src/libgame/types.h index 6e55364c..15b25ce8 100644 --- a/src/libgame/types.h +++ b/src/libgame/types.h @@ -1,15 +1,13 @@ -/*********************************************************** -* Artsoft Retro-Game Library * -*----------------------------------------------------------* -* (c) 1994-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* types.h * -***********************************************************/ +// ============================================================================ +// Artsoft Retro-Game Library +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// https://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// types.h +// ============================================================================ #ifndef TYPES_H #define TYPES_H @@ -20,9 +18,9 @@ #include #include -typedef int boolean; -#if !defined(PLATFORM_WIN32) +#if !defined(PLATFORM_WINDOWS) +typedef int boolean; typedef unsigned char byte; #endif @@ -38,44 +36,59 @@ typedef unsigned char byte; #undef AUTO #endif -#define TRUE 1 -#define FALSE 0 -#define AUTO -1 +#define TRUE 1 +#define FALSE 0 +#define AUTO -1 #ifndef MIN -#define MIN(a,b) ((a) < (b) ? (a) : (b)) +#define MIN(a, b) ((a) < (b) ? (a) : (b)) #endif #ifndef MAX -#define MAX(a,b) ((a) > (b) ? (a) : (b)) +#define MAX(a, b) ((a) > (b) ? (a) : (b)) #endif #ifndef ABS -#define ABS(a) ((a) < 0 ? -(a) : (a)) +#define ABS(a) ((a) < 0 ? -(a) : (a)) #endif #ifndef SIGN -#define SIGN(a) ((a) < 0 ? -1 : ((a) > 0 ? 1 : 0)) +#define SIGN(a) ((a) < 0 ? -1 : ((a) > 0 ? 1 : 0)) #endif #ifndef ODD -#define ODD(a) (((a) & 1) == 1) +#define ODD(a) (((a) & 1) == 1) #endif #ifndef EVEN -#define EVEN(a) (((a) & 1) == 0) +#define EVEN(a) (((a) & 1) == 0) #endif -#define SIZEOF_ARRAY(array, type) (sizeof(array) / sizeof(type)) -#define SIZEOF_ARRAY_INT(array) SIZEOF_ARRAY(array, int) +#define ARRAY_SIZE(array) (sizeof(array) / sizeof(array[0])) + +#define PTR_TO_INT(p) ((int) (long) (p)) +#define PTR_TO_UINT(p) ((unsigned int) (unsigned long) (p)) + +#define INT_TO_PTR(i) ((void *) (long) (i)) +#define UINT_TO_PTR(u) ((void *) (unsigned long) (u)) + +#define STRUCT_OFFSET(s, m) (offsetof(s, m)) struct ListNode { char *key; void *content; + struct ListNode *prev; struct ListNode *next; }; typedef struct ListNode ListNode; -#endif /* TYPES_H */ +struct DelayCounter +{ + unsigned int value; + unsigned int count; +}; +typedef struct DelayCounter DelayCounter; + +#endif // TYPES_H