diff --git a/README.md b/README.md index 80f3cd1..103d09e 100755 --- a/README.md +++ b/README.md @@ -157,3 +157,4 @@ The CC3DSFS\_CFG\_DIR environment variable can be used to specify a different ta - MacOS does not allow running multiple instances of the same application, normally. If you want to run multiple instances of cc3dsfs on MacOS, open the terminal in the folder where cc3dsfs is and type `open -n cc3dsfs.app`. - To properly use the Optimize capture cards with cc3dsfs, a serial key is needed. This can be added via the _Optimize 3DS Settings_, under the _Add New Serial Key_ option. You can use CTRL+V in the textbox to copy the serial key, or insert it manually. To obtain the key, get your device ID (it can be copied from the _Optimize 3DS Settings_ menu) and type it in the [Official site](https://optimize.ath.cx/productkey_en.html). Using a keyboard to do this is suggested (but not required). - Keys are saved under the keys folder inside the cc3dsfs config folder. +- To reset to the default settings, besides the options shown in [Controls](#Controls), you can find the _Reset Settings_ option inside of the _Extra Settings_. diff --git a/include/Menus/ExtraSettingsMenu.hpp b/include/Menus/ExtraSettingsMenu.hpp index 1d67d59..ae843ea 100755 --- a/include/Menus/ExtraSettingsMenu.hpp +++ b/include/Menus/ExtraSettingsMenu.hpp @@ -15,6 +15,7 @@ enum ExtraSettingsMenuOutAction{ EXTRA_SETTINGS_MENU_FULLSCREEN, EXTRA_SETTINGS_MENU_SPLIT, EXTRA_SETTINGS_MENU_USB_CONFLICT_RESOLUTION, + EXTRA_SETTINGS_MENU_RESET_SETTINGS, }; class ExtraSettingsMenu : public OptionSelectionMenu { diff --git a/source/Menus/ExtraSettingsMenu.cpp b/source/Menus/ExtraSettingsMenu.cpp index 7eae9c6..e5dccf8 100755 --- a/source/Menus/ExtraSettingsMenu.cpp +++ b/source/Menus/ExtraSettingsMenu.cpp @@ -23,6 +23,13 @@ static const ExtraSettingsMenuOptionInfo warning_option = { .active_regular = true, .active_mono_app = true, .out_action = EXTRA_SETTINGS_MENU_NO_ACTION}; +static const ExtraSettingsMenuOptionInfo reset_to_default_option = { +.base_name = "Reset Settings", .is_selectable = true, +.active_fullscreen = true, .active_windowed_screen = true, +.active_joint_screen = true, .active_top_screen = true, .active_bottom_screen = true, +.active_regular = true, .active_mono_app = true, +.out_action = EXTRA_SETTINGS_MENU_RESET_SETTINGS}; + static const ExtraSettingsMenuOptionInfo windowed_option = { .base_name = "Windowed Mode", .is_selectable = true, .active_fullscreen = true, .active_windowed_screen = false, @@ -67,6 +74,7 @@ static const ExtraSettingsMenuOptionInfo usb_conflict_resolution_menu_option = { static const ExtraSettingsMenuOptionInfo* pollable_options[] = { &warning_option, +&reset_to_default_option, &windowed_option, &fullscreen_option, &join_screens_option, diff --git a/source/WindowScreen_Menu.cpp b/source/WindowScreen_Menu.cpp index af9db8c..a64df41 100755 --- a/source/WindowScreen_Menu.cpp +++ b/source/WindowScreen_Menu.cpp @@ -1994,6 +1994,11 @@ void WindowScreen::poll(bool do_everything) { break; case EXTRA_SETTINGS_MENU_NO_ACTION: break; + case EXTRA_SETTINGS_MENU_RESET_SETTINGS: + this->m_prepare_load = SIMPLE_RESET_DATA_INDEX; + this->setup_no_menu(); + done = true; + break; case EXTRA_SETTINGS_MENU_QUIT_APPLICATION: this->set_close(0); this->setup_no_menu();