--- np2/common.h 2003/12/08 00:55:30 1.6 +++ np2/common.h 2004/06/20 03:40:31 1.11 @@ -31,11 +31,15 @@ enum { *((a)+1) = (BYTE)((b)>>8) #endif +#ifndef NELEMENTS +#define NELEMENTS(a) ((int)(sizeof(a) / sizeof(a[0]))) +#endif + // ---- Optimize Macros #ifndef REG8 -#define REG8 BYTE +#define REG8 UINT8 #endif #ifndef REG16 #define REG16 UINT16 @@ -57,6 +61,18 @@ enum { #define HIGH16(a) (((UINT32)(a)) >> 16) #endif + +#ifndef OEMCHAR +#define OEMCHAR char +#endif +#ifndef OEMTEXT +#define OEMTEXT(string) (string) +#endif +#ifndef OEMNULLSTR +#define OEMNULLSTR OEMTEXT("") +#endif + + #ifndef STRLITERAL #ifdef UNICODE #define STRLITERAL(string) _T(string) @@ -72,24 +88,56 @@ enum { #if !defined(RGB32) #if defined(BYTESEX_LITTLE) typedef union { + UINT32 d; struct { UINT8 b; UINT8 g; UINT8 r; UINT8 e; } p; - UINT32 d; } RGB32; +#define RGB32D(r, g, b) (((r) << 16) + ((g) << 8) + ((b) << 0)) #elif defined(BYTESEX_BIG) typedef union { + UINT32 d; struct { UINT8 e; UINT8 r; UINT8 g; UINT8 b; } p; - UINT32 d; } RGB32; +#define RGB32D(r, g, b) (((r) << 16) + ((g) << 8) + ((b) << 0)) +#endif +#endif + + +enum { + FTYPE_NONE = 0, // ¼«Æ°È½ÊÌ or PC + FTYPE_SMIL, + FTYPE_TEXT, + FTYPE_BMP, + FTYPE_PICT, + FTYPE_PNG, + FTYPE_WAV, + FTYPE_OGG, + FTYPE_D88, + FTYPE_FDI, + FTYPE_BETA, + FTYPE_THD, + FTYPE_NHD, + FTYPE_HDI, + FTYPE_HDD, + FTYPE_S98, + FTYPE_MIMPI, + FTYPE_USER +}; + + +#if !defined(INLINE) +#define INLINE #endif +#if !defined(FASTCALL) +#define FASTCALL #endif