[Scummvm-cvs-logs] SF.net SVN: scummvm: [30638] residual/trunk/common
aquadran at users.sourceforge.net
aquadran at users.sourceforge.net
Sat Jan 26 11:17:53 CET 2008
Revision: 30638
http://scummvm.svn.sourceforge.net/scummvm/?rev=30638&view=rev
Author: aquadran
Date: 2008-01-26 02:17:52 -0800 (Sat, 26 Jan 2008)
Log Message:
-----------
renames bits.h -> platform.h, stdafx.h -> sys.h
Added Paths:
-----------
residual/trunk/common/platform.h
residual/trunk/common/sys.h
Removed Paths:
-------------
residual/trunk/common/bits.h
residual/trunk/common/stdafx.h
Deleted: residual/trunk/common/bits.h
===================================================================
--- residual/trunk/common/bits.h 2008-01-26 09:18:08 UTC (rev 30637)
+++ residual/trunk/common/bits.h 2008-01-26 10:17:52 UTC (rev 30638)
@@ -1,388 +0,0 @@
-/* Residual - Virtual machine to run LucasArts' 3D adventure games
- * Copyright (C) 2003-2006 The ScummVM-Residual Team (www.scummvm.org)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
-
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
-
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
- *
- * $URL$
- * $Id$
- *
- */
-
-#ifndef BITS_H
-#define BITS_H
-
-#include "stdafx.h"
-#include "vector3d.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#ifndef __DC__
-#include <SDL_byteorder.h>
-#endif
-
-// Use config.h, generated by configure
-#if defined(HAVE_CONFIG_H)
-#include "config.h"
-#endif
-
-#ifndef PI
-#define PI 3.14159265358979323846
-#endif
-
-#define ARRAYSIZE(x) ((int)(sizeof(x) / sizeof(x[0])))
-
-template<typename T> inline T ABS (T x) { return (x>=0) ? x : -x; }
-template<typename T> inline T MIN (T a, T b) { return (a<b) ? a : b; }
-template<typename T> inline T MAX (T a, T b) { return (a>b) ? a : b; }
-
-#ifndef round
-#define round(x) ((x > 0.0) ? floor((x) + 0.5) : ceil((x) - 0.5))
-#endif
-
-#if defined(_MSC_VER)
-
- #define snprintf _snprintf
-
- #if defined(CHECK_HEAP)
- #undef CHECK_HEAP
- #define CHECK_HEAP checkHeap();
- #else
- #define CHECK_HEAP
- #endif
-
- #define SYSTEM_LITTLE_ENDIAN
-
- #define FORCEINLINE __forceinline
- #define NORETURN _declspec(noreturn)
-
- typedef unsigned char byte;
- typedef unsigned char uint8;
- typedef unsigned short uint16;
- typedef unsigned long uint32;
- typedef unsigned int uint;
- typedef signed char int8;
- typedef signed short int16;
- typedef signed long int32;
-
- #define START_PACK_STRUCTS pack(push, 1)
- #define END_PACK_STRUCTS pack(pop)
- #define GCC_PACK
-
-#elif defined(__MINGW32__)
-
- #define CHECK_HEAP
- #define SYSTEM_LITTLE_ENDIAN
-
- #define NORETURN __attribute__((__noreturn__))
- #define GCC_PACK __attribute__((packed))
- #define _HEAPOK 0
-
- typedef unsigned char byte;
- typedef unsigned char uint8;
- typedef unsigned short uint16;
- typedef unsigned int uint32;
- typedef unsigned int uint;
- typedef signed char int8;
- typedef signed short int16;
- typedef signed int int32;
-
- #define START_PACK_STRUCTS pack (push, 1)
- #define END_PACK_STRUCTS pack(pop)
-
-#elif defined(UNIX)
-
- #define CHECK_HEAP
-
- #ifdef X11_BACKEND
-
- // You need to set this manually if necessary
-// #define SYSTEM_LITTLE_ENDIAN
-
- #else
- /* need this for the SDL_BYTEORDER define */
- #include <SDL_byteorder.h>
-
- #if SDL_BYTEORDER == SDL_LIL_ENDIAN
- #define SYSTEM_LITTLE_ENDIAN
- #elif SDL_BYTEORDER == SDL_BIG_ENDIAN
- #define SYSTEM_BIG_ENDIAN
- #else
- #error Neither SDL_BIG_ENDIAN nor SDL_LIL_ENDIAN is set.
- #endif
- #endif
-
- // You need to set this manually if necessary
-// #define SYSTEM_NEED_ALIGNMENT
-
- #define FORCEINLINE inline
- #define CDECL
-
- #ifndef HAVE_CONFIG_H
- typedef unsigned char byte;
- typedef unsigned char uint8;
- typedef unsigned short uint16;
- typedef unsigned int uint;
- typedef unsigned int uint32;
- typedef signed char int8;
- typedef signed short int16;
- typedef signed int int32;
- #endif
-
- #if defined(__DECCXX) // Assume alpha architecture
- #define INVERSE_MKID
- #define SYSTEM_NEED_ALIGNMENT
- #endif
-
- #if defined(__GNUC__)
- #define START_PACK_STRUCTS
- #define END_PACK_STRUCTS
- #define GCC_PACK __attribute__((packed))
- #define NORETURN __attribute__((__noreturn__))
- #else
- #define START_PACK_STRUCTS pack (1)
- #define END_PACK_STRUCTS pack ()
- #define GCC_PACK
- #define NORETURN
- #endif
-
- #ifdef __FreeBSD__
- #undef ROUND
- #define ROUND(x) rint(x)
- #endif
-
- #if defined(__APPLE__) && defined(__MACH__)
- #define MACOSX
- #endif
-
-#elif defined(__MORPHOS__)
- #define scumm_stricmp stricmp
- #define scumm_strnicmp strnicmp
- #define CHECK_HEAP
-
- #define SYSTEM_BIG_ENDIAN
- #define SYSTEM_NEED_ALIGNMENT
-
- #define FORCEINLINE inline
- #define CDECL
-
- typedef unsigned char byte;
- typedef unsigned char uint8;
- typedef unsigned short uint16;
- typedef unsigned long uint32;
- typedef unsigned int uint;
- typedef signed char int8;
- typedef signed short int16;
- typedef signed long int32;
-
- #if defined(__GNUC__)
- #define START_PACK_STRUCTS
- #define END_PACK_STRUCTS
- #define GCC_PACK __attribute__((packed))
- #define NORETURN __attribute__((__noreturn__))
- #else
- #define START_PACK_STRUCTS pack (1)
- #define END_PACK_STRUCTS pack ()
- #define GCC_PACK
- #define NORETURN
- #endif
- #define main morphos_main
-
-#elif defined(__DC__)
-
- #define CHECK_HEAP
- #define SYSTEM_LITTLE_ENDIAN
- #define SYSTEM_NEED_ALIGNMENT
-
- #define FORCEINLINE inline
- #define NORETURN __attribute__((__noreturn__))
- #define GCC_PACK __attribute__((packed))
- #define CDECL
-
- typedef unsigned char byte;
- typedef unsigned char uint8;
- typedef unsigned short uint16;
- typedef unsigned long uint32;
- typedef unsigned int uint;
- typedef signed char int8;
- typedef signed short int16;
- typedef signed long int32;
-
- #define START_PACK_STRUCTS pack (push, 1)
- #define END_PACK_STRUCTS pack(pop)
-
-#else
- #error No system type defined
-#endif
-
-FORCEINLINE uint32 SWAP_BYTES_32(uint32 a) {
- return ((a >> 24) & 0x000000FF) |
- ((a >> 8) & 0x0000FF00) |
- ((a << 8) & 0x00FF0000) |
- ((a << 24) & 0xFF000000);
-}
-
-FORCEINLINE uint16 SWAP_BYTES_16(uint16 a) {
- return ((a >> 8) & 0x00FF) + ((a << 8) & 0xFF00);
-}
-
-
-#if defined(SYSTEM_LITTLE_ENDIAN)
-
- #define PROTO_MKID(a) ((uint32) \
- (((a) >> 24) & 0x000000FF) | \
- (((a) >> 8) & 0x0000FF00) | \
- (((a) << 8) & 0x00FF0000) | \
- (((a) << 24) & 0xFF000000))
- #define PROTO_MKID_BE(a) ((uint32)(a))
-
- #if defined(INVERSE_MKID)
- # define MKID(a) PROTO_MKID_BE(a)
- # define MKID_BE(a) PROTO_MKID(a)
- #else
- # define MKID(a) PROTO_MKID(a)
- # define MKID_BE(a) PROTO_MKID_BE(a)
- #endif
-
- #define READ_UINT32(a) READ_LE_UINT32(a)
-
- #define FROM_LE_32(a) ((uint32)(a))
- #define FROM_LE_16(a) ((uint16)(a))
-
- #define TO_LE_32(a) ((uint32)(a))
- #define TO_LE_16(a) ((uint16)(a))
-
- #define TO_BE_32(a) SWAP_BYTES_32(a)
- #define TO_BE_16(a) SWAP_BYTES_16(a)
-
-#elif defined(SYSTEM_BIG_ENDIAN)
-
- #define MKID(a) ((uint32)(a))
- #define MKID_BE(a) ((uint32)(a))
-
- #define READ_UINT32(a) READ_BE_UINT32(a)
-
- #define FROM_LE_32(a) SWAP_BYTES_32(a)
- #define FROM_LE_16(a) SWAP_BYTES_16(a)
-
- #define TO_LE_32(a) SWAP_BYTES_32(a)
- #define TO_LE_16(a) SWAP_BYTES_16(a)
-
- #define TO_BE_32(a) ((uint32)(a))
- #define TO_BE_16(a) ((uint16)(a))
-
-#else
-
- #error No endianness defined
-
-#endif
-
-
-#if defined(SYSTEM_NEED_ALIGNMENT) || defined(SYSTEM_BIG_ENDIAN)
- FORCEINLINE uint16 READ_LE_UINT16(const void *ptr) {
- const byte *b = (const byte *)ptr;
- return (b[1] << 8) + b[0];
- }
- FORCEINLINE uint32 READ_LE_UINT32(const void *ptr) {
- const byte *b = (const byte *)ptr;
- return (b[3] << 24) + (b[2] << 16) + (b[1] << 8) + (b[0]);
- }
- FORCEINLINE void WRITE_LE_UINT16(void *ptr, uint16 value) {
- byte *b = (byte *)ptr;
- b[0] = (byte)(value >> 0);
- b[1] = (byte)(value >> 8);
- }
- FORCEINLINE void WRITE_LE_UINT32(void *ptr, uint32 value) {
- byte *b = (byte *)ptr;
- b[0] = (byte)(value >> 0);
- b[1] = (byte)(value >> 8);
- b[2] = (byte)(value >> 16);
- b[3] = (byte)(value >> 24);
- }
-#else
- FORCEINLINE uint16 READ_LE_UINT16(const void *ptr) {
- return *(const uint16 *)(ptr);
- }
- FORCEINLINE uint32 READ_LE_UINT32(const void *ptr) {
- return *(const uint32 *)(ptr);
- }
- FORCEINLINE void WRITE_LE_UINT16(void *ptr, uint16 value) {
- *(uint16 *)(ptr) = value;
- }
- FORCEINLINE void WRITE_LE_UINT32(void *ptr, uint32 value) {
- *(uint32 *)(ptr) = value;
- }
-#endif
-
-
-#if defined(SYSTEM_NEED_ALIGNMENT) || defined(SYSTEM_LITTLE_ENDIAN)
- FORCEINLINE uint16 READ_BE_UINT16(const void *ptr) {
- const byte *b = (const byte *)ptr;
- return (b[0] << 8) + b[1];
- }
- FORCEINLINE uint32 READ_BE_UINT32(const void *ptr) {
- const byte *b = (const byte*)ptr;
- return (b[0] << 24) + (b[1] << 16) + (b[2] << 8) + (b[3]);
- }
- FORCEINLINE void WRITE_BE_UINT16(void *ptr, uint16 value) {
- byte *b = (byte *)ptr;
- b[0] = (byte)(value >> 8);
- b[1] = (byte)(value >> 0);
- }
- FORCEINLINE void WRITE_BE_UINT32(void *ptr, uint32 value) {
- byte *b = (byte *)ptr;
- b[0] = (byte)(value >> 24);
- b[1] = (byte)(value >> 16);
- b[2] = (byte)(value >> 8);
- b[3] = (byte)(value >> 0);
- }
-#else
- FORCEINLINE uint16 READ_BE_UINT16(const void *ptr) {
- return *(const uint16 *)(ptr);
- }
- FORCEINLINE uint32 READ_BE_UINT32(const void *ptr) {
- return *(const uint32 *)(ptr);
- }
- FORCEINLINE void WRITE_BE_UINT16(void *ptr, uint16 value) {
- *(uint16 *)(ptr) = value;
- }
- FORCEINLINE void WRITE_BE_UINT32(void *ptr, uint32 value) {
- *(uint32 *)(ptr) = value;
- }
-#endif
-
-#if defined(SYSTEM_BIG_ENDIAN)
-
-inline float get_float(const char *data) {
- const unsigned char *udata = reinterpret_cast<const unsigned char *>(data);
- unsigned char fdata[4];
- fdata[0] = udata[3];
- fdata[1] = udata[2];
- fdata[2] = udata[1];
- fdata[3] = udata[0];
- return *(reinterpret_cast<const float *>(fdata));
-}
-
-#else
-
-inline float get_float(const char *data) {
- return *(reinterpret_cast<const float *>(data));
-}
-#endif
-
-inline Vector3d get_vector3d(const char *data) {
- return Vector3d(get_float(data), get_float(data + 4), get_float(data + 8));
-}
-
-#endif
Copied: residual/trunk/common/platform.h (from rev 30637, residual/trunk/common/bits.h)
===================================================================
--- residual/trunk/common/platform.h (rev 0)
+++ residual/trunk/common/platform.h 2008-01-26 10:17:52 UTC (rev 30638)
@@ -0,0 +1,388 @@
+/* Residual - Virtual machine to run LucasArts' 3D adventure games
+ * Copyright (C) 2003-2006 The ScummVM-Residual Team (www.scummvm.org)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ *
+ * $URL$
+ * $Id$
+ *
+ */
+
+#ifndef BITS_H
+#define BITS_H
+
+#include "stdafx.h"
+#include "vector3d.h"
+
+#include <stdlib.h>
+#include <stdio.h>
+#ifndef __DC__
+#include <SDL_byteorder.h>
+#endif
+
+// Use config.h, generated by configure
+#if defined(HAVE_CONFIG_H)
+#include "config.h"
+#endif
+
+#ifndef PI
+#define PI 3.14159265358979323846
+#endif
+
+#define ARRAYSIZE(x) ((int)(sizeof(x) / sizeof(x[0])))
+
+template<typename T> inline T ABS (T x) { return (x>=0) ? x : -x; }
+template<typename T> inline T MIN (T a, T b) { return (a<b) ? a : b; }
+template<typename T> inline T MAX (T a, T b) { return (a>b) ? a : b; }
+
+#ifndef round
+#define round(x) ((x > 0.0) ? floor((x) + 0.5) : ceil((x) - 0.5))
+#endif
+
+#if defined(_MSC_VER)
+
+ #define snprintf _snprintf
+
+ #if defined(CHECK_HEAP)
+ #undef CHECK_HEAP
+ #define CHECK_HEAP checkHeap();
+ #else
+ #define CHECK_HEAP
+ #endif
+
+ #define SYSTEM_LITTLE_ENDIAN
+
+ #define FORCEINLINE __forceinline
+ #define NORETURN _declspec(noreturn)
+
+ typedef unsigned char byte;
+ typedef unsigned char uint8;
+ typedef unsigned short uint16;
+ typedef unsigned long uint32;
+ typedef unsigned int uint;
+ typedef signed char int8;
+ typedef signed short int16;
+ typedef signed long int32;
+
+ #define START_PACK_STRUCTS pack(push, 1)
+ #define END_PACK_STRUCTS pack(pop)
+ #define GCC_PACK
+
+#elif defined(__MINGW32__)
+
+ #define CHECK_HEAP
+ #define SYSTEM_LITTLE_ENDIAN
+
+ #define NORETURN __attribute__((__noreturn__))
+ #define GCC_PACK __attribute__((packed))
+ #define _HEAPOK 0
+
+ typedef unsigned char byte;
+ typedef unsigned char uint8;
+ typedef unsigned short uint16;
+ typedef unsigned int uint32;
+ typedef unsigned int uint;
+ typedef signed char int8;
+ typedef signed short int16;
+ typedef signed int int32;
+
+ #define START_PACK_STRUCTS pack (push, 1)
+ #define END_PACK_STRUCTS pack(pop)
+
+#elif defined(UNIX)
+
+ #define CHECK_HEAP
+
+ #ifdef X11_BACKEND
+
+ // You need to set this manually if necessary
+// #define SYSTEM_LITTLE_ENDIAN
+
+ #else
+ /* need this for the SDL_BYTEORDER define */
+ #include <SDL_byteorder.h>
+
+ #if SDL_BYTEORDER == SDL_LIL_ENDIAN
+ #define SYSTEM_LITTLE_ENDIAN
+ #elif SDL_BYTEORDER == SDL_BIG_ENDIAN
+ #define SYSTEM_BIG_ENDIAN
+ #else
+ #error Neither SDL_BIG_ENDIAN nor SDL_LIL_ENDIAN is set.
+ #endif
+ #endif
+
+ // You need to set this manually if necessary
+// #define SYSTEM_NEED_ALIGNMENT
+
+ #define FORCEINLINE inline
+ #define CDECL
+
+ #ifndef HAVE_CONFIG_H
+ typedef unsigned char byte;
+ typedef unsigned char uint8;
+ typedef unsigned short uint16;
+ typedef unsigned int uint;
+ typedef unsigned int uint32;
+ typedef signed char int8;
+ typedef signed short int16;
+ typedef signed int int32;
+ #endif
+
+ #if defined(__DECCXX) // Assume alpha architecture
+ #define INVERSE_MKID
+ #define SYSTEM_NEED_ALIGNMENT
+ #endif
+
+ #if defined(__GNUC__)
+ #define START_PACK_STRUCTS
+ #define END_PACK_STRUCTS
+ #define GCC_PACK __attribute__((packed))
+ #define NORETURN __attribute__((__noreturn__))
+ #else
+ #define START_PACK_STRUCTS pack (1)
+ #define END_PACK_STRUCTS pack ()
+ #define GCC_PACK
+ #define NORETURN
+ #endif
+
+ #ifdef __FreeBSD__
+ #undef ROUND
+ #define ROUND(x) rint(x)
+ #endif
+
+ #if defined(__APPLE__) && defined(__MACH__)
+ #define MACOSX
+ #endif
+
+#elif defined(__MORPHOS__)
+ #define scumm_stricmp stricmp
+ #define scumm_strnicmp strnicmp
+ #define CHECK_HEAP
+
+ #define SYSTEM_BIG_ENDIAN
+ #define SYSTEM_NEED_ALIGNMENT
+
+ #define FORCEINLINE inline
+ #define CDECL
+
+ typedef unsigned char byte;
+ typedef unsigned char uint8;
+ typedef unsigned short uint16;
+ typedef unsigned long uint32;
+ typedef unsigned int uint;
+ typedef signed char int8;
+ typedef signed short int16;
+ typedef signed long int32;
+
+ #if defined(__GNUC__)
+ #define START_PACK_STRUCTS
+ #define END_PACK_STRUCTS
+ #define GCC_PACK __attribute__((packed))
+ #define NORETURN __attribute__((__noreturn__))
+ #else
+ #define START_PACK_STRUCTS pack (1)
+ #define END_PACK_STRUCTS pack ()
+ #define GCC_PACK
+ #define NORETURN
+ #endif
+ #define main morphos_main
+
+#elif defined(__DC__)
+
+ #define CHECK_HEAP
+ #define SYSTEM_LITTLE_ENDIAN
+ #define SYSTEM_NEED_ALIGNMENT
+
+ #define FORCEINLINE inline
+ #define NORETURN __attribute__((__noreturn__))
+ #define GCC_PACK __attribute__((packed))
+ #define CDECL
+
+ typedef unsigned char byte;
+ typedef unsigned char uint8;
+ typedef unsigned short uint16;
+ typedef unsigned long uint32;
+ typedef unsigned int uint;
+ typedef signed char int8;
+ typedef signed short int16;
+ typedef signed long int32;
+
+ #define START_PACK_STRUCTS pack (push, 1)
+ #define END_PACK_STRUCTS pack(pop)
+
+#else
+ #error No system type defined
+#endif
+
+FORCEINLINE uint32 SWAP_BYTES_32(uint32 a) {
+ return ((a >> 24) & 0x000000FF) |
+ ((a >> 8) & 0x0000FF00) |
+ ((a << 8) & 0x00FF0000) |
+ ((a << 24) & 0xFF000000);
+}
+
+FORCEINLINE uint16 SWAP_BYTES_16(uint16 a) {
+ return ((a >> 8) & 0x00FF) + ((a << 8) & 0xFF00);
+}
+
+
+#if defined(SYSTEM_LITTLE_ENDIAN)
+
+ #define PROTO_MKID(a) ((uint32) \
+ (((a) >> 24) & 0x000000FF) | \
+ (((a) >> 8) & 0x0000FF00) | \
+ (((a) << 8) & 0x00FF0000) | \
+ (((a) << 24) & 0xFF000000))
+ #define PROTO_MKID_BE(a) ((uint32)(a))
+
+ #if defined(INVERSE_MKID)
+ # define MKID(a) PROTO_MKID_BE(a)
+ # define MKID_BE(a) PROTO_MKID(a)
+ #else
+ # define MKID(a) PROTO_MKID(a)
+ # define MKID_BE(a) PROTO_MKID_BE(a)
+ #endif
+
+ #define READ_UINT32(a) READ_LE_UINT32(a)
+
+ #define FROM_LE_32(a) ((uint32)(a))
+ #define FROM_LE_16(a) ((uint16)(a))
+
+ #define TO_LE_32(a) ((uint32)(a))
+ #define TO_LE_16(a) ((uint16)(a))
+
+ #define TO_BE_32(a) SWAP_BYTES_32(a)
+ #define TO_BE_16(a) SWAP_BYTES_16(a)
+
+#elif defined(SYSTEM_BIG_ENDIAN)
+
+ #define MKID(a) ((uint32)(a))
+ #define MKID_BE(a) ((uint32)(a))
+
+ #define READ_UINT32(a) READ_BE_UINT32(a)
+
+ #define FROM_LE_32(a) SWAP_BYTES_32(a)
+ #define FROM_LE_16(a) SWAP_BYTES_16(a)
+
+ #define TO_LE_32(a) SWAP_BYTES_32(a)
+ #define TO_LE_16(a) SWAP_BYTES_16(a)
+
+ #define TO_BE_32(a) ((uint32)(a))
+ #define TO_BE_16(a) ((uint16)(a))
+
+#else
+
+ #error No endianness defined
+
+#endif
+
+
+#if defined(SYSTEM_NEED_ALIGNMENT) || defined(SYSTEM_BIG_ENDIAN)
+ FORCEINLINE uint16 READ_LE_UINT16(const void *ptr) {
+ const byte *b = (const byte *)ptr;
+ return (b[1] << 8) + b[0];
+ }
+ FORCEINLINE uint32 READ_LE_UINT32(const void *ptr) {
+ const byte *b = (const byte *)ptr;
+ return (b[3] << 24) + (b[2] << 16) + (b[1] << 8) + (b[0]);
+ }
+ FORCEINLINE void WRITE_LE_UINT16(void *ptr, uint16 value) {
+ byte *b = (byte *)ptr;
+ b[0] = (byte)(value >> 0);
+ b[1] = (byte)(value >> 8);
+ }
+ FORCEINLINE void WRITE_LE_UINT32(void *ptr, uint32 value) {
+ byte *b = (byte *)ptr;
+ b[0] = (byte)(value >> 0);
+ b[1] = (byte)(value >> 8);
+ b[2] = (byte)(value >> 16);
+ b[3] = (byte)(value >> 24);
+ }
+#else
+ FORCEINLINE uint16 READ_LE_UINT16(const void *ptr) {
+ return *(const uint16 *)(ptr);
+ }
+ FORCEINLINE uint32 READ_LE_UINT32(const void *ptr) {
+ return *(const uint32 *)(ptr);
+ }
+ FORCEINLINE void WRITE_LE_UINT16(void *ptr, uint16 value) {
+ *(uint16 *)(ptr) = value;
+ }
+ FORCEINLINE void WRITE_LE_UINT32(void *ptr, uint32 value) {
+ *(uint32 *)(ptr) = value;
+ }
+#endif
+
+
+#if defined(SYSTEM_NEED_ALIGNMENT) || defined(SYSTEM_LITTLE_ENDIAN)
+ FORCEINLINE uint16 READ_BE_UINT16(const void *ptr) {
+ const byte *b = (const byte *)ptr;
+ return (b[0] << 8) + b[1];
+ }
+ FORCEINLINE uint32 READ_BE_UINT32(const void *ptr) {
+ const byte *b = (const byte*)ptr;
+ return (b[0] << 24) + (b[1] << 16) + (b[2] << 8) + (b[3]);
+ }
+ FORCEINLINE void WRITE_BE_UINT16(void *ptr, uint16 value) {
+ byte *b = (byte *)ptr;
+ b[0] = (byte)(value >> 8);
+ b[1] = (byte)(value >> 0);
+ }
+ FORCEINLINE void WRITE_BE_UINT32(void *ptr, uint32 value) {
+ byte *b = (byte *)ptr;
+ b[0] = (byte)(value >> 24);
+ b[1] = (byte)(value >> 16);
+ b[2] = (byte)(value >> 8);
+ b[3] = (byte)(value >> 0);
+ }
+#else
+ FORCEINLINE uint16 READ_BE_UINT16(const void *ptr) {
+ return *(const uint16 *)(ptr);
+ }
+ FORCEINLINE uint32 READ_BE_UINT32(const void *ptr) {
+ return *(const uint32 *)(ptr);
+ }
+ FORCEINLINE void WRITE_BE_UINT16(void *ptr, uint16 value) {
+ *(uint16 *)(ptr) = value;
+ }
+ FORCEINLINE void WRITE_BE_UINT32(void *ptr, uint32 value) {
+ *(uint32 *)(ptr) = value;
+ }
+#endif
+
+#if defined(SYSTEM_BIG_ENDIAN)
+
+inline float get_float(const char *data) {
+ const unsigned char *udata = reinterpret_cast<const unsigned char *>(data);
+ unsigned char fdata[4];
+ fdata[0] = udata[3];
+ fdata[1] = udata[2];
+ fdata[2] = udata[1];
+ fdata[3] = udata[0];
+ return *(reinterpret_cast<const float *>(fdata));
+}
+
+#else
+
+inline float get_float(const char *data) {
+ return *(reinterpret_cast<const float *>(data));
+}
+#endif
+
+inline Vector3d get_vector3d(const char *data) {
+ return Vector3d(get_float(data), get_float(data + 4), get_float(data + 8));
+}
+
+#endif
Deleted: residual/trunk/common/stdafx.h
===================================================================
--- residual/trunk/common/stdafx.h 2008-01-26 09:18:08 UTC (rev 30637)
+++ residual/trunk/common/stdafx.h 2008-01-26 10:17:52 UTC (rev 30638)
@@ -1,131 +0,0 @@
-/* Residual - Virtual machine to run LucasArts' 3D adventure games
- * Copyright (C) 2003-2006 The ScummVM-Residual Team (www.scummvm.org)
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
-
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
-
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
- *
- * $URL$
- * $Id$
- *
- */
-
-#ifndef _STDAFX_H
-#define _STDAFX_H
-
-
-typedef struct Mutex *MutexRef;
-
-#ifndef _MSC_VER
-#include <unistd.h>
-#endif
-
-#if defined(WIN32)
-
-#ifdef _MSC_VER
-#pragma once
-#pragma warning( disable : 4068 ) // turn off "unknown pragma" warning
-#pragma warning( disable : 4244 ) // turn off "conversion type" warning
-#endif
-
-#if !defined(_WIN32_WCE)
-
-
-#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
-#define NOGDICAPMASKS
-#define OEMRESOURCE
-#define NONLS
-#define NOICONS
-#define NOMCX
-#define NOPROFILER
-#define NOKANJI
-#define NOSERVICE
-#define NOMETAFILE
-#define NOCOMM
-#define NOCRYPT
-#define NOIME
-#define NOATOM
-#define NOCTLMGR
-#define NOCLIPBOARD
-#define NOMEMMGR
-#define NOSYSMETRICS
-#define NOMENUS
-#define NOOPENFILE
-#define NOWH
-#define NOSOUND
-#define NODRAWTEXT
-
-
-#endif
-
-
-#include <windows.h>
-#if defined(ARRAYSIZE)
-// VS2005beta2 introduces new stuff in winnt.h
-#undef ARRAYSIZE
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <io.h>
-#include <stdarg.h>
-#include <fcntl.h>
-#include <conio.h>
-#include <assert.h>
-#include <mmsystem.h>
-#include <ctype.h>
-#include <winuser.h>
-#include <direct.h>
-#define strcasecmp stricmp
-#define M_PI 3.14159265358979323846
-
-#ifndef _MSC_VER
-#include <stdint.h>
-#include <dirent.h>
-#endif
-
-#else
-
-#if defined(__MORPHOS__)
-#include <devices/timer.h>
-#undef CMD_INVALID
-#endif
-#if !defined(macintosh)
-#include <sys/types.h>
-#if !defined(__DC__)
-#include <sys/uio.h>
-#endif
-#endif
-#if !defined (__BEOS__)
-#include <unistd.h>
-#endif
-#if defined(__QNXNTO__)
-#include <strings.h> /* For strcasecmp */
-#endif
-#include <stdio.h>
-#include <fcntl.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdarg.h>
-#include <assert.h>
-#include <ctype.h>
-#if defined(__DC__)
-#include <ronin/cdfs.h>
-#else
-#include <dirent.h>
-#endif
-
-
-#endif
-
-#endif
Copied: residual/trunk/common/sys.h (from rev 30637, residual/trunk/common/stdafx.h)
===================================================================
--- residual/trunk/common/sys.h (rev 0)
+++ residual/trunk/common/sys.h 2008-01-26 10:17:52 UTC (rev 30638)
@@ -0,0 +1,131 @@
+/* Residual - Virtual machine to run LucasArts' 3D adventure games
+ * Copyright (C) 2003-2006 The ScummVM-Residual Team (www.scummvm.org)
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+ *
+ * $URL$
+ * $Id$
+ *
+ */
+
+#ifndef _STDAFX_H
+#define _STDAFX_H
+
+
+typedef struct Mutex *MutexRef;
+
+#ifndef _MSC_VER
+#include <unistd.h>
+#endif
+
+#if defined(WIN32)
+
+#ifdef _MSC_VER
+#pragma once
+#pragma warning( disable : 4068 ) // turn off "unknown pragma" warning
+#pragma warning( disable : 4244 ) // turn off "conversion type" warning
+#endif
+
+#if !defined(_WIN32_WCE)
+
+
+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
+#define NOGDICAPMASKS
+#define OEMRESOURCE
+#define NONLS
+#define NOICONS
+#define NOMCX
+#define NOPROFILER
+#define NOKANJI
+#define NOSERVICE
+#define NOMETAFILE
+#define NOCOMM
+#define NOCRYPT
+#define NOIME
+#define NOATOM
+#define NOCTLMGR
+#define NOCLIPBOARD
+#define NOMEMMGR
+#define NOSYSMETRICS
+#define NOMENUS
+#define NOOPENFILE
+#define NOWH
+#define NOSOUND
+#define NODRAWTEXT
+
+
+#endif
+
+
+#include <windows.h>
+#if defined(ARRAYSIZE)
+// VS2005beta2 introduces new stuff in winnt.h
+#undef ARRAYSIZE
+#endif
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <io.h>
+#include <stdarg.h>
+#include <fcntl.h>
+#include <conio.h>
+#include <assert.h>
+#include <mmsystem.h>
+#include <ctype.h>
+#include <winuser.h>
+#include <direct.h>
+#define strcasecmp stricmp
+#define M_PI 3.14159265358979323846
+
+#ifndef _MSC_VER
+#include <stdint.h>
+#include <dirent.h>
+#endif
+
+#else
+
+#if defined(__MORPHOS__)
+#include <devices/timer.h>
+#undef CMD_INVALID
+#endif
+#if !defined(macintosh)
+#include <sys/types.h>
+#if !defined(__DC__)
+#include <sys/uio.h>
+#endif
+#endif
+#if !defined (__BEOS__)
+#include <unistd.h>
+#endif
+#if defined(__QNXNTO__)
+#include <strings.h> /* For strcasecmp */
+#endif
+#include <stdio.h>
+#include <fcntl.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdarg.h>
+#include <assert.h>
+#include <ctype.h>
+#if defined(__DC__)
+#include <ronin/cdfs.h>
+#else
+#include <dirent.h>
+#endif
+
+
+#endif
+
+#endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list