Diff for /np2/x11/joymng.c between versions 1.6 and 1.10

version 1.6, 2011/01/15 16:55:37 version 1.10, 2012/01/23 04:43:14
Line 1 Line 1
 /*      $Id$    */  
   
 /*-  /*-
  * Copyright (c) 2004 NONAKA Kimihiro <aw9k-nnk@asahi-net.or.jp>,   * Copyright (C) 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.  
  */   */
   
 #include "compiler.h"  #include "compiler.h"
Line 38  static struct { Line 35  static struct {
         void *hdl;          void *hdl;
         BOOL inited;          BOOL inited;
   
         const joymng_devinfo_t **devlist;          joymng_devinfo_t **devlist;
   
         BYTE pad1btn[NELEMENTS(np2oscfg.JOY1BTN)];          BYTE pad1btn[NELEMENTS(np2oscfg.JOY1BTN)];
         REG8 flag;          REG8 flag;
Line 57  typedef struct { Line 54  typedef struct {
         BYTE    button[JOY_NBUTTON];          BYTE    button[JOY_NBUTTON];
 } JOYINFO_T;  } JOYINFO_T;
   
 static const joymng_devinfo_t **joydrv_initialize(void);  static joymng_devinfo_t **joydrv_initialize(void);
 static void joydrv_terminate(void);  static void joydrv_terminate(void);
 static void *joydrv_open(const char *dev);  static void *joydrv_open(const char *dev);
 static void joydrv_close(void *hdl);  static void joydrv_close(void *hdl);
Line 109  joymng_deinitialize(void) Line 106  joymng_deinitialize(void)
         np2oscfg.JOYPAD1 &= 1;          np2oscfg.JOYPAD1 &= 1;
 }  }
   
 const joymng_devinfo_t **  joymng_devinfo_t **
 joymng_get_devinfo_list(void)  joymng_get_devinfo_list(void)
 {  {
   
Line 171  typedef struct { Line 168  typedef struct {
         SDL_Joystick            *joyhdl;          SDL_Joystick            *joyhdl;
 } joydrv_sdl_hdl_t;  } joydrv_sdl_hdl_t;
   
 const joymng_devinfo_t **  static joymng_devinfo_t **
 joydrv_initialize(void)  joydrv_initialize(void)
 {  {
         char str[32];          char str[32];
Line 210  joydrv_initialize(void) Line 207  joydrv_initialize(void)
                 shdl->joyhdl = NULL;                  shdl->joyhdl = NULL;
                 n++;                  n++;
         }          }
           devlist[n] = NULL;
   
         return (const joymng_devinfo_t **)devlist;          return devlist;
   
 sdl_err:  sdl_err:
         if (devlist) {          if (devlist) {
Line 228  sdl_err: Line 226  sdl_err:
         return NULL;          return NULL;
 }  }
   
 void  static void
 joydrv_terminate(void)  joydrv_terminate(void)
 {  {
   
         SDL_QuitSubSystem(SDL_INIT_JOYSTICK);          SDL_QuitSubSystem(SDL_INIT_JOYSTICK);
 }  }
   
 void *  static void *
 joydrv_open(const char *dvname)  joydrv_open(const char *dvname)
 {  {
         joydrv_sdl_hdl_t *shdl = NULL;          joydrv_sdl_hdl_t *shdl = NULL;
Line 331  sdl_err: Line 329  sdl_err:
         return NULL;          return NULL;
 }  }
   
 void  static void
 joydrv_close(void *hdl)  joydrv_close(void *hdl)
 {  {
         joydrv_sdl_hdl_t *shdl = (joydrv_sdl_hdl_t *)hdl;          joydrv_sdl_hdl_t *shdl = (joydrv_sdl_hdl_t *)hdl;
Line 348  joydrv_close(void *hdl) Line 346  joydrv_close(void *hdl)
         _MFREE(shdl);          _MFREE(shdl);
 }  }
   
 BOOL  static BOOL
 joydrv_getstat(void *hdl, JOYINFO_T *ji)  joydrv_getstat(void *hdl, JOYINFO_T *ji)
 {  {
         joydrv_sdl_hdl_t *shdl = (joydrv_sdl_hdl_t *)hdl;          joydrv_sdl_hdl_t *shdl = (joydrv_sdl_hdl_t *)hdl;

Removed from v.1.6  
changed lines
  Added in v.1.10


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