mirror of
https://github.com/dborth/snes9xgx.git
synced 2024-11-24 03:29:22 +01:00
add IOS whitelist, reload if found. display warning if not.
This commit is contained in:
parent
0df185faa6
commit
2213e5510e
@ -3850,8 +3850,15 @@ MainMenu (int menu)
|
||||
#ifdef HW_RVL
|
||||
static bool checkIOS = true;
|
||||
|
||||
if(checkIOS && !SaneIOS())
|
||||
ErrorPrompt("The current IOS has been altered (fake-signed). Functionality and/or stability may be adversely affected.");
|
||||
if(checkIOS)
|
||||
{
|
||||
u32 ios = IOS_GetVersion();
|
||||
|
||||
if(!SupportedIOS(ios))
|
||||
ErrorPrompt("The current IOS is unsupported. Functionality and/or stability may be adversely affected.");
|
||||
else if(!SaneIOS(ios))
|
||||
ErrorPrompt("The current IOS has been altered (fake-signed). Functionality and/or stability may be adversely affected.");
|
||||
}
|
||||
|
||||
checkIOS = false;
|
||||
#endif
|
||||
|
@ -213,13 +213,22 @@ void setFrameTimerMethod()
|
||||
#ifdef HW_RVL
|
||||
bool SaneIOS()
|
||||
{
|
||||
bool res = false;
|
||||
u32 num_titles=0;
|
||||
u32 tmd_size;
|
||||
u32 ios = IOS_GetVersion();
|
||||
bool SupportedIOS(u32 ios)
|
||||
{
|
||||
if(ios == 58 || ios == 61)
|
||||
return true;
|
||||
|
||||
if(ios > 200)
|
||||
return false;
|
||||
}
|
||||
|
||||
bool SaneIOS(u32 ios)
|
||||
{
|
||||
bool res = false;
|
||||
u32 num_titles=0;
|
||||
u32 tmd_size;
|
||||
|
||||
if(ios > 200)
|
||||
return false;
|
||||
|
||||
if (ES_GetNumTitles(&num_titles) < 0)
|
||||
return false;
|
||||
@ -328,6 +337,16 @@ void USBGeckoOutput()
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
u32 ios = IOS_GetVersion();
|
||||
|
||||
if(!SupportedIOS(ios))
|
||||
{
|
||||
s32 preferred = IOS_GetPreferredVersion();
|
||||
|
||||
if(SupportedIOS(preferred))
|
||||
IOS_ReloadIOS(preferred);
|
||||
}
|
||||
|
||||
//USBGeckoOutput(); // uncomment to enable USB gecko output
|
||||
__exception_setreload(8);
|
||||
|
||||
|
@ -112,7 +112,8 @@ struct SGCSettings{
|
||||
|
||||
void ExitApp();
|
||||
void ShutdownWii();
|
||||
bool SaneIOS();
|
||||
bool SupportedIOS(u32 ios);
|
||||
bool SaneIOS(u32 ios);
|
||||
extern struct SGCSettings GCSettings;
|
||||
extern int ScreenshotRequested;
|
||||
extern int ConfigRequested;
|
||||
|
Loading…
Reference in New Issue
Block a user