diff --git a/intl/msg_hash_lbl.h b/intl/msg_hash_lbl.h index 4444ac9ec3..218d75b180 100644 --- a/intl/msg_hash_lbl.h +++ b/intl/msg_hash_lbl.h @@ -909,6 +909,14 @@ MSG_HASH(MENU_ENUM_LABEL_SORT_SAVEFILES_ENABLE, "sort_savefiles_enable") MSG_HASH(MENU_ENUM_LABEL_SORT_SAVESTATES_ENABLE, "sort_savestates_enable") +MSG_HASH(MENU_ENUM_LABEL_SAVEFILES_IN_CONTENT_DIR_ENABLE, + "savefiles_in_content_dir_enable") +MSG_HASH(MENU_ENUM_LABEL_SAVESTATES_IN_CONTENT_DIR_ENABLE, + "savestates_in_content_dir_enable") +MSG_HASH(MENU_ENUM_LABEL_SYSTEMFILES_IN_CONTENT_DIR_ENABLE, + "systemfiles_in_content_dir_enable") +MSG_HASH(MENU_ENUM_LABEL_SCREENSHOTS_IN_CONTENT_DIR_ENABLE, + "screenshots_in_content_dir_enable") MSG_HASH(MENU_ENUM_LABEL_SSH_ENABLE, "ssh_enable") MSG_HASH(MENU_ENUM_LABEL_START_CORE, diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index c14eb00878..9d56b867a9 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -1323,6 +1323,14 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_SORT_SAVEFILES_ENABLE, "Sort Saves In Folders") MSG_HASH(MENU_ENUM_LABEL_VALUE_SORT_SAVESTATES_ENABLE, "Sort Savestates In Folders") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SAVESTATES_IN_CONTENT_DIR_ENABLE, + "Write Savestates to Content Dir") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SAVEFILES_IN_CONTENT_DIR_ENABLE, + "Write Saves to Content Dir") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SYSTEMFILES_IN_CONTENT_DIR_ENABLE, + "System Files are in Content Dir") +MSG_HASH(MENU_ENUM_LABEL_VALUE_SCREENSHOTS_IN_CONTENT_DIR_ENABLE, + "Write Screenshots to Content Dir") MSG_HASH(MENU_ENUM_LABEL_VALUE_SSH_ENABLE, "SSH Enable") MSG_HASH(MENU_ENUM_LABEL_VALUE_START_CORE, diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index c5c3121493..c8bdada29f 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -4880,6 +4880,18 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data) menu_displaylist_parse_settings_enum(menu, info, MENU_ENUM_LABEL_SAVESTATE_THUMBNAIL_ENABLE, PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_SAVEFILES_IN_CONTENT_DIR_ENABLE, + PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_SAVESTATES_IN_CONTENT_DIR_ENABLE, + PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_SYSTEMFILES_IN_CONTENT_DIR_ENABLE, + PARSE_ONLY_BOOL, false); + menu_displaylist_parse_settings_enum(menu, info, + MENU_ENUM_LABEL_SCREENSHOTS_IN_CONTENT_DIR_ENABLE, + PARSE_ONLY_BOOL, false); info->need_refresh = true; info->need_push = true; diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 692c6b3543..3302aed629 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -3048,7 +3048,7 @@ static bool setting_append_list( case SETTINGS_LIST_SAVING: { unsigned i; - struct bool_entry bool_entries[7]; + struct bool_entry bool_entries[11]; START_GROUP(list, list_info, &group_info, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS), parent_group); parent_group = msg_hash_to_str(MENU_ENUM_LABEL_SAVING_SETTINGS); @@ -3098,6 +3098,30 @@ static bool setting_append_list( bool_entries[6].default_value = savestate_thumbnail_enable; bool_entries[6].flags = SD_FLAG_ADVANCED; + bool_entries[7].target = &settings->bools.savefiles_in_content_dir; + bool_entries[7].name_enum_idx = MENU_ENUM_LABEL_SAVEFILES_IN_CONTENT_DIR_ENABLE; + bool_entries[7].SHORT_enum_idx = MENU_ENUM_LABEL_VALUE_SAVEFILES_IN_CONTENT_DIR_ENABLE; + bool_entries[7].default_value = default_savefiles_in_content_dir; + bool_entries[7].flags = SD_FLAG_ADVANCED; + + bool_entries[8].target = &settings->bools.savestates_in_content_dir; + bool_entries[8].name_enum_idx = MENU_ENUM_LABEL_SAVESTATES_IN_CONTENT_DIR_ENABLE; + bool_entries[8].SHORT_enum_idx = MENU_ENUM_LABEL_VALUE_SAVESTATES_IN_CONTENT_DIR_ENABLE; + bool_entries[8].default_value = default_savestates_in_content_dir; + bool_entries[8].flags = SD_FLAG_ADVANCED; + + bool_entries[9].target = &settings->bools.systemfiles_in_content_dir; + bool_entries[9].name_enum_idx = MENU_ENUM_LABEL_SYSTEMFILES_IN_CONTENT_DIR_ENABLE; + bool_entries[9].SHORT_enum_idx = MENU_ENUM_LABEL_VALUE_SYSTEMFILES_IN_CONTENT_DIR_ENABLE; + bool_entries[9].default_value = default_systemfiles_in_content_dir; + bool_entries[9].flags = SD_FLAG_ADVANCED; + + bool_entries[10].target = &settings->bools.screenshots_in_content_dir; + bool_entries[10].name_enum_idx = MENU_ENUM_LABEL_SCREENSHOTS_IN_CONTENT_DIR_ENABLE; + bool_entries[10].SHORT_enum_idx = MENU_ENUM_LABEL_VALUE_SCREENSHOTS_IN_CONTENT_DIR_ENABLE; + bool_entries[10].default_value = default_screenshots_in_content_dir; + bool_entries[10].flags = SD_FLAG_ADVANCED; + for (i = 0; i < ARRAY_SIZE(bool_entries); i++) { CONFIG_BOOL( diff --git a/msg_hash.h b/msg_hash.h index 39660d6006..3d5d7343a8 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -1067,6 +1067,10 @@ enum msg_hash_enums MENU_LABEL(NETPLAY_NAT_TRAVERSAL), MENU_LABEL(SORT_SAVEFILES_ENABLE), MENU_LABEL(SORT_SAVESTATES_ENABLE), + MENU_LABEL(SAVEFILES_IN_CONTENT_DIR_ENABLE), + MENU_LABEL(SAVESTATES_IN_CONTENT_DIR_ENABLE), + MENU_LABEL(SYSTEMFILES_IN_CONTENT_DIR_ENABLE), + MENU_LABEL(SCREENSHOTS_IN_CONTENT_DIR_ENABLE), MENU_LABEL(NETPLAY_IP_ADDRESS), MENU_LABEL(NETPLAY_PASSWORD), MENU_LABEL(NETPLAY_SPECTATE_PASSWORD),