68 lines
3.0 KiB
C
68 lines
3.0 KiB
C
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
* Mupen64plus-input-sdl - plugin.h *
|
|
* Mupen64Plus homepage: http://code.google.com/p/mupen64plus/ *
|
|
* Copyright (C) 2008-2009 Richard Goedeken *
|
|
* Copyright (C) 2008 Tillin9 *
|
|
* Copyright (C) 2002 Blight *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
* *
|
|
* This program is distributed in the hope that it will be useful, *
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
* GNU General Public License for more details. *
|
|
* *
|
|
* You should have received a copy of the GNU General Public License *
|
|
* along with this program; if not, write to the *
|
|
* Free Software Foundation, Inc., *
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
|
|
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
|
|
#ifndef __PLUGIN_H__
|
|
#define __PLUGIN_H__
|
|
|
|
#define M64P_PLUGIN_PROTOTYPES 1
|
|
#include "m64p_plugin.h"
|
|
#include "m64p_config.h"
|
|
|
|
// Some stuff from n-rage plugin
|
|
#define RD_GETSTATUS 0x00 // get status
|
|
#define RD_READKEYS 0x01 // read button values
|
|
#define RD_READPAK 0x02 // read from controllerpack
|
|
#define RD_WRITEPAK 0x03 // write to controllerpack
|
|
#define RD_RESETCONTROLLER 0xff // reset controller
|
|
#define RD_READEEPROM 0x04 // read eeprom
|
|
#define RD_WRITEEPROM 0x05 // write eeprom
|
|
|
|
#define RD_ABSOLUTE 0x01 // Default gamepad
|
|
#define RD_RELATIVE 0x02
|
|
#define RD_GAMEPAD 0x04 // Default gamepad
|
|
//B2
|
|
#define RD_EEPROM 0x80
|
|
#define RD_NOEEPROM 0x00
|
|
|
|
//C3
|
|
// No Plugin in Controller
|
|
#define RD_NOPLUGIN 0x00 // No pak in controller
|
|
#define RD_PLUGIN 0x01 // Any pak in controller
|
|
#define RD_NOTINITIALIZED 0x02 // Pak was uninitialized before call
|
|
#define RD_ADDRCRCERR 0x04 // Last I/O address was invalid
|
|
#define RD_EEPROMBUSY 0x80 // EEPROM busy
|
|
|
|
typedef struct
|
|
{
|
|
CONTROL *control; // pointer to CONTROL struct in Core library
|
|
BOOL rumbling;
|
|
} SController;
|
|
|
|
/* global data definitions */
|
|
extern SController controller[4]; // 4 controllers
|
|
|
|
/* global function definitions */
|
|
extern void DebugMessage(int level, const char *message, ...);
|
|
|
|
#endif // __PLUGIN_H__
|