[FSS0] Add Fusee secondary storage parser

Using "fss0={sd path}" allows you to parse kips, exosphere and warmboot from a fusee secondary binary.

Exosphere and warmboot are overridable if these entries are defined after that.

Additionally any extra kip can be loaded as before via
kip1={sd path}/* for many
or
kip1={sd path} for a sigle one

Warning: Don't double load core kips like loader, pm, sm and ams_mitm. The result will be a hang.
This commit is contained in:
Kostas Missos
2019-03-08 01:14:43 +02:00
parent 4f4df9ccd1
commit f139f9c56f
4 changed files with 159 additions and 1 deletions

View File

@@ -19,6 +19,7 @@
#include "hos.h"
#include "hos_config.h"
#include "fss.h"
#include "../libs/fatfs/ff.h"
#include "../mem/heap.h"
#include "../utils/dirlist.h"
@@ -185,6 +186,11 @@ static int _config_atmosphere(launch_ctxt_t *ctxt, const char *value)
return 1;
}
static int _config_fss(launch_ctxt_t *ctxt, const char *value)
{
return parse_fss(ctxt, value);
}
typedef struct _cfg_handler_t
{
const char *key;
@@ -200,6 +206,7 @@ static const cfg_handler_t _config_handlers[] = {
{ "fullsvcperm", _config_svcperm },
{ "debugmode", _config_debugmode },
{ "atmosphere", _config_atmosphere },
{ "fss0", _config_fss },
{ NULL, NULL },
};