mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2024-12-24 02:41:55 +01:00
-since wiiflow (lite) can no longer work in neek2o mode i cleaned up the code for exit to Neek2o on the exit to menu.cpp
-also cleaned up the code for setting the current emu nand path.
This commit is contained in:
parent
056aa2735b
commit
e133c49836
BIN
out/boot.dol
BIN
out/boot.dol
Binary file not shown.
Before Width: | Height: | Size: 3.3 MiB After Width: | Height: | Size: 3.3 MiB |
@ -1249,16 +1249,17 @@ u8 *Nand::GetTMD(u64 title, u32 *size)
|
||||
|
||||
void Nand::SetPaths(const char *emuPath, const char *currentPart)
|
||||
{
|
||||
memset(&NandPath, 0, sizeof(NandPath));
|
||||
for(u32 i = 0; emuPath[i] != '\0'; i++)
|
||||
strncat(NandPath, &emuPath[i], 1);
|
||||
/* emuPath should = /nands/nand_name */
|
||||
|
||||
/* Our WiiFlow handle Path */
|
||||
memset(&FullNANDPath, 0, sizeof(FullNANDPath));
|
||||
strcat(FullNANDPath, fmt("%s:%s", currentPart, NandPath));
|
||||
gprintf("Emu NAND Full Path = %s\n", FullNANDPath);
|
||||
/* For d2x IOS Path */
|
||||
if(strlen(NandPath) == 0) strcat(NandPath, "/");
|
||||
/* set wiiflow full nand path */
|
||||
snprintf(FullNANDPath, sizeof(FullNANDPath), "%s:%s", currentPart, emuPath);
|
||||
gprintf("Emu NAND Full Path = %s\n", FullNANDPath);
|
||||
|
||||
/* set IOS compatible NAND Path */
|
||||
strncpy(NandPath, emuPath, sizeof(NandPath));
|
||||
NandPath[sizeof(NandPath) - 1] = '\0';
|
||||
if(strlen(NandPath) == 0)
|
||||
strcat(NandPath, "/");
|
||||
gprintf("IOS Compatible NAND Path = %s\n", NandPath);
|
||||
}
|
||||
|
||||
|
@ -269,8 +269,8 @@ bool CMenu::init()
|
||||
gprintf("Setting Wii games partition to: %i\n", partition);
|
||||
|
||||
/* Emu nands init even if not being used */
|
||||
memset(emu_nands_dir, 0, 64);
|
||||
strncpy(emu_nands_dir, IsOnWiiU() ? "vwiinands" : "nands", 64);
|
||||
memset(emu_nands_dir, 0, sizeof(emu_nands_dir));
|
||||
strncpy(emu_nands_dir, IsOnWiiU() ? "vwiinands" : "nands", sizeof(emu_nands_dir) - 1);
|
||||
_checkEmuNandSettings();
|
||||
|
||||
CoverFlow.init(m_base_font, m_base_font_size, m_vid.vid_50hz());
|
||||
|
@ -145,7 +145,7 @@ private:
|
||||
string m_helpDir;
|
||||
|
||||
/* NandEmulation */
|
||||
char emu_nands_dir[64];
|
||||
char emu_nands_dir[32];
|
||||
string m_saveExtGameId;
|
||||
bool m_forceext;
|
||||
bool m_emuSaveNand;
|
||||
|
@ -218,32 +218,17 @@ bool CMenu::_ExitTo(void)
|
||||
}
|
||||
else if(m_btnMgr.selected(m_homeBtnExitToNeek))
|
||||
{
|
||||
if(!Load_Neek2o_Kernel())
|
||||
if(Load_Neek2o_Kernel() && _FindEmuPart(EMU_NAND, false) >= 0)// make sure neek2o and emunand exists
|
||||
{
|
||||
Sys_SetNeekPath(NandHandle.Get_NandPath());
|
||||
exitHandler(EXIT_TO_SMNK2O);
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
error(_fmt("errneek1", L"Cannot launch neek2o. Verify your neek2o setup"));
|
||||
_showExitTo();
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifdef APP_WIIFLOW
|
||||
if(m_cfg.getBool("NEEK2O", "launchwiiflow", true))
|
||||
exitHandler(EXIT_TO_WFNK2O);
|
||||
else
|
||||
#endif
|
||||
exitHandler(EXIT_TO_SMNK2O);
|
||||
/* if exiting to Neek2o we must set the EmuNand Path for sys_exit() in sys.c */
|
||||
const char *EmuNandPath = NULL;
|
||||
/* but only if we are not already in neek2o mode */
|
||||
if(_FindEmuPart(EMU_NAND, false) >= 0)// make sure emunand exists
|
||||
EmuNandPath = NandHandle.Get_NandPath();
|
||||
else
|
||||
{
|
||||
error(_fmt("errneek1", L"Cannot launch neek2o. Verify your neek2o setup"));
|
||||
_showExitTo();
|
||||
}
|
||||
Sys_SetNeekPath(EmuNandPath);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if(BTN_HOME_PRESSED)
|
||||
|
@ -239,16 +239,17 @@ void CMenu::_FullNandCheck(void)
|
||||
int CMenu::_FindEmuPart(bool savesnand, bool skipchecks)
|
||||
{
|
||||
int emuPart;
|
||||
char tmpPath[MAX_FAT_PATH];
|
||||
char tmpPath[32];
|
||||
tmpPath[31] = '\0';
|
||||
if(savesnand)
|
||||
{
|
||||
emuPart = m_cfg.getInt(WII_DOMAIN, "savepartition");
|
||||
snprintf(tmpPath, sizeof(tmpPath), "/%s/%s", emu_nands_dir, m_cfg.getString(WII_DOMAIN, "current_save_emunand").c_str());
|
||||
strncpy(tmpPath, fmt("/%s/%s", emu_nands_dir, m_cfg.getString(WII_DOMAIN, "current_save_emunand").c_str()), sizeof(tmpPath));
|
||||
}
|
||||
else
|
||||
{
|
||||
emuPart = m_cfg.getInt(CHANNEL_DOMAIN, "partition");
|
||||
snprintf(tmpPath, sizeof(tmpPath), "/%s/%s", emu_nands_dir, m_cfg.getString(CHANNEL_DOMAIN, "current_emunand").c_str());
|
||||
strncpy(tmpPath, fmt("/%s/%s", emu_nands_dir, m_cfg.getString(WII_DOMAIN, "current_emunand").c_str()), sizeof(tmpPath));
|
||||
}
|
||||
if(!DeviceHandle.PartitionUsableForNandEmu(emuPart))//check if device is mounted and partition is FAT
|
||||
return -1;
|
||||
|
Loading…
Reference in New Issue
Block a user