Emulated Wiimote: Enabled the roll and pitch function again (I had accidently disabled it in the last commit)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2220 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
John Peterson 2009-02-12 10:49:38 +00:00
parent b932a53b68
commit eb1c6163f7
7 changed files with 42 additions and 31 deletions

View File

@ -1187,7 +1187,7 @@ void ConfigDialog::UpdateGUI(int Slot)
has been initialized. Functions for that are basically already in place so these two options
could possibly be simplified to one option. */
m_ConnectRealWiimote[Page]->Enable(!g_EmulatorRunning);
m_UseRealWiimote[Page]->Enable((m_bEnableUseRealWiimote && g_RealWiiMotePresent && g_Config.bConnectRealWiimote) || !g_EmulatorRunning);
m_UseRealWiimote[Page]->Enable((m_bEnableUseRealWiimote && g_RealWiiMotePresent && g_Config.bConnectRealWiimote) || (!g_EmulatorRunning && g_Config.bConnectRealWiimote));
// Linux has no FindItem()
// Disable all pad items if no pads are detected

View File

@ -449,6 +449,8 @@ void ConfigDialog::DoGetButtons(int GetId)
// ¯¯¯¯¯¯¯¯¯¯¯¯¯¯
void ConfigDialog::PadGetStatus()
{
//Console::Print("SDL_WasInit: %i\n", SDL_WasInit(0));
// Return if it's not detected
if(WiiMoteEmu::PadMapping[Page].ID >= SDL_NumJoysticks())
{
@ -596,7 +598,5 @@ void ConfigDialog::UpdatePad(wxTimerEvent& WXUNUSED(event))
//LogMsg("Abc%s\n", ShowStatus(notebookpage).c_str());
PadGetStatus();
//Console::Print("a\n");
}
/////////////////////////////////////////////////////

View File

@ -39,7 +39,6 @@
#include "Logging.h" // for startConsoleWin, Console::Print, GetConsoleHwnd
#include "Config.h" // for g_Config
////////////////////////////////////
extern SWiimoteInitialize g_WiimoteInitialize;
namespace WiiMoteEmu
@ -341,8 +340,11 @@ void Initialize()
g_RecordingCurrentTime[i] = 0;
}
// Load avaliable pads
// Populate joyinfo for all attached devices if the configuration window is not already open
if(!g_FrameOpen)
{
Search_Devices(joyinfo, NumPads, NumGoodPads);
}
/* The Nuncheck extension ID for homebrew applications that use the zero key. This writes 0x0000
in encrypted form (0xfefe) to 0xfe in the extension register. */
@ -379,11 +381,14 @@ void Shutdown(void)
/* SDL_JoystickClose() crashes for some reason so I avoid this for now, SDL_Quit() should
close the pads to I think */
//if(SDL_JoystickOpened(PadMapping[i].ID)) SDL_JoystickClose(PadState[i].joy);
//PadState[i].joy = NULL;
}
}
// Clear the physical device info
joyinfo.clear();
NumPads = 0;
NumGoodPads = 0;
// Finally close SDL
if (SDL_WasInit(0)) SDL_Quit();

View File

@ -45,6 +45,7 @@ void Update();
void LoadRecordedMovements();
// Registers and calibration values
void ResetVariables();
void UpdateEeprom();
void SetDefaultExtensionRegistry();

View File

@ -568,7 +568,7 @@ void FillReportAcc(wm_accel& _acc)
SingleShake(g_z, g_y);
// Tilt Wiimote
Tilt(g_x, g_y, g_z);
// Write final values
_acc.x = g_x;

View File

@ -228,6 +228,9 @@ extern "C" void Shutdown(void)
if(frame) frame->UpdateGUI();
#endif
// Reset the variables
WiiMoteEmu::ResetVariables();
/* Don't shut down the wiimote when we still have the config window open, we may still want
want to use the Wiimote in the config window. */
return;
@ -238,7 +241,7 @@ extern "C" void Shutdown(void)
#endif
WiiMoteEmu::Shutdown();
//Console::Close();
Console::Close();
}

View File

@ -302,7 +302,13 @@ void Shutdown()
// Always change this variable
g_EmulatorRunning = false;
// Don't shutdown if the configuration window is still showing
// Stop debugging
#ifdef _DEBUG
DEBUG_QUIT();
#endif
// Don't shutdown the gamepad if the configuration window is still showing
// Todo: Coordinate with the Wiimote plugin, SDL_Quit() will remove the pad for it to
if (m_frame) return;
/* Close all devices carefully. We must check that we are not accessing any undefined
@ -329,10 +335,6 @@ void Shutdown()
// Remove the pointer to the initialize data
g_PADInitialize = NULL;
#ifdef _DEBUG
DEBUG_QUIT();
#endif
#ifdef _WIN32
#ifdef USE_RUMBLE_DINPUT_HACK
FreeDirectInput();