mirror of
https://github.com/dborth/vbagx.git
synced 2024-12-26 02:31:50 +01:00
add option to disable rumble, auto-determine if HBC stub is present
This commit is contained in:
parent
6ed7f2e8ee
commit
e4e4624a29
@ -153,6 +153,7 @@ void ShutoffRumble()
|
||||
|
||||
void DoRumble(int i)
|
||||
{
|
||||
if(!GCSettings.Rumble) return;
|
||||
if(rumbleRequest[i] && rumbleCount[i] < 3)
|
||||
{
|
||||
WPAD_Rumble(i, 1); // rumble on
|
||||
|
@ -3157,6 +3157,7 @@ static int MenuSettingsMenu()
|
||||
sprintf(options.name[i++], "Wiimote Orientation");
|
||||
sprintf(options.name[i++], "Music Volume");
|
||||
sprintf(options.name[i++], "Sound Effects Volume");
|
||||
sprintf(options.name[i++], "Rumble");
|
||||
options.length = i;
|
||||
|
||||
GuiText titleTxt("Settings - Menu", 28, (GXColor){255, 255, 255, 255});
|
||||
@ -3209,13 +3210,10 @@ static int MenuSettingsMenu()
|
||||
sprintf (options.value[0], "Return to Wii Menu");
|
||||
else if (GCSettings.ExitAction == 2)
|
||||
sprintf (options.value[0], "Power off Wii");
|
||||
else
|
||||
else if (GCSettings.ExitAction == 3)
|
||||
sprintf (options.value[0], "Return to Loader");
|
||||
|
||||
if (GCSettings.WiimoteOrientation == 0)
|
||||
sprintf (options.value[1], "Vertical");
|
||||
else if (GCSettings.WiimoteOrientation == 1)
|
||||
sprintf (options.value[1], "Horizontal");
|
||||
else
|
||||
sprintf (options.value[0], "Auto");
|
||||
#else // GameCube
|
||||
if(GCSettings.ExitAction > 1)
|
||||
GCSettings.ExitAction = 0;
|
||||
@ -3227,8 +3225,14 @@ static int MenuSettingsMenu()
|
||||
options.name[1][0] = 0; // Wiimote
|
||||
options.name[2][0] = 0; // Music
|
||||
options.name[3][0] = 0; // Sound Effects
|
||||
options.name[4][0] = 0; // Rumble
|
||||
#endif
|
||||
|
||||
if (GCSettings.WiimoteOrientation == 0)
|
||||
sprintf (options.value[1], "Vertical");
|
||||
else if (GCSettings.WiimoteOrientation == 1)
|
||||
sprintf (options.value[1], "Horizontal");
|
||||
|
||||
if(GCSettings.MusicVolume > 0)
|
||||
sprintf(options.value[2], "%d%%", GCSettings.MusicVolume);
|
||||
else
|
||||
@ -3239,13 +3243,18 @@ static int MenuSettingsMenu()
|
||||
else
|
||||
sprintf(options.value[3], "Mute");
|
||||
|
||||
if (GCSettings.Rumble == 1)
|
||||
sprintf (options.value[4], "Enabled");
|
||||
else
|
||||
sprintf (options.value[4], "Disabled");
|
||||
|
||||
ret = optionBrowser.GetClickedOption();
|
||||
|
||||
switch (ret)
|
||||
{
|
||||
case 0:
|
||||
GCSettings.ExitAction++;
|
||||
if(GCSettings.ExitAction > 2)
|
||||
if(GCSettings.ExitAction > 3)
|
||||
GCSettings.ExitAction = 0;
|
||||
break;
|
||||
case 1:
|
||||
@ -3262,6 +3271,9 @@ static int MenuSettingsMenu()
|
||||
if(GCSettings.SFXVolume > 100)
|
||||
GCSettings.SFXVolume = 0;
|
||||
break;
|
||||
case 4:
|
||||
GCSettings.Rumble ^= 1;
|
||||
break;
|
||||
}
|
||||
|
||||
if(backBtn.GetState() == STATE_CLICKED)
|
||||
|
@ -77,16 +77,26 @@ void ExitApp()
|
||||
{
|
||||
ExitCleanup();
|
||||
|
||||
if(GCSettings.ExitAction == 0) // Exit to Loader
|
||||
#ifdef HW_RVL
|
||||
if(GCSettings.ExitAction == 0) // Auto
|
||||
{
|
||||
#ifdef HW_RVL
|
||||
exit(0);
|
||||
#else
|
||||
if (psoid[0] == PSOSDLOADID)
|
||||
PSOReload ();
|
||||
#endif
|
||||
char * sig = (char *)0x80001804;
|
||||
if(
|
||||
sig[0] == 'S' &&
|
||||
sig[1] == 'T' &&
|
||||
sig[2] == 'U' &&
|
||||
sig[3] == 'B' &&
|
||||
sig[4] == 'H' &&
|
||||
sig[5] == 'A' &&
|
||||
sig[6] == 'X' &&
|
||||
sig[7] == 'X')
|
||||
GCSettings.ExitAction = 3; // Exit to HBC
|
||||
else
|
||||
GCSettings.ExitAction = 1; // HBC not found
|
||||
}
|
||||
else if(GCSettings.ExitAction == 1) // Exit to Menu
|
||||
#endif
|
||||
|
||||
if(GCSettings.ExitAction == 1) // Exit to Menu
|
||||
{
|
||||
#ifdef HW_RVL
|
||||
SYS_ResetSystem(SYS_RETURNTOMENU, 0, 0);
|
||||
@ -95,10 +105,19 @@ void ExitApp()
|
||||
*SOFTRESET_ADR = 0x00000000;
|
||||
#endif
|
||||
}
|
||||
else // Shutdown Wii
|
||||
else if(GCSettings.ExitAction == 2) // Shutdown Wii
|
||||
{
|
||||
SYS_ResetSystem(SYS_POWEROFF, 0, 0);
|
||||
}
|
||||
else // Exit to Loader
|
||||
{
|
||||
#ifdef HW_RVL
|
||||
exit(0);
|
||||
#else
|
||||
if (psoid[0] == PSOSDLOADID)
|
||||
PSOReload();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HW_RVL
|
||||
|
@ -68,6 +68,7 @@ struct SGCSettings{
|
||||
int ExitAction;
|
||||
int MusicVolume;
|
||||
int SFXVolume;
|
||||
int Rumble;
|
||||
};
|
||||
|
||||
void ExitApp();
|
||||
|
@ -87,4 +87,5 @@ DefaultSettings ()
|
||||
GCSettings.ExitAction = 0;
|
||||
GCSettings.MusicVolume = 40;
|
||||
GCSettings.SFXVolume = 40;
|
||||
GCSettings.Rumble = 1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user