Add copyright message to gles_video
[gpsp.git] / common.h
index f111348..fb7f31e 100644 (file)
--- a/common.h
+++ b/common.h
 #define ror(dest, value, shift)                                               \
   dest = ((value) >> shift) | ((value) << (32 - shift))                       \
 
+#if defined(_WIN32) || defined(_WIN32_WCE)
+  #define PATH_SEPARATOR "\\"
+  #define PATH_SEPARATOR_CHAR '\\'
+#else
+  #define PATH_SEPARATOR "/"
+  #define PATH_SEPARATOR_CHAR '/'
+#endif
+
 // These includes must be used before SDL is included.
 #ifdef ARM_ARCH
 
 #ifdef _WIN32_WCE
   #include <windows.h>
 #else
+  #define _BSD_SOURCE // sync
   #include <stdlib.h>
   #include <stdio.h>
   #include <string.h>
   typedef signed char s8;
   typedef unsigned short int u16;
   typedef signed short int s16;
-  typedef unsigned long u32;
-  typedef signed long s32;
+  typedef unsigned int u32;
+  typedef signed int s32;
   typedef unsigned long long int u64;
   typedef signed long long int s64;
 
 
   #define file_close(filename_tag)                                            \
   {                                                                           \
-    sync();                                                                   \
     fclose(filename_tag);                                                     \
+    sync();                                                                   \
   }                                                                           \
 
 #else
 #endif
 
   #define file_read(filename_tag, buffer, size)                               \
-    fread(buffer, size, 1, filename_tag)                                      \
+    fread(buffer, 1, size, filename_tag)                                      \
 
   #define file_write(filename_tag, buffer, size)                              \
-    fwrite(buffer, size, 1, filename_tag)                                     \
+    fwrite(buffer, 1, size, filename_tag)                                     \
 
   #define file_seek(filename_tag, offset, type)                               \
     fseek(filename_tag, offset, type)                                         \
 
   #define file_tag_type FILE *
 
-  // The ARM arch uses SDL, and SDL requires you to know what resolution
-  // you want. Define the resolution for ARM arch builds here.
-  // Placed in common.h for use with video.c and gui.c.
-
-  #ifndef PC_BUILD
-
-  #define GP2X_SCREEN_WIDTH 320
-  #define GP2X_SCREEN_HEIGHT 240
-
-  #define GIZ_SCREEN_WIDTH 320
-  #define GIZ_SCREEN_HEIGHT 240
-
-  #ifdef GP2X_BUILD
-    #define SDL_SCREEN_WIDTH GP2X_SCREEN_WIDTH
-    #define SDL_SCREEN_HEIGHT GP2X_SCREEN_HEIGHT
-
-  #elif defined(GIZ_BUILD)
-
-    #define SDL_SCREEN_WIDTH GIZ_SCREEN_WIDTH
-    #define SDL_SCREEN_HEIGHT GIZ_SCREEN_HEIGHT
-  #endif
-
-  #endif
-
 #endif
 
 // These must be variables, not constants.
 
 
 typedef u32 fixed16_16;
+typedef u32 fixed8_24;
 
 #define float_to_fp16_16(value)                                               \
   (fixed16_16)((value) * 65536.0)                                             \
@@ -219,6 +205,12 @@ typedef u32 fixed16_16;
 #define fp16_16_fractional_part(value)                                        \
   ((value) & 0xFFFF)                                                          \
 
+#define float_to_fp8_24(value)                                                \
+  (fixed8_24)((value) * 16777216.0)                                           \
+
+#define fp8_24_fractional_part(value)                                         \
+  ((value) & 0xFFFFFF)                                                        \
+
 #define fixed_div(numerator, denominator, bits)                               \
   (((numerator * (1 << bits)) + (denominator / 2)) / denominator)             \
 
@@ -248,6 +240,9 @@ typedef u32 fixed16_16;
 #include "zip.h"
 #include "cheats.h"
 
+#ifdef ARM_ARCH
+  #include "arm/warm.h"
+#endif
 
 #ifdef PSP_BUILD
   #define printf pspDebugScreenPrintf
@@ -268,9 +263,15 @@ typedef u32 fixed16_16;
   #define vprintf(format, ap)                                                 \
     vfprintf(stderr, format, ap)                                              \
 
-  void gp2x_overclock(void);
-
 //  #define STDIO_DEBUG
 #endif
 
+#ifdef PND_BUILD
+  #include "pandora/pnd.h"
+#endif
+
+#ifdef RPI_BUILD
+  #include "raspberrypi/rpi.h"
+#endif
+
 #endif