| version 1.33, 2007/01/20 22:33:06 | version 1.45, 2012/01/22 21:47:13 | 
| Line 1 | Line 1 | 
 | /*      $Id$    */ |  | 
 |  |  | 
 | /*- | /*- | 
| * Copyright (c) 2003, 2004 NONAKA Kimihiro | * Copyright (C) 2003, 2004 NONAKA Kimihiro <nonakap@gmail.com> | 
 | * All rights reserved. | * All rights reserved. | 
 | * | * | 
 | * Redistribution and use in source and binary forms, with or without | * Redistribution and use in source and binary forms, with or without | 
| Line 13 | Line 11 | 
 | *    notice, this list of conditions and the following disclaimer in the | *    notice, this list of conditions and the following disclaimer in the | 
 | *    documentation and/or other materials provided with the distribution. | *    documentation and/or other materials provided with the distribution. | 
 | * | * | 
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR | 
| * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES | 
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | 
| * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, | 
| * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT | 
| * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 
| * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 
| * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
| * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 
| * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
| * SUCH DAMAGE. |  | 
 | */ | */ | 
 |  |  | 
 | #ifndef NP2_X11_COMPILER_H__ | #ifndef NP2_X11_COMPILER_H__ | 
| Line 33 | Line 30 | 
 | #include "config.h" | #include "config.h" | 
 | #endif | #endif | 
 |  |  | 
 |  | #ifdef ENABLE_NLS | 
 |  | #include <libintl.h> | 
 |  | #define _(s)                            gettext(s) | 
 |  | #ifdef gettext_noop | 
 |  | #define N_(s)                           gettext_noop(s) | 
 |  | #else | 
 |  | #define N_(s)                           (s) | 
 |  | #endif | 
 |  | #else /* !ENABLE_NLS */ | 
 |  | #define _(s)                            (s) | 
 |  | #define N_(s) (s) | 
 |  | #define textdomain(s)                   (s) | 
 |  | #define gettext(s)                      (s) | 
 |  | #define dgettext(d,s)                   (s) | 
 |  | #define dcgettext(d,s,t)                (s) | 
 |  | #define bindtextdomain(d,dir)           (d) | 
 |  | #define bind_textdomain_codeset(d,c)    (c) | 
 |  | #endif /* ENABLE_NLS */ | 
 |  |  | 
 | #ifdef  WORDS_BIGENDIAN | #ifdef  WORDS_BIGENDIAN | 
 | #define BYTESEX_BIG | #define BYTESEX_BIG | 
 | #else   /* !WORDS_BIGENDIAN */ | #else   /* !WORDS_BIGENDIAN */ | 
 | #define BYTESEX_LITTLE | #define BYTESEX_LITTLE | 
 | #endif  /* WORDS_BIGENDIAN */ | #endif  /* WORDS_BIGENDIAN */ | 
 |  |  | 
| #if defined(USE_NETBSDAUDIO) && !defined(__NetBSD__) | #if !defined(USE_SDLAUDIO) && !defined(USE_SDLMIXER) | 
| #undef  USE_NETBSDAUDIO |  | 
| #endif |  | 
|  |  | 
| #if !defined(USE_NETBSDAUDIO) && !defined(USE_OSSAUDIO) && !defined(USE_ESDAUDIO) && !defined(USE_SDLAUDIO) && !defined(USE_SDLMIXER) |  | 
 | #ifndef NOSOUND | #ifndef NOSOUND | 
 | #define NOSOUND | #define NOSOUND | 
 | #undef  VERMOUTH_LIB | #undef  VERMOUTH_LIB | 
 | #endif  /* !NOSOUND */ | #endif  /* !NOSOUND */ | 
| #else   /* USE_NETBSDAUDIO || USE_OSSAUDIO || USE_ESDAUDIO || USE_SDLAUDIO || USE_SDLMIXER */ | #else   /* USE_SDLAUDIO || USE_SDLMIXER */ | 
 | #undef  NOSOUND | #undef  NOSOUND | 
 | #define VERMOUTH_LIB | #define VERMOUTH_LIB | 
| #if defined(USE_NETBSDAUDIO) || defined(USE_OSSAUDIO) || defined(USE_ESDAUDIO) | #endif  /* !USE_SDLAUDIO && !USE_SDLMIXER */ | 
| #include <pthread.h> |  | 
| #endif  /* USE_NETBSDAUDIO || USE_OSSAUDIO || USE_ESDAUDIO */ |  | 
| #endif  /* !USE_NETBSDAUDIO && !USE_OSSAUDIO && !USE_ESDAUDIO && !USE_SDLAUDIO && !USE_SDMIXER */ |  | 
 |  |  | 
 | #include <sys/param.h> | #include <sys/param.h> | 
 | #include <sys/time.h> | #include <sys/time.h> | 
| Line 73 | Line 82 | 
 | #define OSLANG_EUC | #define OSLANG_EUC | 
 | #define OSLINEBREAK_LF | #define OSLINEBREAK_LF | 
 |  |  | 
| #if USE_GTK > 0 || USE_GTK2 > 0 | #include <glib.h> | 
|  |  | 
| #include "glib.h" |  | 
 |  |  | 
 | typedef gint32          SINT; | typedef gint32          SINT; | 
 | typedef guint32         UINT; | typedef guint32         UINT; | 
| Line 98  typedef gboolean BOOL; | Line 105  typedef gboolean BOOL; | 
 | #define PTR_TO_UINT32(p)        ((UINT32)GPOINTER_TO_UINT(p)) | #define PTR_TO_UINT32(p)        ((UINT32)GPOINTER_TO_UINT(p)) | 
 | #define UINT32_TO_PTR(v)        GUINT_TO_POINTER((UINT32)(v)) | #define UINT32_TO_PTR(v)        GUINT_TO_POINTER((UINT32)(v)) | 
 |  |  | 
 | #else   /* USE_GTK == 0 && USE_GTK2 == 0 */ |  | 
 |  |  | 
 | typedef signed int              SINT; |  | 
 | typedef unsigned int            UINT; |  | 
 |  |  | 
 | typedef signed char             SINT8; |  | 
 | typedef signed short            SINT16; |  | 
 | typedef signed int              SINT32; |  | 
 | typedef signed long long        SINT64; |  | 
 |  |  | 
 | typedef unsigned char           UINT8; |  | 
 | typedef unsigned short          UINT16; |  | 
 | typedef unsigned int            UINT32; |  | 
 | typedef unsigned long long      UINT64; |  | 
 |  |  | 
 | typedef unsigned char           BYTE; |  | 
 | typedef char                    TCHAR; |  | 
 |  |  | 
 | typedef int                     BOOL; |  | 
 |  |  | 
 | #endif  /* USE_GTK > 0 || USE_GTK2 > 0 */ |  | 
 |  |  | 
 | #ifndef TRUE |  | 
 | #define TRUE    1 |  | 
 | #endif |  | 
 |  |  | 
 | #ifndef FALSE | #ifndef FALSE | 
 | #define FALSE   0 | #define FALSE   0 | 
 | #endif | #endif | 
 |  |  | 
 |  | #ifndef TRUE | 
 |  | #define TRUE    (!FALSE) | 
 |  | #endif | 
 |  |  | 
 | #ifndef MAX_PATH | #ifndef MAX_PATH | 
 | #define MAX_PATH        MAXPATHLEN | #define MAX_PATH        MAXPATHLEN | 
 | #endif | #endif | 
| Line 153  typedef int   BOOL; | Line 138  typedef int   BOOL; | 
 | #define roundup(x, y)   ((((x)+((y)-1))/(y))*(y)) | #define roundup(x, y)   ((((x)+((y)-1))/(y))*(y)) | 
 | #endif | #endif | 
 |  |  | 
| #ifndef UNUSED | #ifndef NELEMENTS | 
| #define UNUSED(v)       ((void)(v)) | #define NELEMENTS(a)    ((int)(sizeof(a) / sizeof(a[0]))) | 
| #endif |  | 
|  |  | 
| #define FASTCALL |  | 
| #define SOUNDCALL |  | 
| #define MEMCALL |  | 
| #define CPUCALL |  | 
|  |  | 
| #ifdef  DEBUG |  | 
| #define INLINE |  | 
| #define __ASSERT(s)     assert(s) |  | 
| #else |  | 
| #ifndef __ASSERT |  | 
| #define __ASSERT(s) |  | 
| #endif |  | 
| #ifndef INLINE |  | 
| #define INLINE          __inline |  | 
| #endif |  | 
 | #endif | #endif | 
 |  |  | 
 | /* archtecture */ | /* archtecture */ | 
| Line 186  typedef int   BOOL; | Line 154  typedef int   BOOL; | 
 | #endif /* i386 */ | #endif /* i386 */ | 
 |  |  | 
 | #if defined(__GNUC__) | #if defined(__GNUC__) | 
 | #define GCC_ATTR_PACKED __attribute__((packed)) |  | 
 | #if defined(NP2_CPU_ARCH_IA32) | #if defined(NP2_CPU_ARCH_IA32) | 
 | #define GCC_CPU_ARCH_IA32 | #define GCC_CPU_ARCH_IA32 | 
 | #endif | #endif | 
| Line 195  typedef int   BOOL; | Line 162  typedef int   BOOL; | 
 | #endif | #endif | 
 | #endif /* __GNUC__ */ | #endif /* __GNUC__ */ | 
 |  |  | 
 | #ifndef NELEMENTS |  | 
 | #define NELEMENTS(a)    ((int)(sizeof(a) / sizeof(a[0]))) |  | 
 | #endif |  | 
 |  |  | 
 | UINT32 gettick(void); | UINT32 gettick(void); | 
 | #define GETTICK()       gettick() | #define GETTICK()       gettick() | 
 | #define GETRAND()       random() | #define GETRAND()       random() | 
 | #define SPRINTF         sprintf | #define SPRINTF         sprintf | 
 | #define STRLEN          strlen | #define STRLEN          strlen | 
 |  |  | 
| #define OEMCHAR         char | #define OEMCHAR         gchar | 
 | #define OEMTEXT(s)      s | #define OEMTEXT(s)      s | 
 | #define OEMNULLSTR      OEMTEXT("") | #define OEMNULLSTR      OEMTEXT("") | 
 | #define OEMSPRINTF      sprintf | #define OEMSPRINTF      sprintf | 
 | #define OEMSTRLEN       strlen | #define OEMSTRLEN       strlen | 
 |  |  | 
 | #if defined(CPUCORE_IA32) | #if defined(CPUCORE_IA32) | 
| void toolkit_msgbox(const char *title, const char *msg); | #define msgbox(title, msg)      toolkit_messagebox(title, msg); | 
| #define msgbox(title, msg)      toolkit_msgbox(title, msg); |  | 
 |  |  | 
 |  | #if !defined(DISABLE_PC9821) | 
 | #define SUPPORT_PC9821 | #define SUPPORT_PC9821 | 
 | #define SUPPORT_CRT31KHZ | #define SUPPORT_CRT31KHZ | 
 |  | #endif | 
 | #define SUPPORT_IDEIO | #define SUPPORT_IDEIO | 
 | #else | #else | 
 | #define SUPPORT_CRT15KHZ | #define SUPPORT_CRT15KHZ | 
| Line 228  void toolkit_msgbox(const char *title, c | Line 192  void toolkit_msgbox(const char *title, c | 
 | #define LOADINTELWORD(a)        (*((UINT16 *)(a))) | #define LOADINTELWORD(a)        (*((UINT16 *)(a))) | 
 | #define STOREINTELDWORD(a, b)   *(UINT32 *)(a) = (b) | #define STOREINTELDWORD(a, b)   *(UINT32 *)(a) = (b) | 
 | #define STOREINTELWORD(a, b)    *(UINT16 *)(a) = (b) | #define STOREINTELWORD(a, b)    *(UINT16 *)(a) = (b) | 
| #if defined(__GNUC__) && defined(IA32_USE_GCC_ATTR_REGPARM) | #if !defined(DEBUG) && !defined(NP2_CPU_ARCH_AMD64) | 
| #define GCC_ATTR_REGPARM        __attribute__((regparm(2))) | #define FASTCALL        __attribute__((regparm(2))) | 
| #endif | #endif  /* !DEBUG && !NP2_CPU_ARCH_AMD64 */ | 
 | #elif defined(arm) || defined (__arm__) | #elif defined(arm) || defined (__arm__) | 
 | #define MEMOPTIMIZE     2 | #define MEMOPTIMIZE     2 | 
 | #define REG8            UINT | #define REG8            UINT | 
| Line 240  void toolkit_msgbox(const char *title, c | Line 204  void toolkit_msgbox(const char *title, c | 
 | #define MEMOPTIMIZE     1 | #define MEMOPTIMIZE     1 | 
 | #endif | #endif | 
 |  |  | 
 |  | #ifndef FASTCALL | 
 |  | #define FASTCALL | 
 |  | #endif | 
 |  | #define CPUCALL         FASTCALL | 
 |  | #define MEMCALL         FASTCALL | 
 |  | #define DMACCALL        FASTCALL | 
 |  | #define IOOUTCALL       FASTCALL | 
 |  | #define IOINPCALL       FASTCALL | 
 |  | #define SOUNDCALL       FASTCALL | 
 |  | #define VRAMCALL        FASTCALL | 
 |  | #define SCRNCALL        FASTCALL | 
 |  | #define VERMOUTHCL      FASTCALL | 
 |  |  | 
 |  | #ifdef  DEBUG | 
 |  | #define INLINE | 
 |  | #define __ASSERT(s)     assert(s) | 
 |  | #else | 
 |  | #ifndef __ASSERT | 
 |  | #define __ASSERT(s) | 
 |  | #endif | 
 |  | #ifndef INLINE | 
 |  | #define INLINE          inline | 
 |  | #endif | 
 |  | #endif | 
 |  |  | 
 | #define SUPPORT_EUC | #define SUPPORT_EUC | 
 |  |  | 
 | #undef  SUPPORT_8BPP | #undef  SUPPORT_8BPP | 
| Line 254  void toolkit_msgbox(const char *title, c | Line 243  void toolkit_msgbox(const char *title, c | 
 | #define SUPPORT_PC9861K | #define SUPPORT_PC9861K | 
 | #define SUPPORT_HOSTDRV | #define SUPPORT_HOSTDRV | 
 |  |  | 
 |  | #define SUPPORT_RESUME | 
 |  | #define SUPPORT_STATSAVE | 
 |  |  | 
 | #undef  SUPPORT_SASI | #undef  SUPPORT_SASI | 
 | #undef  SUPPORT_SCSI | #undef  SUPPORT_SCSI | 
 |  |  | 
 | #if USE_GTK > 0 || USE_GTK2 > 0 |  | 
 | #define SUPPORT_S98 | #define SUPPORT_S98 | 
 | #define SUPPORT_KEYDISP | #define SUPPORT_KEYDISP | 
 | #define SUPPORT_SOFTKBD 0 | #define SUPPORT_SOFTKBD 0 | 
 | #endif |  | 
 |  |  | 
| #if USE_SDL > 0 | #define SUPPORT_SCREENSIZE | 
| #define USE_SYSMENU |  | 
| #define SCREEN_BPP      16 |  | 
| #undef  SUPPORT_8BPP |  | 
| #undef  SUPPORT_24BPP |  | 
| #undef  SUPPORT_32BPP |  | 
| #endif |  | 
 |  |  | 
| #if ((USE_SDL > 0) && !defined(NOSOUND)) || defined(USE_SDLAUDIO) | #if defined(USE_SDLAUDIO) || defined(USE_SDLMIXER) | 
 | #define SUPPORT_JOYSTICK | #define SUPPORT_JOYSTICK | 
 |  |  | 
 | #if ((USE_SDL > 0) && !defined(NOSOUND)) || defined(USE_SDLAUDIO) |  | 
 | #define USE_SDL_JOYSTICK | #define USE_SDL_JOYSTICK | 
| #else | #endif  /* USE_SDLAUDIO || USE_SDLMIXER */ | 
| #error  unknown joystick driver!!! |  | 
| #endif |  | 
|  |  | 
| #endif |  | 
 |  |  | 
 | /* | /* | 
 | * You could specify a complete path, e.g. "/etc/timidity.cfg", and | * You could specify a complete path, e.g. "/etc/timidity.cfg", and | 
| Line 295  extern char timidity_cfgfile_path[MAX_PA | Line 273  extern char timidity_cfgfile_path[MAX_PA | 
 | #include "rect.h" | #include "rect.h" | 
 | #include "lstarray.h" | #include "lstarray.h" | 
 | #include "trace.h" | #include "trace.h" | 
 |  | #include "toolkit.h" | 
 |  |  | 
 | #endif  /* NP2_X11_COMPILER_H__ */ | #endif  /* NP2_X11_COMPILER_H__ */ |