mirror of
https://github.com/CTCaer/hekate
synced 2024-11-16 00:49:27 +00:00
emummc: Fix emupath folder and add more checks
The checks are checking if the emuMMC was found. If it didn't and error will be show.
This commit is contained in:
parent
5b91c54936
commit
7543234401
3 changed files with 28 additions and 14 deletions
|
@ -465,8 +465,11 @@ void ini_list_launcher()
|
|||
}
|
||||
}
|
||||
|
||||
if (emummc_path)
|
||||
emummc_set_path(emummc_path);
|
||||
if (emummc_path && !emummc_set_path(emummc_path))
|
||||
{
|
||||
EPRINTF("emupath is wrong!");
|
||||
goto wrong_emupath;
|
||||
}
|
||||
|
||||
if (cfg_sec && !payload_path)
|
||||
check_sept(cfg_sec);
|
||||
|
@ -497,15 +500,13 @@ void ini_list_launcher()
|
|||
}
|
||||
else if (!hos_launch(cfg_sec))
|
||||
{
|
||||
EPRINTF("Failed to launch firmware.");
|
||||
|
||||
wrong_emupath:
|
||||
EPRINTF("Failed to launch HOS.");
|
||||
if (emummc_path)
|
||||
{
|
||||
sd_mount();
|
||||
emummc_load_cfg();
|
||||
}
|
||||
|
||||
btn_wait();
|
||||
}
|
||||
|
||||
out:
|
||||
|
@ -605,8 +606,11 @@ void launch_firmware()
|
|||
}
|
||||
}
|
||||
|
||||
if (emummc_path)
|
||||
emummc_set_path(emummc_path);
|
||||
if (emummc_path && !emummc_set_path(emummc_path))
|
||||
{
|
||||
EPRINTF("emupath is wrong!");
|
||||
goto wrong_emupath;
|
||||
}
|
||||
|
||||
if (cfg_sec && !payload_path)
|
||||
check_sept(cfg_sec);
|
||||
|
@ -642,7 +646,8 @@ void launch_firmware()
|
|||
}
|
||||
else if (!hos_launch(cfg_sec))
|
||||
{
|
||||
EPRINTF("Failed to launch firmware.");
|
||||
wrong_emupath:
|
||||
EPRINTF("Failed to launch HOS.");
|
||||
if (emummc_path)
|
||||
{
|
||||
sd_mount();
|
||||
|
@ -1034,8 +1039,13 @@ skip_list:
|
|||
{
|
||||
if (b_cfg.boot_cfg & BOOT_CFG_TO_EMUMMC)
|
||||
emummc_set_path(b_cfg.emummc_path);
|
||||
else if (emummc_path)
|
||||
emummc_set_path(emummc_path);
|
||||
else if (emummc_path && !emummc_set_path(emummc_path))
|
||||
{
|
||||
gfx_con.mute = false;
|
||||
EPRINTF("emupath is wrong!");
|
||||
goto wrong_emupath;
|
||||
}
|
||||
|
||||
check_sept(cfg_sec);
|
||||
hos_launch(cfg_sec);
|
||||
|
||||
|
@ -1045,6 +1055,8 @@ skip_list:
|
|||
emummc_load_cfg();
|
||||
}
|
||||
|
||||
wrong_emupath:
|
||||
display_backlight_brightness(h_cfg.backlight, 1000);
|
||||
EPRINTF("\nFailed to launch HOS!");
|
||||
gfx_printf("\nPress any key...\n");
|
||||
msleep(500);
|
||||
|
|
|
@ -72,7 +72,7 @@ void emummc_load_cfg()
|
|||
}
|
||||
}
|
||||
|
||||
void emummc_set_path(char *path)
|
||||
bool emummc_set_path(char *path)
|
||||
{
|
||||
FIL fp;
|
||||
bool found = false;
|
||||
|
@ -105,8 +105,10 @@ void emummc_set_path(char *path)
|
|||
emu_cfg.enabled = 1;
|
||||
emu_cfg.id = 0;
|
||||
strcpy(emu_cfg.nintendo_path, path);
|
||||
strcpy(emu_cfg.nintendo_path, "/Nintendo");
|
||||
strcat(emu_cfg.nintendo_path, "/Nintendo");
|
||||
}
|
||||
|
||||
return found;
|
||||
}
|
||||
|
||||
static int emummc_raw_get_part_off(int part_idx)
|
||||
|
|
|
@ -50,7 +50,7 @@ typedef struct _emummc_cfg_t
|
|||
emummc_cfg_t emu_cfg;
|
||||
|
||||
void emummc_load_cfg();
|
||||
void emummc_set_path(char *path);
|
||||
bool emummc_set_path(char *path);
|
||||
int emummc_storage_init_mmc(sdmmc_storage_t *storage, sdmmc_t *sdmmc);
|
||||
int emummc_storage_end(sdmmc_storage_t *storage);
|
||||
int emummc_storage_read(sdmmc_storage_t *storage, u32 sector, u32 num_sectors, void *buf);
|
||||
|
|
Loading…
Reference in a new issue