mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2025-02-17 12:36:20 +01:00
- fix for being able to select more than 10 categories.
- added prefer_usb option for Wii and GameCube games. when set to yes their partition will be set to USB if USB is connected otherwise set to SD. - possible fix for homebrew and plugin dol launching by moving ShutdownBeforeExit after loading IOS 58.
This commit is contained in:
parent
43cbf1c6be
commit
8ba563cfd6
BIN
out/boot.dol
BIN
out/boot.dol
Binary file not shown.
Before Width: | Height: | Size: 3.6 MiB After Width: | Height: | Size: 3.6 MiB |
@ -182,7 +182,7 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
/* mount USB if needed */
|
/* mount USB if needed */
|
||||||
DeviceHandle.SetMountUSB(isUsingUSB());
|
DeviceHandle.SetMountUSB(isUsingUSB());
|
||||||
DeviceHandle.MountAllUSB();// only mounts any USB if isUsingUSB()
|
bool usb_mounted = DeviceHandle.MountAllUSB();// only mounts any USB if isUsingUSB()
|
||||||
|
|
||||||
/* init wait images and show wait animation */
|
/* init wait images and show wait animation */
|
||||||
m_vid.setCustomWaitImgs(wait_dir, wait_loop);
|
m_vid.setCustomWaitImgs(wait_dir, wait_loop);
|
||||||
@ -192,7 +192,7 @@ int main(int argc, char **argv)
|
|||||||
Open_Inputs();// WPAD_SetVRes() is called later in mainMenu.init() during cursor init which gets the theme pointer images
|
Open_Inputs();// WPAD_SetVRes() is called later in mainMenu.init() during cursor init which gets the theme pointer images
|
||||||
|
|
||||||
/* init configs, folders, coverflow, gui and more */
|
/* init configs, folders, coverflow, gui and more */
|
||||||
if(mainMenu.init())
|
if(mainMenu.init(usb_mounted))
|
||||||
{
|
{
|
||||||
if(CurrentIOS.Version != mainIOS)
|
if(CurrentIOS.Version != mainIOS)
|
||||||
{
|
{
|
||||||
|
@ -109,7 +109,7 @@ static void GrabINIFiles(char *FullPath)
|
|||||||
INI_List.push_back(FullPath);
|
INI_List.push_back(FullPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CMenu::init()
|
bool CMenu::init(bool usb_mounted)
|
||||||
{
|
{
|
||||||
SoundHandle.Init();
|
SoundHandle.Init();
|
||||||
m_gameSound.SetVoice(1);
|
m_gameSound.SetVoice(1);
|
||||||
@ -182,6 +182,13 @@ bool CMenu::init()
|
|||||||
if(strncmp(wii_games_dir, "%s:/", 4) != 0)
|
if(strncmp(wii_games_dir, "%s:/", 4) != 0)
|
||||||
strcpy(wii_games_dir, GAMES_DIR);
|
strcpy(wii_games_dir, GAMES_DIR);
|
||||||
gprintf("Wii Games Directory: %s\n", wii_games_dir);
|
gprintf("Wii Games Directory: %s\n", wii_games_dir);
|
||||||
|
if(m_cfg.getBool(WII_DOMAIN, "prefer_usb", false))
|
||||||
|
{
|
||||||
|
if(usb_mounted)
|
||||||
|
m_cfg.setInt(WII_DOMAIN, "partition", USB1);
|
||||||
|
else
|
||||||
|
m_cfg.setInt(WII_DOMAIN, "partition", SD);
|
||||||
|
}
|
||||||
|
|
||||||
/* GameCube stuff */
|
/* GameCube stuff */
|
||||||
m_devo_installed = DEVO_Installed(m_dataDir.c_str());
|
m_devo_installed = DEVO_Installed(m_dataDir.c_str());
|
||||||
@ -193,6 +200,13 @@ bool CMenu::init()
|
|||||||
gprintf("GameCube Games Directory: %s\n", gc_games_dir);
|
gprintf("GameCube Games Directory: %s\n", gc_games_dir);
|
||||||
m_gc_play_banner_sound = m_cfg.getBool(GC_DOMAIN, "play_banner_sound", true);
|
m_gc_play_banner_sound = m_cfg.getBool(GC_DOMAIN, "play_banner_sound", true);
|
||||||
m_gc_play_default_sound = m_cfg.getBool(GC_DOMAIN, "play_default_sound", true);
|
m_gc_play_default_sound = m_cfg.getBool(GC_DOMAIN, "play_default_sound", true);
|
||||||
|
if(m_cfg.getBool(GC_DOMAIN, "prefer_usb", false))
|
||||||
|
{
|
||||||
|
if(usb_mounted)
|
||||||
|
m_cfg.setInt(GC_DOMAIN, "partition", USB1);
|
||||||
|
else
|
||||||
|
m_cfg.setInt(GC_DOMAIN, "partition", SD);
|
||||||
|
}
|
||||||
|
|
||||||
/* Load cIOS Map */
|
/* Load cIOS Map */
|
||||||
_installed_cios.clear();
|
_installed_cios.clear();
|
||||||
@ -1977,15 +1991,13 @@ void CMenu::_initCF(void)
|
|||||||
CoverFlow.clear();
|
CoverFlow.clear();
|
||||||
CoverFlow.reserve(m_gameList.size());
|
CoverFlow.reserve(m_gameList.size());
|
||||||
|
|
||||||
char requiredCats[10];
|
string requiredCats = m_cat.getString("GENERAL", "required_categories", "");
|
||||||
char selectedCats[10];
|
string selectedCats = m_cat.getString("GENERAL", "selected_categories", "");
|
||||||
char hiddenCats[10];
|
string hiddenCats = m_cat.getString("GENERAL", "hidden_categories", "");
|
||||||
strcpy(requiredCats, m_cat.getString("GENERAL", "required_categories").c_str());
|
u8 numReqCats = requiredCats.length();
|
||||||
strcpy(selectedCats, m_cat.getString("GENERAL", "selected_categories").c_str());
|
u8 numSelCats = selectedCats.length();
|
||||||
strcpy(hiddenCats, m_cat.getString("GENERAL", "hidden_categories").c_str());
|
u8 numHidCats = hiddenCats.length();
|
||||||
u8 numReqCats = strlen(requiredCats);
|
|
||||||
u8 numSelCats = strlen(selectedCats);
|
|
||||||
u8 numHidCats = strlen(hiddenCats);
|
|
||||||
char id[74];
|
char id[74];
|
||||||
char catID[64];
|
char catID[64];
|
||||||
|
|
||||||
@ -2050,9 +2062,8 @@ void CMenu::_initCF(void)
|
|||||||
|
|
||||||
if(numReqCats != 0 || numSelCats != 0 || numHidCats != 0) // if all 0 skip checking cats and show all games
|
if(numReqCats != 0 || numSelCats != 0 || numHidCats != 0) // if all 0 skip checking cats and show all games
|
||||||
{
|
{
|
||||||
char idCats[10];
|
string idCats= m_cat.getString(catDomain, catID, "");
|
||||||
strcpy(idCats, m_cat.getString(catDomain, catID).c_str());
|
u8 numIdCats = idCats.length();
|
||||||
u8 numIdCats = strlen(idCats);
|
|
||||||
if(numIdCats == 0)
|
if(numIdCats == 0)
|
||||||
m_cat.remove(catDomain, catID);
|
m_cat.remove(catDomain, catID);
|
||||||
bool inaCat = false;
|
bool inaCat = false;
|
||||||
|
@ -38,7 +38,7 @@ class CMenu
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CMenu();
|
CMenu();
|
||||||
bool init();
|
bool init(bool usb_mounted);
|
||||||
void error(const wstringEx &msg);
|
void error(const wstringEx &msg);
|
||||||
void terror(const char *key, const wchar_t *msg) { error(_fmt(key, msg)); }
|
void terror(const char *key, const wchar_t *msg) { error(_fmt(key, msg)); }
|
||||||
int main(void);
|
int main(void);
|
||||||
|
@ -189,15 +189,12 @@ void CMenu::_CategorySettings(bool fromGameSet)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
char requiredCats[10];
|
string requiredCats = m_cat.getString("GENERAL", "required_categories", "");
|
||||||
char selectedCats[10];
|
string selectedCats = m_cat.getString("GENERAL", "selected_categories", "");
|
||||||
char hiddenCats[10];
|
string hiddenCats = m_cat.getString("GENERAL", "hidden_categories", "");
|
||||||
strcpy(requiredCats, m_cat.getString("GENERAL", "required_categories").c_str());
|
u8 numReqCats = requiredCats.length();
|
||||||
strcpy(selectedCats, m_cat.getString("GENERAL", "selected_categories").c_str());
|
u8 numSelCats = selectedCats.length();
|
||||||
strcpy(hiddenCats, m_cat.getString("GENERAL", "hidden_categories").c_str());
|
u8 numHidCats = hiddenCats.length();
|
||||||
u8 numReqCats = strlen(requiredCats);
|
|
||||||
u8 numSelCats = strlen(selectedCats);
|
|
||||||
u8 numHidCats = strlen(hiddenCats);
|
|
||||||
|
|
||||||
if(numReqCats != 0)
|
if(numReqCats != 0)
|
||||||
{
|
{
|
||||||
|
@ -212,8 +212,8 @@ void CMenu::_launchHomebrew(const char *filepath, vector<string> arguments)
|
|||||||
AddBootArgument(arguments[i].c_str());
|
AddBootArgument(arguments[i].c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
ShutdownBeforeExit();// wifi and sd gecko doesnt work anymore after
|
|
||||||
loadIOS(58, false);
|
loadIOS(58, false);
|
||||||
|
ShutdownBeforeExit();// wifi and sd gecko doesnt work anymore after
|
||||||
BootHomebrew();
|
BootHomebrew();
|
||||||
Sys_Exit();
|
Sys_Exit();
|
||||||
}
|
}
|
||||||
@ -519,9 +519,10 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
|||||||
}
|
}
|
||||||
|
|
||||||
Nintendont_SetOptions(path, id, CheatPath, GClanguage, n_config, n_videomode, vidscale, vidoffset);
|
Nintendont_SetOptions(path, id, CheatPath, GClanguage, n_config, n_videomode, vidscale, vidoffset);
|
||||||
ShutdownBeforeExit();
|
|
||||||
loadIOS(58, false); //nintendont NEEDS ios58 and AHBPROT disabled
|
loadIOS(58, false); //nintendont NEEDS ios58 and AHBPROT disabled
|
||||||
/* should be a check for error loading IOS58 and AHBPROT disabled */
|
/* should be a check for error loading IOS58 and AHBPROT disabled */
|
||||||
|
ShutdownBeforeExit();
|
||||||
BootHomebrew(); //regular dol
|
BootHomebrew(); //regular dol
|
||||||
}
|
}
|
||||||
else // loader == DEVOLUTION
|
else // loader == DEVOLUTION
|
||||||
|
@ -1 +1 @@
|
|||||||
<pd><ViewState><e p="Wiiflow\portlibs" x="false"></e><e p="Wiiflow\source\cheats" x="false"></e><e p="Wiiflow\docs" x="false"></e><e p="Wiiflow\source\fileOps" x="false"></e><e p="Wiiflow\source\gecko" x="false"></e><e p="Wiiflow\source\homebrew" x="false"></e><e p="Wiiflow\source\loader" x="false"></e><e p="Wiiflow\source\libwolfssl" x="false"></e><e p="Wiiflow\source\wstringEx" x="false"></e><e p="Wiiflow\source\gc" x="false"></e><e p="Wiiflow\source\list" x="true"></e><e p="Wiiflow\source\music" x="false"></e><e p="Wiiflow\source\banner" x="false"></e><e p="Wiiflow\source\config" x="true"></e><e p="Wiiflow\source\libwbfs" x="false"></e><e p="Wiiflow\source\memory" x="false"></e><e p="Wiiflow\source\sicksaxis-wrapper" x="false"></e><e p="Wiiflow\source" x="true"></e><e p="Wiiflow\source\channel" x="false"></e><e p="Wiiflow\source\hw" x="false"></e><e p="Wiiflow\source\menu" x="true"></e><e p="Wiiflow\source\network" x="false"></e><e p="Wiiflow\source\plugin" x="true"></e><e p="Wiiflow\source\unzip" x="false"></e><e p="Wiiflow\wii" x="false"></e><e p="Wiiflow\data" x="false"></e><e p="Wiiflow\resources" x="false"></e><e p="Wiiflow\scripts" x="false"></e><e p="Wiiflow\source\booter" x="false"></e><e p="Wiiflow\source\devicemounter" x="false"></e><e p="Wiiflow\source\gui" x="false"></e><e p="Wiiflow" x="true"></e></ViewState></pd>
|
<pd><ViewState><e p="Wiiflow\portlibs" x="false"></e><e p="Wiiflow\source\cheats" x="false"></e><e p="Wiiflow\docs" x="false"></e><e p="Wiiflow\source\fileOps" x="false"></e><e p="Wiiflow\source\gecko" x="false"></e><e p="Wiiflow\source\homebrew" x="false"></e><e p="Wiiflow\source\loader" x="false"></e><e p="Wiiflow\source\libwolfssl" x="false"></e><e p="Wiiflow\source\wstringEx" x="false"></e><e p="Wiiflow\source\gc" x="false"></e><e p="Wiiflow\source\list" x="false"></e><e p="Wiiflow\source\music" x="false"></e><e p="Wiiflow\source\banner" x="false"></e><e p="Wiiflow\source\config" x="false"></e><e p="Wiiflow\source\libwbfs" x="false"></e><e p="Wiiflow\source\memory" x="false"></e><e p="Wiiflow\source\sicksaxis-wrapper" x="false"></e><e p="Wiiflow\source" x="true"></e><e p="Wiiflow\source\channel" x="false"></e><e p="Wiiflow\source\hw" x="false"></e><e p="Wiiflow\source\menu" x="true"></e><e p="Wiiflow\source\network" x="false"></e><e p="Wiiflow\source\plugin" x="false"></e><e p="Wiiflow\source\unzip" x="false"></e><e p="Wiiflow\wii" x="false"></e><e p="Wiiflow\data" x="false"></e><e p="Wiiflow\resources" x="false"></e><e p="Wiiflow\scripts" x="false"></e><e p="Wiiflow\source\booter" x="false"></e><e p="Wiiflow\source\devicemounter" x="false"></e><e p="Wiiflow\source\gui" x="false"></e><e p="Wiiflow" x="true"></e></ViewState></pd>
|
Loading…
x
Reference in New Issue
Block a user