--- np2/win9xc/compiler.h 2004/03/04 15:20:13 1.18 +++ np2/win9xc/compiler.h 2005/03/20 08:58:20 1.29 @@ -1,41 +1,67 @@ #include +#include #include #include #include +#if defined(TRACE) +#include +#endif #define BYTESEX_LITTLE +#if !defined(_UNICODE) #define OSLANG_SJIS +#else +#define OSLANG_UCS2 +#endif #define OSLINEBREAK_CRLF - #ifndef __GNUC__ -typedef signed char SINT8; -typedef unsigned char UINT8; +typedef signed int SINT; +typedef signed char SINT8; +typedef unsigned char UINT8; typedef signed short SINT16; typedef unsigned short UINT16; typedef signed int SINT32; typedef unsigned int UINT32; -typedef signed __int64 SINT64; -typedef unsigned __int64 UINT64; +typedef signed __int64 SINT64; +typedef unsigned __int64 UINT64; #define INLINE __inline -#define QWORD_CONST(v) ((DWORDLONG)(v)) -#define SQWORD_CONST(v) ((LONGLONG)(v)) +#define QWORD_CONST(v) ((UINT64)(v)) +#define SQWORD_CONST(v) ((SINT64)(v)) #define snprintf _snprintf #define vsnprintf _vsnprintf #else #include -typedef signed char SINT8; -typedef unsigned char UINT8; -typedef short SINT16; +typedef signed char SINT8; +typedef unsigned char UINT8; +typedef signed short SINT16; typedef unsigned short UINT16; -typedef int SINT32; -typedef signed __int64 SINT64; +typedef signed int SINT32; +typedef signed __int64 SINT64; #define INLINE inline #endif +#define FASTCALL __fastcall // for RISC test #define REG8 UINT -#define REG16 UINT +#define REG16 UINT + +// for x86 +#define LOADINTELDWORD(a) (*((UINT32 *)(a))) +#define LOADINTELWORD(a) (*((UINT16 *)(a))) +#define STOREINTELDWORD(a, b) *(UINT32 *)(a) = (b) +#define STOREINTELWORD(a, b) *(UINT16 *)(a) = (b) + +#define sigjmp_buf jmp_buf +#define sigsetjmp(env, mask) setjmp(env) +#define siglongjmp(env, val) longjmp(env, val) +#define msgbox(title, msg) MessageBox(NULL, msg, title, MB_OK) + +#define BRESULT UINT +#define OEMCHAR TCHAR +#define OEMTEXT(string) _T(string) +#define OEMSPRINTF wsprintf +#define OEMSTRLEN lstrlen #include "common.h" @@ -45,25 +71,40 @@ typedef signed __int64 SINT64; #include "lstarray.h" #include "trace.h" -#define GETTICK() GetTickCount() -#define SPRINTF wsprintf + +#define GETTICK() GetTickCount() +#if defined(TRACE) +#define __ASSERT(s) assert(s) +#else #define __ASSERT(s) +#endif +#if defined(_UNICODE) +#define SPRINTF sprintf +#define STRLEN strlen +#else +#define SPRINTF wsprintf +#define STRLEN lstrlen +#endif -#define LABEL __declspec(naked) -#define RELEASE(x) if (x) {(x)->Release(); (x) = NULL;} +#define LABEL __declspec(naked) +#define RELEASE(x) if (x) {(x)->Release(); (x) = NULL;} #define VERMOUTH_LIB #define PARTSCALL __fastcall #define CPUCALL __fastcall #define MEMCALL __fastcall -#define DMACCALL __fastcall +#define DMACCALL __fastcall #define IOOUTCALL __fastcall #define IOINPCALL __fastcall -#define SOUNDCALL __fastcall +#define SOUNDCALL __fastcall #define VRAMCALL __fastcall #define SCRNCALL __fastcall +#if !defined(_UNICODE) #define SUPPORT_SJIS +#else +#define SUPPORT_ANK +#endif // #define SUPPORT_8BPP #define SUPPORT_16BPP @@ -74,20 +115,13 @@ typedef signed __int64 SINT64; #define SOUNDRESERVE 20 +#if defined(CPUCORE_IA32) #define SUPPORT_CRT31KHZ #define SUPPORT_PC9821 +#define SUPPORT_PC9801_119 +#define SUPPORT_SOFTKBD 0 +#define IA32_PAGING_EACHSIZE +#endif #define SUPPORT_HOSTDRV #define SUPPORT_SWSEEKSND -#define FASTCALL __fastcall - - -#if defined(CPUCORE_IA32) -#define sigjmp_buf jmp_buf -#define sigsetjmp(env, mask) setjmp(env) -#define siglongjmp(env, val) longjmp(env, val) -#define msgbox(title, msg) TRACEOUT(("%s", title)); \ - TRACEOUT(("%s", msg)); \ - MessageBox(NULL, msg, title, MB_OK) -#endif -