27#ifndef COMMON_SCUMMSYS_H
28#define COMMON_SCUMMSYS_H
31#if defined(_WIN32_WCE) && _WIN32_WCE < 300
32 #define NONSTANDARD_PORT
35#if defined(NONSTANDARD_PORT)
49 #define vsnprintf _vsnprintf
53 #if !defined(_WIN32_WCE)
55 #define WIN32_LEAN_AND_MEAN
81 #if defined(ARRAYSIZE)
88 #if defined(__QNXNTO__)
105#if defined(HAVE_CONFIG_H)
136#define SCUMMVM_DONT_DEFINE_TYPES
151#define SCUMMVM_USE_PRAGMA_PACK
154#if defined(__SYMBIAN32__)
156 #define scumm_stricmp strcasecmp
157 #define scumm_strnicmp strncasecmp
159 #define SCUMM_LITTLE_ENDIAN
160 #define SCUMM_NEED_ALIGNMENT
162 #define SMALL_SCREEN_DEVICE
169 #define SCUMMVM_DONT_DEFINE_TYPES
170 typedef unsigned char byte;
172 typedef unsigned char uint8;
173 typedef signed char int8;
175 typedef unsigned short int uint16;
176 typedef signed short int int16;
178 typedef unsigned long int uint32;
179 typedef signed long int int32;
181#elif defined(_WIN32_WCE)
183 #define scumm_stricmp stricmp
184 #define scumm_strnicmp _strnicmp
185 #define snprintf _snprintf
187 #define SCUMM_LITTLE_ENDIAN
190 #define FORCEINLINE __forceinline
191 #define NORETURN_PRE __declspec(noreturn)
193 #define PLUGIN_EXPORT __declspec(dllexport)
196 #define SMALL_SCREEN_DEVICE
199#elif defined(_MSC_VER)
201 #define scumm_stricmp _stricmp
202 #define scumm_strnicmp _strnicmp
203 #define snprintf _snprintf
205 #define SCUMM_LITTLE_ENDIAN
207 #define FORCEINLINE __forceinline
208 #define NORETURN_PRE __declspec(noreturn)
209 #define PLUGIN_EXPORT __declspec(dllexport)
212#elif defined(__MINGW32__)
214 #define scumm_stricmp stricmp
215 #define scumm_strnicmp strnicmp
217 #define SCUMM_LITTLE_ENDIAN
219 #define PLUGIN_EXPORT __declspec(dllexport)
223 #define scumm_stricmp strcasecmp
224 #define scumm_strnicmp strncasecmp
230#define SDL_BYTEORDER SDL_LIL_ENDIAN
232 #if SDL_BYTEORDER == SDL_LIL_ENDIAN
233 #define SCUMM_LITTLE_ENDIAN
234 #elif SDL_BYTEORDER == SDL_BIG_ENDIAN
235 #define SCUMM_BIG_ENDIAN
237 #error Neither SDL_BIG_ENDIAN nor SDL_LIL_ENDIAN is set.
244 #if defined(__DECCXX)
246 #define SCUMM_NEED_ALIGNMENT
249#elif defined(__PALMOS_TRAPS__) || defined (__PALMOS_ARMLET__)
251#ifdef __PALMOS_ARMLET__
252 #include <extras_string.h>
254 #define SCUMM_LITTLE_ENDIAN
256 #define scumm_stricmp stricmp
257 #define scumm_strnicmp strnicmp
259 #define SCUMM_NEED_ALIGNMENT
260 #define STRINGBUFLEN 256
262 extern const char *SCUMMVM_SAVEPATH;
264 #if !defined(COMPILE_ZODIAC) && !defined(COMPILE_OS5)
272 #define scumm_stricmp strcasecmp
273 #define scumm_strnicmp strncasecmp
275 #define SCUMM_LITTLE_ENDIAN
276 #define SCUMM_NEED_ALIGNMENT
278#elif defined(__GP32__)
280 #define scumm_stricmp stricmp
281 #define scumm_strnicmp strnicmp
283 #define SCUMM_LITTLE_ENDIAN
284 #define SCUMM_NEED_ALIGNMENT
287 #define SCUMMVM_DONT_DEFINE_TYPES
288 typedef unsigned char byte;
290 typedef unsigned char uint8;
291 typedef signed char int8;
293 typedef unsigned short int uint16;
294 typedef signed short int int16;
296 typedef unsigned long int uint32;
297 typedef signed long int int32;
299#elif defined(__PLAYSTATION2__)
301 #define scumm_stricmp strcasecmp
302 #define scumm_strnicmp strncasecmp
304 #define SCUMM_LITTLE_ENDIAN
305 #define SCUMM_NEED_ALIGNMENT
307#elif defined(__N64__)
309 #define scumm_stricmp strcasecmp
310 #define scumm_strnicmp strncasecmp
312 #define SCUMM_BIG_ENDIAN
313 #define SCUMM_NEED_ALIGNMENT
315 #define STRINGBUFLEN 256
317 #define SCUMMVM_DONT_DEFINE_TYPES
318 typedef unsigned char byte;
320 typedef unsigned char uint8;
321 typedef signed char int8;
323 typedef unsigned short int uint16;
324 typedef signed short int int16;
326 typedef unsigned int uint32;
327 typedef signed int int32;
329 typedef unsigned long long uint64;
330 typedef signed long long int64;
332#elif defined(__PSP__)
336 #define scumm_stricmp strcasecmp
337 #define scumm_strnicmp strncasecmp
339 #define SCUMM_LITTLE_ENDIAN
340 #define SCUMM_NEED_ALIGNMENT
342#elif defined(__amigaos4__)
344 #define scumm_stricmp strcasecmp
345 #define scumm_strnicmp strncasecmp
347 #define SCUMM_BIG_ENDIAN
348 #define SCUMM_NEED_ALIGNMENT
350#elif defined (__DS__)
352 #define scumm_stricmp stricmp
353 #define scumm_strnicmp strnicmp
355 #define SCUMM_NEED_ALIGNMENT
356 #define SCUMM_LITTLE_ENDIAN
358 #define SCUMMVM_DONT_DEFINE_TYPES
360 #define STRINGBUFLEN 256
363#elif defined(__WII__)
365 #define scumm_stricmp strcasecmp
366 #define scumm_strnicmp strncasecmp
368 #define SCUMM_BIG_ENDIAN
369 #define SCUMM_NEED_ALIGNMENT
372 #error No system type defined
381 #define NORETURN_POST __attribute__((__noreturn__))
382 #define PACKED_STRUCT __attribute__((__packed__))
383 #define GCC_PRINTF(x,y) __attribute__((__format__(printf, x, y)))
385 #if !defined(FORCEINLINE) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
386 #define FORCEINLINE inline __attribute__((__always_inline__))
389 #define PACKED_STRUCT
390 #define GCC_PRINTF(x,y)
398#define FORCEINLINE inline
414#define STRINGBUFLEN 1024
418#define PI 3.14159265358979323846
422#define MAXPATHLEN 256
429#ifndef SCUMMVM_DONT_DEFINE_TYPES
445#if defined(NEWGUI_256)
unsigned short uint16
Definition: scummsys.h:433
unsigned char byte
Definition: scummsys.h:430
unsigned int uint32
Definition: scummsys.h:435
signed char int8
Definition: scummsys.h:432
signed short int16
Definition: scummsys.h:434
signed int int32
Definition: scummsys.h:436
unsigned int uint
Definition: scummsys.h:437
unsigned char uint8
Definition: scummsys.h:431
uint16 OverlayColor
Definition: scummsys.h:450