Diff for /np2/x11/compiler.h between versions 1.25 and 1.47

version 1.25, 2004/07/28 13:52:27 version 1.47, 2012/01/23 09:51:48
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__
 #define NP2_X11_COMPILER_H__  #define NP2_X11_COMPILER_H__
   
   #ifdef HAVE_CONFIG_H
   #include "config.h"
   #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>
   #include <sys/stat.h>
 #include <assert.h>  #include <assert.h>
 #include <errno.h>  #include <errno.h>
 #include <fcntl.h>  #include <fcntl.h>
Line 69 Line 83
 #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 guint32         UINT;  typedef guint32         UINT;
   
 typedef gint8           SINT8;  typedef gint8           SINT8;
Line 90  typedef gchar  TCHAR; Line 103  typedef gchar  TCHAR;
   
 typedef gboolean        BOOL;  typedef gboolean        BOOL;
   
 #else   /* USE_GTK == 0 && USE_GTK2 == 0 */  #define PTR_TO_UINT32(p)        ((UINT32)GPOINTER_TO_UINT(p))
   #define UINT32_TO_PTR(v)        GUINT_TO_POINTER((UINT32)(v))
 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 144  typedef int   BOOL; Line 139  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 177  typedef int   BOOL; Line 155  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 186  typedef int   BOOL; Line 163  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 OEMCHAR         gchar
   #define OEMTEXT(s)      s
   #define OEMNULLSTR      OEMTEXT("")
   #define OEMSPRINTF      sprintf
   #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);  
 #ifndef IA32_PAGING_EACHSIZE  
 #define IA32_PAGING_EACHSIZE  
 #endif  
   
   #if !defined(DISABLE_PC9821)
 #define SUPPORT_PC9821  #define SUPPORT_PC9821
 #define SUPPORT_CRT31KHZ  #define SUPPORT_CRT31KHZ
   #endif
   #define SUPPORT_IDEIO
 #else  #else
 #define SUPPORT_CRT15KHZ  #define SUPPORT_CRT15KHZ
 #endif  #endif
   
 #if defined(NP2_CPU_ARCH_IA32)  #if defined(NP2_CPU_ARCH_IA32)
 #undef  MEMOPTIMIZE  #undef  MEMOPTIMIZE
 #define LOADINTELDWORD(a)       (*((UINT32 *)(a)))  #define LOADINTELDWORD(a)       (*((const UINT32 *)(a)))
 #define LOADINTELWORD(a)        (*((UINT16 *)(a)))  #define LOADINTELWORD(a)        (*((const 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 226  void toolkit_msgbox(const char *title, c Line 205  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
 #define SUPPORT_SJIS  
   
 #undef  SUPPORT_8BPP  #undef  SUPPORT_8BPP
 #define SUPPORT_16BPP  #define SUPPORT_16BPP
Line 241  void toolkit_msgbox(const char *title, c Line 244  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
 #undef  SUPPORT_IDEIO  
   
 #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 283  extern char timidity_cfgfile_path[MAX_PA Line 274  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__ */

Removed from v.1.25  
changed lines
  Added in v.1.47


RetroPC.NET-CVS <cvs@retropc.net>