added enabling/disabling virtual button overlay depending on input events
[rocksndiamonds.git] / src / libgame / types.h
index d6f49bdd68026c47a6557575f8eb15ad2e8c1d86..acc2c236f35a3f06ba434e90c973015bb9bcaa63 100644 (file)
@@ -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
+//                 http://www.artsoft.org/
+// ----------------------------------------------------------------------------
+// types.h
+// ============================================================================
 
 #ifndef TYPES_H
 #define TYPES_H
@@ -58,6 +56,14 @@ typedef unsigned char byte;
 #define SIGN(a)                ((a) < 0 ? -1 : ((a) > 0 ? 1 : 0))
 #endif
 
+#ifndef ODD
+#define ODD(a)         (((a) & 1) == 1)
+#endif
+
+#ifndef EVEN
+#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)
 
@@ -66,6 +72,7 @@ struct ListNode
 {
   char *key;
   void *content;
+  struct ListNode *prev;
   struct ListNode *next;
 };
 typedef struct ListNode ListNode;