Skip to content

Commit

Permalink
improve skip sony logos setting
Browse files Browse the repository at this point in the history
  • Loading branch information
JoseAaronLopezGarcia committed Feb 9, 2025
1 parent 3c13d4d commit fc2f86b
Show file tree
Hide file tree
Showing 8 changed files with 65 additions and 21 deletions.
6 changes: 3 additions & 3 deletions core/compat/pentazemin/syspatch.c
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ void AdrenalineOnModuleStart(SceModule2 * mod){
}

if(strcmp(mod->modname, "game_plugin_module") == 0) {
if (se_config->skiplogos) {
if (se_config->skiplogos == 1 || se_config->skiplogos == 2) {
patch_GameBoot(mod);
}
goto flush;
Expand All @@ -409,7 +409,7 @@ void AdrenalineOnModuleStart(SceModule2 * mod){

if (strcmp(mod->modname, "vsh_module") == 0) {
is_vsh = 1;
if (se_config->skiplogos){
if (se_config->skiplogos == 1 || se_config->skiplogos == 2){
// patch GameBoot
hookImportByNID(sceKernelFindModuleByName("sceVshBridge_Driver"), "sceDisplay_driver", 0x3552AB11, 0);
}
Expand Down Expand Up @@ -505,7 +505,7 @@ int StartModuleHandler(int modid, SceSize argsize, void * argp, int * modstatus,

SceModule2* mod = (SceModule2*) sceKernelFindModuleByUID(modid);

if ((se_config->launcher_mode||se_config->skiplogos) && mod != NULL && 0 == strcmp(mod->modname, "vsh_module") ) {
if (mod && (se_config->launcher_mode || se_config->skiplogos == 1 || se_config->skiplogos == 3) && 0 == strcmp(mod->modname, "vsh_module") ) {
u32* vshmain_args = oe_malloc(1024);

memset(vshmain_args, 0, 1024);
Expand Down
6 changes: 3 additions & 3 deletions core/compat/psp/syspatch.c
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ void PSPOnModuleStart(SceModule2 * mod){
}

if (strcmp(mod->modname, "game_plugin_module") == 0) {
if (se_config->skiplogos) {
if (se_config->skiplogos == 1 || se_config->skiplogos == 2) {
patch_GameBoot(mod);
}
goto flush;
Expand Down Expand Up @@ -315,7 +315,7 @@ void PSPOnModuleStart(SceModule2 * mod){
if (se_config->umdregion){
patch_vsh_region_check(mod);
}
if (se_config->skiplogos){
if (se_config->skiplogos == 1 || se_config->skiplogos == 2){
// patch GameBoot
hookImportByNID(sceKernelFindModuleByName("sceVshBridge_Driver"), "sceDisplay_driver", 0x3552AB11, 0);
}
Expand Down Expand Up @@ -388,7 +388,7 @@ int StartModuleHandler(int modid, SceSize argsize, void * argp, int * modstatus,

SceModule2* mod = (SceModule2*) sceKernelFindModuleByUID(modid);

if (se_config->skiplogos && mod != NULL && ark_config->launcher[0] == 0 && 0 == strcmp(mod->modname, "vsh_module") ) {
if (mod && (se_config->skiplogos == 1 || se_config->skiplogos == 3) && ark_config->launcher[0] == 0 && 0 == strcmp(mod->modname, "vsh_module") ) {
u32* vshmain_args = oe_malloc(1024);

memset(vshmain_args, 0, 1024);
Expand Down
7 changes: 6 additions & 1 deletion core/systemctrl/src/plugin.c
Original file line number Diff line number Diff line change
Expand Up @@ -506,8 +506,13 @@ static void settingsHandler(char* path, u8 enabled){
else if (strcasecmp(path, "hibblock") == 0){ // block hibernation
se_config.hibblock = enabled;
}
else if (strcasecmp(path, "skiplogos") == 0){ // skip sony logo and gameboot
else if (strncasecmp(path, "skiplogos", 12) == 0){
char* c = strchr(path, ':');
se_config.skiplogos = enabled;
if (enabled && c){
if (strcasecmp(c+1, "gameboot") == 0) se_config.skiplogos = 2;
else if (strcasecmp(c+1, "coldboot") == 0) se_config.skiplogos = 3;
}
}
else if (strcasecmp(path, "hidemac") == 0){ // hide mac address
se_config.hidemac = enabled;
Expand Down
2 changes: 1 addition & 1 deletion core/vshctrl/vshpatch.c
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ static int vshpatch_module_chain(SceModule2 *mod)

if(0 == strcmp(mod->modname, "sceVshBridge_Driver")) {

if (se_config->skiplogos){
if (se_config->skiplogos == 1 || se_config->skiplogos == 2){
patch_Gameboot(mod);
}

Expand Down
23 changes: 18 additions & 5 deletions extras/menus/arkMenu/include/ark_settings.h
Original file line number Diff line number Diff line change
Expand Up @@ -225,10 +225,10 @@ static struct {
char* options[MAX_ARK_OPTIONS];
} skiplogos = {
"Skip Sony logos in XMB",
2,
4,
0,
&(cfw_config.skiplogos),
{"Off", "On"}
{"Off", "All", "GameBoot", "ColdBoot"}
};

static struct {
Expand Down Expand Up @@ -550,7 +550,7 @@ static unsigned char* configConvert(string conf){
else if (strcasecmp(conf.c_str(), "oldplugin") == 0){
return &(cfw_config.oldplugin);
}
else if (strcasecmp(conf.c_str(), "skiplogos") == 0){
else if (strncasecmp(conf.c_str(), "skiplogos", 9) == 0){
return &(cfw_config.skiplogos);
}
else if (strcasecmp(conf.c_str(), "hidepics") == 0){
Expand Down Expand Up @@ -629,6 +629,15 @@ static void processConfig(string line, string runlevel, string conf, string enab
else if (strcasecmp(c+1, "rr") == 0) cfw_config.infernocache = 2;
}
}
else if (strncasecmp(conf.c_str(), "skiplogos", 9) == 0){
char* c = strchr(conf.c_str(), ':');
FIX_BOOLEAN(config);
cfw_config.skiplogos = config;
if (config && c){
if (strcasecmp(c+1, "gameboot") == 0) cfw_config.skiplogos = 2;
else if (strcasecmp(c+1, "coldboot") == 0) cfw_config.skiplogos = 3;
}
}
}
else {
if (strcasecmp(conf.c_str(), "overclock") == 0){
Expand Down Expand Up @@ -720,7 +729,6 @@ void loadSettings(){
FIX_BOOLEAN(cfw_config.launcher);
FIX_BOOLEAN(cfw_config.highmem);
FIX_BOOLEAN(cfw_config.disablepause);
FIX_BOOLEAN(cfw_config.skiplogos);
FIX_BOOLEAN(cfw_config.hidepics);
FIX_BOOLEAN(cfw_config.hibblock);
FIX_BOOLEAN(cfw_config.hidemac);
Expand Down Expand Up @@ -786,7 +794,12 @@ void saveSettings(){
output << processSetting("disablepause", cfw_config.disablepause) << endl;
output << processSetting("oldplugin", cfw_config.oldplugin) << endl;
output << processSetting("hibblock", cfw_config.hibblock) << endl;
output << processSetting("skiplogos", cfw_config.skiplogos) << endl;
switch (cfw_config.skiplogos){
case 0: output << processSetting("skiplogos", 0) << endl; break;
case 1: output << processSetting("skiplogos", 1) << endl; break;
case 2: output << processSetting("skiplogos:gameboot", 1) << endl; break;
case 3: output << processSetting("skiplogos:coldboot", 1) << endl; break;
}
output << processSetting("hidepics", cfw_config.hidepics) << endl;
output << processSetting("hidemac", cfw_config.hidemac) << endl;
output << processSetting("hidedlc", cfw_config.hidedlc) << endl;
Expand Down
17 changes: 12 additions & 5 deletions extras/menus/recovery/submenu.c
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,13 @@ char* ark_settings_infernocache[] = {
(char*)"RR"
};

char* ark_skiplogos_options[] = {
(char*)"Off",
(char*)"All",
(char*)"GameBoot",
(char*)"ColdBoot"
};

// PSP 1K
Setting settings_items_1k[] =
{
Expand All @@ -73,7 +80,7 @@ Setting settings_items_1k[] =
{ 2, &(config.launcher), "Autoboot Launcher", ark_settings_boolean },
{ N_OPTS, &(config.mscache), "Memory Stick Speedup", ark_settings_options },
{ 3, &(config.infernocache), "Inferno Cache", ark_settings_infernocache },
{ 2, &(config.skiplogos), "Skip Sony Logos", ark_settings_boolean },
{ 4, &(config.skiplogos), "Skip Sony Logos", ark_skiplogos_options },
{ 2, &(config.hidepics), "Hide PIC0 and PIC1", ark_settings_boolean },
{ 2, &(config.hidemac), "Hide MAC Address", ark_settings_boolean },
{ 2, &(config.hidedlc), "Hide DLC", ark_settings_boolean },
Expand All @@ -96,7 +103,7 @@ Setting settings_items_slim[] =
{ 2, &(config.highmem), "Use Extra Memory", ark_settings_boolean2 },
{ N_OPTS, &(config.mscache), "Memory Stick Speedup", ark_settings_options },
{ 3, &(config.infernocache), "Inferno Cache", ark_settings_infernocache },
{ 2, &(config.skiplogos), "Skip Sony Logos", ark_settings_boolean },
{ 4, &(config.skiplogos), "Skip Sony Logos", ark_skiplogos_options },
{ 2, &(config.hidepics), "Hide PIC0 and PIC1", ark_settings_boolean },
{ 2, &(config.hidemac), "Hide MAC Address", ark_settings_boolean },
{ 2, &(config.hidedlc), "Hide DLC", ark_settings_boolean },
Expand All @@ -122,7 +129,7 @@ Setting settings_items_go[] =
{ 2, &(config.disablepause), "Disable Pause Feature", ark_settings_boolean2 },
{ N_OPTS, &(config.oldplugin), "Old Plugin Support on ef0", ark_settings_options },
{ 2, &(config.hibblock), "Prevent hibernation deletion", ark_settings_boolean },
{ 2, &(config.skiplogos), "Skip Sony Logos", ark_settings_boolean },
{ 4, &(config.skiplogos), "Skip Sony Logos", ark_skiplogos_options },
{ 2, &(config.hidepics), "Hide PIC0 and PIC1", ark_settings_boolean },
{ 2, &(config.hidemac), "Hide MAC Address", ark_settings_boolean },
{ 2, &(config.hidedlc), "Hide DLC", ark_settings_boolean },
Expand All @@ -143,7 +150,7 @@ Setting settings_items_street[] =
{ 2, &(config.highmem), "Use Extra Memory", ark_settings_boolean2 },
{ N_OPTS, &(config.mscache), "Memory Stick Speedup", ark_settings_options },
{ 3, &(config.infernocache), "Inferno Cache", ark_settings_infernocache },
{ 2, &(config.skiplogos), "Skip Sony Logos", ark_settings_boolean },
{ 4, &(config.skiplogos), "Skip Sony Logos", ark_skiplogos_options },
{ 2, &(config.hidepics), "Hide PIC0 and PIC1", ark_settings_boolean },
{ 2, &(config.hidedlc), "Hide DLC", ark_settings_boolean },
{ N_OPTS, &(config.noled), "Turn off LEDs", ark_settings_options },
Expand All @@ -162,7 +169,7 @@ Setting settings_items_adr[] =
{ 2, &(config.highmem), "Use Extra Memory", ark_settings_boolean2 },
{ N_OPTS, &(config.mscache), "Memory Stick Speedup", ark_settings_options },
{ 3, &(config.infernocache), "Inferno Cache", ark_settings_infernocache },
{ 2, &(config.skiplogos), "Skip Sony Logos", ark_settings_boolean },
{ 4, &(config.skiplogos), "Skip Sony Logos", ark_skiplogos_options },
{ 2, &(config.hidepics), "Hide PIC0 and PIC1", ark_settings_boolean },
{ 2, &(config.hidemac), "Hide MAC Address", ark_settings_boolean },
{ 2, &(config.hidedlc), "Hide DLC", ark_settings_boolean },
Expand Down
16 changes: 14 additions & 2 deletions extras/modules/xmbctrl/config.c
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,14 @@ static int processConfigLine(char* runlevel, char* path, char* enabled){
config.oldplugin = opt;
return 1;
}
else if (strcasecmp(path, "skiplogos") == 0){
else if (strncasecmp(path, "skiplogos", 9) == 0){
char* c = strchr(path, ':');
FIX_BOOLEAN(opt);
config.skiplogos = opt;
if (opt && c){
if (strcasecmp(c+1, "gameboot") == 0) config.skiplogos = 2;
else if (strcasecmp(c+1, "coldboot") == 0) config.skiplogos = 3;
}
return 1;
}
else if (strcasecmp(path, "hidepics") == 0){
Expand Down Expand Up @@ -243,7 +249,13 @@ void saveSettings(){
processSetting(fd, line, "disablepause", config.disablepause);
processSetting(fd, line, "oldplugin", config.oldplugin);
processSetting(fd, line, "hibblock", config.hibblock);
processSetting(fd, line, "skiplogos", config.skiplogos);
//processSetting(fd, line, "skiplogos", config.skiplogos);
switch (config.skiplogos){
case 0: processSetting(fd, line, "skiplogos", 0); break;
case 1: processSetting(fd, line, "skiplogos", 1); break;
case 2: processSetting(fd, line, "skiplogos:gameboot", 1); break;
case 3: processSetting(fd, line, "skiplogos:coldboot", 1); break;
}
processSetting(fd, line, "hidepics", config.hidepics);
processSetting(fd, line, "hidemac", config.hidemac);
processSetting(fd, line, "hidedlc", config.hidedlc);
Expand Down
9 changes: 8 additions & 1 deletion extras/modules/xmbctrl/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,13 @@ char* ark_clock_settings[] = {
(char*)"PowerSave"
};

char* ark_skiplogos_settings[] = {
(char*)"Off",
(char*)"All",
(char*)"GameBoot",
(char*)"ColdBoot"
};

char* ark_settings_boolean[] = {
(char*)"Off",
(char*)"On"
Expand Down Expand Up @@ -162,7 +169,7 @@ struct {
{2, ark_settings_boolean2}, // Disable Go Pause
{N_OPTS, ark_settings_options}, // Old Plugins on ef0
{2, ark_settings_boolean}, // Prevent hib delete
{2, ark_settings_boolean}, // Skip Sony logos
{4, ark_skiplogos_settings}, // Skip Sony logos
{2, ark_settings_boolean}, // Hide PIC0 and PIC1
{2, ark_settings_boolean}, // Hide MAC
{2, ark_settings_boolean}, // Hide DLC
Expand Down

0 comments on commit fc2f86b

Please sign in to comment.