Path: blob/master/libmupen64plus/mupen64plus-input-bkm/plugin.h
2 views
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *1* Mupen64plus-input-sdl - plugin.h *2* Mupen64Plus homepage: http://code.google.com/p/mupen64plus/ *3* Copyright (C) 2008-2009 Richard Goedeken *4* Copyright (C) 2008 Tillin9 *5* Copyright (C) 2002 Blight *6* *7* This program is free software; you can redistribute it and/or modify *8* it under the terms of the GNU General Public License as published by *9* the Free Software Foundation; either version 2 of the License, or *10* (at your option) any later version. *11* *12* This program is distributed in the hope that it will be useful, *13* but WITHOUT ANY WARRANTY; without even the implied warranty of *14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *15* GNU General Public License for more details. *16* *17* You should have received a copy of the GNU General Public License *18* along with this program; if not, write to the *19* Free Software Foundation, Inc., *20* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *21* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */2223#ifndef __PLUGIN_H__24#define __PLUGIN_H__2526#define M64P_PLUGIN_PROTOTYPES 127#include "m64p_plugin.h"28#include "m64p_config.h"2930// Some stuff from n-rage plugin31#define RD_GETSTATUS 0x00 // get status32#define RD_READKEYS 0x01 // read button values33#define RD_READPAK 0x02 // read from controllerpack34#define RD_WRITEPAK 0x03 // write to controllerpack35#define RD_RESETCONTROLLER 0xff // reset controller36#define RD_READEEPROM 0x04 // read eeprom37#define RD_WRITEEPROM 0x05 // write eeprom3839#define RD_ABSOLUTE 0x01 // Default gamepad40#define RD_RELATIVE 0x0241#define RD_GAMEPAD 0x04 // Default gamepad42//B243#define RD_EEPROM 0x8044#define RD_NOEEPROM 0x004546//C347// No Plugin in Controller48#define RD_NOPLUGIN 0x00 // No pak in controller49#define RD_PLUGIN 0x01 // Any pak in controller50#define RD_NOTINITIALIZED 0x02 // Pak was uninitialized before call51#define RD_ADDRCRCERR 0x04 // Last I/O address was invalid52#define RD_EEPROMBUSY 0x80 // EEPROM busy5354typedef struct55{56CONTROL *control; // pointer to CONTROL struct in Core library57BOOL rumbling;58} SController;5960/* global data definitions */61extern SController controller[4]; // 4 controllers6263/* global function definitions */64extern void DebugMessage(int level, const char *message, ...);6566#endif // __PLUGIN_H__676869