Skip to content

Commit

Permalink
Initial implementation of resetting ARK Settings to default values. T…
Browse files Browse the repository at this point in the history
…ranslations will be next
  • Loading branch information
krazynez committed Jul 22, 2024
1 parent 6d4a99a commit a2ffbc4
Show file tree
Hide file tree
Showing 6 changed files with 34 additions and 0 deletions.
2 changes: 2 additions & 0 deletions extras/menus/vshmenu/advanced.c
Original file line number Diff line number Diff line change
Expand Up @@ -533,6 +533,8 @@ int submenu_ctrl(u32 button_on) {
return 13; // Import Classic Plugins flag
case SUBMENU_DELETE_HIBERNATION:
return 10; // Delete Hibernation flag
case SUBMENU_RESET_ARK_SETTINGS:
return 15; // Reset ARK Settings flag
case SUBMENU_RANDOM_GAME:
return 14; // Random Game flag
case SUBMENU_ACTIVATE_FLASH_WMA:
Expand Down
26 changes: 26 additions & 0 deletions extras/menus/vshmenu/config.c
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,32 @@ void config_recreate_umd_keys(void) {
kuKernelCall(hookImport, &args);
}


void reset_ark_settings(vsh_Menu *vsh){
const char settings[] = "always, usbcharge, on\nalways, overclock, on\nalways, powersave, off\nalways, defaultclock, off\nalways, launcher, off\nalways, disablepause, off\nalways, highmem, off\nalways, mscache, on\nalways, infernocache:lru, on\nalways, oldplugin, on\nalways, skiplogos, off\nalways, hidepics, off\nalways, hibblock, on\nalways, hidemac, on\nalways, hidedlc, off\nalways, noled, off\nalways, noumd, off\nalways, noanalog, off\nalways, qaflags, on\n# Luxor doesn't like Inferno Cache\nULUS10201, infernocache, off";

char arkMenuPath[ARK_PATH_SIZE];
char arkSettingsPath[ARK_PATH_SIZE];
scePaf_strcpy(arkMenuPath, vsh->config.ark.arkpath);
scePaf_strcpy(arkSettingsPath, vsh->config.ark.arkpath);
strcat(arkMenuPath, "ARKMENU.BIN");
strcat(arkSettingsPath, "SETTINGS.TXT");
int fd = sceIoOpen(arkMenuPath, PSP_O_RDONLY, 0);
if(fd) {
sceIoClose(fd);
sceIoRemove(arkMenuPath);
sceIoRemove(arkSettingsPath);
sceKernelDelayThread(8000);
int settings_file = sceIoOpen(arkSettingsPath, PSP_O_CREAT | PSP_O_WRONLY, 0777);
sceIoWrite(settings_file, settings, sizeof(settings));
sceKernelDelayThread(8000);
sceIoClose(settings_file);

}
vsh->status.reset_vsh = 1;

}

void import_classic_plugins(vsh_Menu *vsh, int devpath) {
SceUID game, vsh_id, pops, plugins;
int i = 0;
Expand Down
1 change: 1 addition & 0 deletions extras/menus/vshmenu/include/advanced.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ enum {
SUBMENU_IMPORT_CLASSIC_PLUGINS,
SUBMENU_ACTIVATE_FLASH_WMA,
SUBMENU_DELETE_HIBERNATION,
SUBMENU_RESET_ARK_SETTINGS,
SUBMENU_RANDOM_GAME,
SUBMENU_GO_BACK,
SUBMENU_MAX
Expand Down
1 change: 1 addition & 0 deletions extras/menus/vshmenu/include/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ enum {
MSG_IMPORT_CLASSIC_PLUGINS,
MSG_ACTIVATE_FLASH_WMA,
MSG_DELETE_HIBERNATION,
MSG_RESET_ARK_SETTINGS,
MSG_RANDOM_GAME,
MSG_GO_BACK,
MSG_NO_HIBERNATION,
Expand Down
3 changes: 3 additions & 0 deletions extras/menus/vshmenu/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,9 @@ int TSRThread(SceSize args, void *argp) {
config_check(vsh);
exec_random_game(vsh);
break;
case 15:
reset_ark_settings(vsh);
break;
}

config_check(vsh);
Expand Down
1 change: 1 addition & 0 deletions extras/menus/vshmenu/trans_en.c
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ const char *g_messages_en[] = {
"IMPORT CLASSIC PLUGINS",
"ACTIVATE FLASH AND WMA",
"DELETE HIBERNATION",
"RESET ARK SETTINGS",
"BOOT RANDOM ISO",
"GO BACK",
"NO HIBERNATION SUPPORT",
Expand Down

0 comments on commit a2ffbc4

Please sign in to comment.