2009-07-28 21:32:10 +00:00
|
|
|
// Copyright (C) 2003 Dolphin Project.
|
2008-12-08 05:25:12 +00:00
|
|
|
|
|
|
|
// 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, version 2.0.
|
|
|
|
|
|
|
|
// 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 2.0 for more details.
|
|
|
|
|
|
|
|
// A copy of the GPL 2.0 should have been included with the program.
|
|
|
|
// If not, see http://www.gnu.org/licenses/
|
|
|
|
|
|
|
|
// Official SVN repository and contact information can be found at
|
|
|
|
// http://code.google.com/p/dolphin-emu/
|
|
|
|
|
2009-01-07 02:59:19 +00:00
|
|
|
#ifndef _EMU_DEFINITIONS_
|
|
|
|
#define _EMU_DEFINITIONS_
|
2008-12-08 05:25:12 +00:00
|
|
|
|
|
|
|
#include <vector>
|
|
|
|
#include <string>
|
2009-02-08 15:39:28 +00:00
|
|
|
|
|
|
|
#include "pluginspecs_wiimote.h"
|
2008-12-08 05:25:12 +00:00
|
|
|
#include "Common.h"
|
|
|
|
#include "wiimote_hid.h"
|
|
|
|
#include "EmuDefinitions.h"
|
|
|
|
#include "Encryption.h"
|
|
|
|
|
|
|
|
extern SWiimoteInitialize g_WiimoteInitialize;
|
|
|
|
|
|
|
|
namespace WiiMoteEmu
|
|
|
|
{
|
|
|
|
|
|
|
|
//******************************************************************************
|
|
|
|
// Definitions and variable declarations
|
|
|
|
//******************************************************************************
|
|
|
|
|
2009-02-05 00:13:38 +00:00
|
|
|
u8 g_Leds;
|
|
|
|
u8 g_Speaker;
|
|
|
|
u8 g_SpeakerVoice;
|
|
|
|
u8 g_IR;
|
2008-12-08 05:25:12 +00:00
|
|
|
|
|
|
|
u8 g_Eeprom[WIIMOTE_EEPROM_SIZE];
|
|
|
|
u8 g_RegSpeaker[WIIMOTE_REG_SPEAKER_SIZE];
|
2009-11-26 05:01:24 +00:00
|
|
|
u8 g_RegMotionPlus[WIIMOTE_REG_EXT_SIZE];
|
2008-12-08 05:25:12 +00:00
|
|
|
u8 g_RegExt[WIIMOTE_REG_EXT_SIZE];
|
|
|
|
u8 g_RegExtTmp[WIIMOTE_REG_EXT_SIZE];
|
|
|
|
u8 g_RegIr[WIIMOTE_REG_IR_SIZE];
|
|
|
|
|
2009-11-24 05:03:47 +00:00
|
|
|
bool g_ReportingAuto; // Auto report or passive report
|
2009-01-07 02:59:19 +00:00
|
|
|
u8 g_ReportingMode; // The reporting mode and channel id
|
2008-12-08 05:25:12 +00:00
|
|
|
u16 g_ReportingChannel;
|
|
|
|
|
2009-01-29 08:35:29 +00:00
|
|
|
std::vector<wm_ackdelay> AckDelay; // Ackk delay
|
2009-01-07 02:59:19 +00:00
|
|
|
|
|
|
|
wiimote_key g_ExtKey; // The extension encryption key
|
2009-02-07 03:16:41 +00:00
|
|
|
bool g_Encryption; // Encryption on or off
|
2008-12-08 05:25:12 +00:00
|
|
|
|
2009-02-08 15:39:28 +00:00
|
|
|
// Gamepad input
|
2009-11-14 17:08:32 +00:00
|
|
|
int NumPads = 0, NumGoodPads = 0; // Number of goods pads
|
2009-02-08 15:39:28 +00:00
|
|
|
std::vector<InputCommon::CONTROLLER_INFO> joyinfo;
|
2009-02-09 13:10:29 +00:00
|
|
|
InputCommon::CONTROLLER_STATE_NEW PadState[4];
|
|
|
|
InputCommon::CONTROLLER_MAPPING_NEW PadMapping[4];
|
2009-02-08 15:39:28 +00:00
|
|
|
|
2009-12-09 16:33:32 +00:00
|
|
|
// Shake emulation
|
|
|
|
ShakeData::ShakeData() {
|
|
|
|
Shake = 0;
|
|
|
|
Roll = 0;
|
|
|
|
Pitch = 0;
|
|
|
|
}
|
|
|
|
|
2009-02-15 22:23:59 +00:00
|
|
|
// Keyboard input
|
2009-07-04 07:28:48 +00:00
|
|
|
KeyboardWiimote g_Wiimote_kbd;
|
|
|
|
KeyboardNunchuck g_NunchuckExt;
|
|
|
|
KeyboardClassicController g_ClassicContExt;
|
|
|
|
KeyboardGH3GLP g_GH3Ext;
|
2009-08-02 08:53:54 +00:00
|
|
|
bool KeyStatus[64];
|
2008-12-08 05:25:12 +00:00
|
|
|
} // namespace
|
|
|
|
|
2008-12-09 05:37:15 +00:00
|
|
|
#endif //_EMU_DECLARATIONS_
|
2009-03-07 08:07:11 +00:00
|
|
|
|