#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) \
#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) \
#include "zip.h"
#include "cheats.h"
+#ifdef ARM_ARCH
+ #include "arm/warm.h"
+#endif
#ifdef PSP_BUILD
#define printf pspDebugScreenPrintf
// #define STDIO_DEBUG
#endif
+#ifdef PND_BUILD
+ #include "pandora/pnd.h"
+#endif
+
#endif