#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
#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