mirror of
https://github.com/libretro/RetroArch
synced 2025-02-06 18:40:49 +00:00
(Menu) Combine get_description functions
This commit is contained in:
parent
b02ce0ba62
commit
3dcb74ddbb
@ -54,6 +54,8 @@ static void *get_last_setting(const file_list_t *list, int index,
|
|||||||
static int menu_info_screen_iterate(unsigned action)
|
static int menu_info_screen_iterate(unsigned action)
|
||||||
{
|
{
|
||||||
char msg[PATH_MAX];
|
char msg[PATH_MAX];
|
||||||
|
char needle[PATH_MAX];
|
||||||
|
unsigned info_type = 0;
|
||||||
rarch_setting_t *current_setting = NULL;
|
rarch_setting_t *current_setting = NULL;
|
||||||
rarch_setting_t *setting_data = (rarch_setting_t *)setting_data_get_list();
|
rarch_setting_t *setting_data = (rarch_setting_t *)setting_data_get_list();
|
||||||
|
|
||||||
@ -69,25 +71,26 @@ static int menu_info_screen_iterate(unsigned action)
|
|||||||
setting_data_get_list());
|
setting_data_get_list());
|
||||||
|
|
||||||
if (current_setting)
|
if (current_setting)
|
||||||
setting_data_get_description(current_setting, msg, sizeof(msg));
|
strlcpy(needle, current_setting->name, sizeof(needle));
|
||||||
else
|
else if ((current_setting = (rarch_setting_t*)get_last_setting(
|
||||||
{
|
|
||||||
current_setting = (rarch_setting_t*)get_last_setting(
|
|
||||||
driver.menu->selection_buf,
|
driver.menu->selection_buf,
|
||||||
driver.menu->selection_ptr,
|
driver.menu->selection_ptr,
|
||||||
setting_data_get_mainmenu(true));
|
setting_data_get_mainmenu(true))))
|
||||||
|
{
|
||||||
if (current_setting)
|
strlcpy(needle, current_setting->name, sizeof(needle));
|
||||||
setting_data_get_description(current_setting, msg, sizeof(msg));
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
const char *label = NULL;
|
const char *label = NULL;
|
||||||
unsigned info_type;
|
|
||||||
file_list_get_at_offset(driver.menu->selection_buf,
|
file_list_get_at_offset(driver.menu->selection_buf,
|
||||||
driver.menu->selection_ptr, NULL, &label,
|
driver.menu->selection_ptr, NULL, &label,
|
||||||
&info_type);
|
&info_type);
|
||||||
|
|
||||||
if (menu_entries_get_description(label, msg, sizeof(msg)) == -1)
|
if (label)
|
||||||
|
strlcpy(needle, label, sizeof(needle));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (needle[0] == '\0' || setting_data_get_description(needle, msg, sizeof(msg)) == -1)
|
||||||
{
|
{
|
||||||
switch (info_type)
|
switch (info_type)
|
||||||
{
|
{
|
||||||
@ -288,8 +291,6 @@ static int menu_info_screen_iterate(unsigned action)
|
|||||||
"-- No info on this item available. --\n");
|
"-- No info on this item available. --\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (driver.video_data && driver.menu_ctx &&
|
if (driver.video_data && driver.menu_ctx &&
|
||||||
driver.menu_ctx->render_messagebox)
|
driver.menu_ctx->render_messagebox)
|
||||||
|
@ -854,141 +854,3 @@ void menu_entries_push(file_list_t *list,
|
|||||||
menu_clear_navigation(driver.menu);
|
menu_clear_navigation(driver.menu);
|
||||||
driver.menu->need_refresh = true;
|
driver.menu->need_refresh = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
int menu_entries_get_description(const char *label,
|
|
||||||
char *msg, size_t sizeof_msg)
|
|
||||||
{
|
|
||||||
if (!strcmp(label, "shader_apply_changes"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
" -- Apply Shader Changes. \n"
|
|
||||||
" \n"
|
|
||||||
"After changing shader settings, use this to \n"
|
|
||||||
"apply changes. \n"
|
|
||||||
" \n"
|
|
||||||
"Changing shader settings is a somewhat \n"
|
|
||||||
"expensive operation so it has to be \n"
|
|
||||||
"done explicitly. \n"
|
|
||||||
" \n"
|
|
||||||
"When you apply shaders, the menu shader \n"
|
|
||||||
"settings are saved to a temporary file (either \n"
|
|
||||||
"menu.cgp or menu.glslp) and loaded. The file \n"
|
|
||||||
"persists after RetroArch exits. The file is \n"
|
|
||||||
"saved to Shader Directory."
|
|
||||||
);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_preset"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
" -- Load Shader Preset. \n"
|
|
||||||
" \n"
|
|
||||||
" Load a "
|
|
||||||
#ifdef HAVE_CG
|
|
||||||
"Cg"
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_GLSL
|
|
||||||
#ifdef HAVE_CG
|
|
||||||
"/"
|
|
||||||
#endif
|
|
||||||
"GLSL"
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_HLSL
|
|
||||||
#if defined(HAVE_CG) || defined(HAVE_HLSL)
|
|
||||||
"/"
|
|
||||||
#endif
|
|
||||||
"HLSL"
|
|
||||||
#endif
|
|
||||||
" preset directly. \n"
|
|
||||||
"The menu shader menu is updated accordingly. \n"
|
|
||||||
" \n"
|
|
||||||
"If the CGP uses scaling methods which are not \n"
|
|
||||||
"simple, (i.e. source scaling, same scaling \n"
|
|
||||||
"factor for X/Y), the scaling factor displayed \n"
|
|
||||||
"in the menu might not be correct."
|
|
||||||
);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_num_passes"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
" -- Shader Passes. \n"
|
|
||||||
" \n"
|
|
||||||
"RetroArch allows you to mix and match various \n"
|
|
||||||
"shaders with arbitrary shader passes, with \n"
|
|
||||||
"custom hardware filters and scale factors. \n"
|
|
||||||
" \n"
|
|
||||||
"This option specifies the number of shader \n"
|
|
||||||
"passes to use. If you set this to 0, and use \n"
|
|
||||||
"Apply Shader Changes, you use a 'blank' shader. \n"
|
|
||||||
" \n"
|
|
||||||
"The Default Filter option will affect the \n"
|
|
||||||
"stretching filter.");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_parameters"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
"-- Shader Parameters. \n"
|
|
||||||
" \n"
|
|
||||||
"Modifies current shader directly. Will not be \n"
|
|
||||||
"saved to CGP/GLSLP preset file.");
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_preset_parameters"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
"-- Shader Preset Parameters. \n"
|
|
||||||
" \n"
|
|
||||||
"Modifies shader preset currently in menu."
|
|
||||||
);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_pass"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
" -- Path to shader. \n"
|
|
||||||
" \n"
|
|
||||||
"All shaders must be of the same \n"
|
|
||||||
"type (i.e. CG, GLSL or HLSL). \n"
|
|
||||||
" \n"
|
|
||||||
"Set Shader Directory to set where \n"
|
|
||||||
"the browser starts to look for \n"
|
|
||||||
"shaders."
|
|
||||||
);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_filter_pass"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
" -- Hardware filter for this pass. \n"
|
|
||||||
" \n"
|
|
||||||
"If 'Don't Care' is set, 'Default \n"
|
|
||||||
"Filter' will be used."
|
|
||||||
);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
else if (!strcmp(label, "video_shader_scale_pass"))
|
|
||||||
{
|
|
||||||
snprintf(msg, sizeof_msg,
|
|
||||||
" -- Scale for this pass. \n"
|
|
||||||
" \n"
|
|
||||||
"The scale factor accumulates, i.e. 2x \n"
|
|
||||||
"for first pass and 2x for second pass \n"
|
|
||||||
"will give you a 4x total scale. \n"
|
|
||||||
" \n"
|
|
||||||
"If there is a scale factor for last \n"
|
|
||||||
"pass, the result is stretched to \n"
|
|
||||||
"screen with the filter specified in \n"
|
|
||||||
"'Default Filter'. \n"
|
|
||||||
" \n"
|
|
||||||
"If 'Don't Care' is set, either 1x \n"
|
|
||||||
"scale or stretch to fullscreen will \n"
|
|
||||||
"be used depending if it's not the last \n"
|
|
||||||
"pass or not."
|
|
||||||
);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
@ -38,7 +38,4 @@ void menu_entries_pop(file_list_t *list);
|
|||||||
void menu_flush_stack_type(file_list_t *list, unsigned final_type);
|
void menu_flush_stack_type(file_list_t *list, unsigned final_type);
|
||||||
void menu_flush_stack_label(file_list_t *list, const char *needle);
|
void menu_flush_stack_label(file_list_t *list, const char *needle);
|
||||||
|
|
||||||
int menu_entries_get_description(const char *label, char *msg,
|
|
||||||
size_t sizeof_msg);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
394
settings_data.c
394
settings_data.c
@ -612,15 +612,10 @@ rarch_setting_t setting_data_bind_setting(const char* name,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
void setting_data_get_description(const void *data, char *msg,
|
int setting_data_get_description(const char *label, char *msg,
|
||||||
size_t sizeof_msg)
|
size_t sizeof_msg)
|
||||||
{
|
{
|
||||||
const rarch_setting_t *setting = (const rarch_setting_t*)data;
|
if (!strcmp(label, "input_driver"))
|
||||||
|
|
||||||
if (!setting)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (!strcmp(setting->name, "input_driver"))
|
|
||||||
{
|
{
|
||||||
if (!strcmp(g_settings.input.driver, "udev"))
|
if (!strcmp(g_settings.input.driver, "udev"))
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
@ -658,8 +653,11 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
"Depending on video driver, it might \n"
|
"Depending on video driver, it might \n"
|
||||||
"force a different input driver.");
|
"force a different input driver.");
|
||||||
|
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
else if (!strcmp(setting->name, "load_content"))
|
else if (!strcmp(label, "load_content"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Load Content. \n"
|
" -- Load Content. \n"
|
||||||
"Browse for content. \n"
|
"Browse for content. \n"
|
||||||
@ -678,7 +676,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"in 'Core', and use that core when \n"
|
"in 'Core', and use that core when \n"
|
||||||
"content is loaded."
|
"content is loaded."
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "core_list"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "core_list"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Core Selection. \n"
|
" -- Core Selection. \n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -691,7 +692,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"will use that as top folder. If Core \n"
|
"will use that as top folder. If Core \n"
|
||||||
"Directory is a full path, it will start \n"
|
"Directory is a full path, it will start \n"
|
||||||
"in the folder where the file is.");
|
"in the folder where the file is.");
|
||||||
else if (!strcmp(setting->name, "history_list"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "history_list"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Loading content from history. \n"
|
" -- Loading content from history. \n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -704,7 +708,9 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"will not be saved or loaded, and will not exist \n"
|
"will not be saved or loaded, and will not exist \n"
|
||||||
"in the main menu."
|
"in the main menu."
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "audio_resampler_driver"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "audio_resampler_driver"))
|
||||||
{
|
{
|
||||||
if (!strcmp(g_settings.audio.resampler, "sinc"))
|
if (!strcmp(g_settings.audio.resampler, "sinc"))
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
@ -712,8 +718,9 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
else if (!strcmp(g_settings.audio.resampler, "CC"))
|
else if (!strcmp(g_settings.audio.resampler, "CC"))
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Convoluted Cosine implementation.");
|
" -- Convoluted Cosine implementation.");
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
else if (!strcmp(setting->name, "video_driver"))
|
else if (!strcmp(label, "video_driver"))
|
||||||
{
|
{
|
||||||
if (!strcmp(g_settings.video.driver, "gl"))
|
if (!strcmp(g_settings.video.driver, "gl"))
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
@ -766,24 +773,35 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
else
|
else
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Current Video driver.");
|
" -- Current Video driver.");
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
else if (!strcmp(setting->name, "audio_dsp_plugin"))
|
else if (!strcmp(label, "audio_dsp_plugin"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Audio DSP plugin.\n"
|
" -- Audio DSP plugin.\n"
|
||||||
" Processes audio before it's sent to \n"
|
" Processes audio before it's sent to \n"
|
||||||
"the driver."
|
"the driver."
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "libretro_dir_path"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "libretro_dir_path"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Core Directory. \n"
|
" -- Core Directory. \n"
|
||||||
" \n"
|
" \n"
|
||||||
"A directory for where to search for \n"
|
"A directory for where to search for \n"
|
||||||
"libretro core implementations.");
|
"libretro core implementations.");
|
||||||
else if (!strcmp(setting->name, "video_disable_composition"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_disable_composition"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
"-- Forcibly disable composition.\n"
|
"-- Forcibly disable composition.\n"
|
||||||
"Only valid on Windows Vista/7 for now.");
|
"Only valid on Windows Vista/7 for now.");
|
||||||
else if (!strcmp(setting->name, "libretro_log_level"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "libretro_log_level"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
"-- Sets log level for libretro cores \n"
|
"-- Sets log level for libretro cores \n"
|
||||||
"(GET_LOG_INTERFACE). \n"
|
"(GET_LOG_INTERFACE). \n"
|
||||||
@ -800,15 +818,24 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" WARN = 2\n"
|
" WARN = 2\n"
|
||||||
" ERROR = 3"
|
" ERROR = 3"
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "log_verbosity"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "log_verbosity"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
"-- Enable or disable verbosity level \n"
|
"-- Enable or disable verbosity level \n"
|
||||||
"of frontend.");
|
"of frontend.");
|
||||||
else if (!strcmp(setting->name, "perfcnt_enable"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "perfcnt_enable"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
"-- Enable or disable frontend \n"
|
"-- Enable or disable frontend \n"
|
||||||
"performance counters.");
|
"performance counters.");
|
||||||
else if (!strcmp(setting->name, "system_directory"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "system_directory"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
"-- System Directory. \n"
|
"-- System Directory. \n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -816,7 +843,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"Implementations can query for this\n"
|
"Implementations can query for this\n"
|
||||||
"directory to load BIOSes, \n"
|
"directory to load BIOSes, \n"
|
||||||
"system-specific configs, etc.");
|
"system-specific configs, etc.");
|
||||||
else if (!strcmp(setting->name, "rgui_show_start_screen"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "rgui_show_start_screen"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Show startup screen in menu.\n"
|
" -- Show startup screen in menu.\n"
|
||||||
"Is automatically set to false when seen\n"
|
"Is automatically set to false when seen\n"
|
||||||
@ -824,7 +854,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
"This is only updated in config if\n"
|
"This is only updated in config if\n"
|
||||||
"'Config Save On Exit' is set to true.\n");
|
"'Config Save On Exit' is set to true.\n");
|
||||||
else if (!strcmp(setting->name, "config_save_on_exit"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "config_save_on_exit"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Flushes config to disk on exit.\n"
|
" -- Flushes config to disk on exit.\n"
|
||||||
"Useful for menu as settings can be\n"
|
"Useful for menu as settings can be\n"
|
||||||
@ -845,27 +878,42 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"manually isn't really an option."
|
"manually isn't really an option."
|
||||||
#endif
|
#endif
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "core_specific_config"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "core_specific_config"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Load up a specific config file \n"
|
" -- Load up a specific config file \n"
|
||||||
"based on the core being used.\n");
|
"based on the core being used.\n");
|
||||||
else if (!strcmp(setting->name, "video_scale"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_scale"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Fullscreen resolution.\n"
|
" -- Fullscreen resolution.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Resolution of 0 uses the \n"
|
"Resolution of 0 uses the \n"
|
||||||
"resolution of the environment.\n");
|
"resolution of the environment.\n");
|
||||||
else if (!strcmp(setting->name, "video_vsync"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_vsync"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Video V-Sync.\n");
|
" -- Video V-Sync.\n");
|
||||||
else if (!strcmp(setting->name, "video_hard_sync"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_hard_sync"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Attempts to hard-synchronize \n"
|
" -- Attempts to hard-synchronize \n"
|
||||||
"CPU and GPU.\n"
|
"CPU and GPU.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Can reduce latency at cost of \n"
|
"Can reduce latency at cost of \n"
|
||||||
"performance.");
|
"performance.");
|
||||||
else if (!strcmp(setting->name, "video_hard_sync_frames"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_hard_sync_frames"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Sets how many frames CPU can \n"
|
" -- Sets how many frames CPU can \n"
|
||||||
"run ahead of GPU when using 'GPU \n"
|
"run ahead of GPU when using 'GPU \n"
|
||||||
@ -876,7 +924,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" 0: Syncs to GPU immediately.\n"
|
" 0: Syncs to GPU immediately.\n"
|
||||||
" 1: Syncs to previous frame.\n"
|
" 1: Syncs to previous frame.\n"
|
||||||
" 2: Etc ...");
|
" 2: Etc ...");
|
||||||
else if (!strcmp(setting->name, "video_frame_delay"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_frame_delay"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Sets how many milliseconds to delay\n"
|
" -- Sets how many milliseconds to delay\n"
|
||||||
"after VSync before running the core.\n"
|
"after VSync before running the core.\n"
|
||||||
@ -885,7 +936,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"higher risk of stuttering.\n"
|
"higher risk of stuttering.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Maximum is 15.");
|
"Maximum is 15.");
|
||||||
else if (!strcmp(setting->name, "audio_rate_control_delta"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "audio_rate_control_delta"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Audio rate control.\n"
|
" -- Audio rate control.\n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -898,7 +952,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
" Input rate is defined as: \n"
|
" Input rate is defined as: \n"
|
||||||
" input rate * (1.0 +/- (rate control delta))");
|
" input rate * (1.0 +/- (rate control delta))");
|
||||||
else if (!strcmp(setting->name, "video_filter"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_filter"))
|
||||||
|
{
|
||||||
#ifdef HAVE_FILTERS_BUILTIN
|
#ifdef HAVE_FILTERS_BUILTIN
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- CPU-based video filter.");
|
" -- CPU-based video filter.");
|
||||||
@ -908,9 +965,15 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
"Path to a dynamic library.");
|
"Path to a dynamic library.");
|
||||||
#endif
|
#endif
|
||||||
else if (!strcmp(setting->name, "video_fullscreen"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_fullscreen"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg, " -- Toggles fullscreen.");
|
snprintf(msg, sizeof_msg, " -- Toggles fullscreen.");
|
||||||
else if (!strcmp(setting->name, "audio_device"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "audio_device"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Override the default audio device \n"
|
" -- Override the default audio device \n"
|
||||||
"the audio driver uses.\n"
|
"the audio driver uses.\n"
|
||||||
@ -934,7 +997,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"server."
|
"server."
|
||||||
#endif
|
#endif
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "video_black_frame_insertion"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_black_frame_insertion"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Inserts a black frame inbetween \n"
|
" -- Inserts a black frame inbetween \n"
|
||||||
"frames.\n"
|
"frames.\n"
|
||||||
@ -946,14 +1012,20 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"Video refresh rate should still be \n"
|
"Video refresh rate should still be \n"
|
||||||
"configured as if it is a 60 Hz monitor \n"
|
"configured as if it is a 60 Hz monitor \n"
|
||||||
"(divide refresh rate by 2).");
|
"(divide refresh rate by 2).");
|
||||||
else if (!strcmp(setting->name, "video_threaded"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_threaded"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Use threaded video driver.\n"
|
" -- Use threaded video driver.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Using this might improve performance at \n"
|
"Using this might improve performance at \n"
|
||||||
"possible cost of latency and more video \n"
|
"possible cost of latency and more video \n"
|
||||||
"stuttering.");
|
"stuttering.");
|
||||||
else if (!strcmp(setting->name, "video_scale_integer"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_scale_integer"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Only scales video in integer \n"
|
" -- Only scales video in integer \n"
|
||||||
"steps.\n"
|
"steps.\n"
|
||||||
@ -963,14 +1035,20 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
"If Force Aspect is not set, X/Y will be \n"
|
"If Force Aspect is not set, X/Y will be \n"
|
||||||
"integer scaled independently.");
|
"integer scaled independently.");
|
||||||
else if (!strcmp(setting->name, "video_crop_overscan"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_crop_overscan"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Forces cropping of overscanned \n"
|
" -- Forces cropping of overscanned \n"
|
||||||
"frames.\n"
|
"frames.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Exact behavior of this option is \n"
|
"Exact behavior of this option is \n"
|
||||||
"core-implementation specific.");
|
"core-implementation specific.");
|
||||||
else if (!strcmp(setting->name, "video_monitor_index"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_monitor_index"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Which monitor to prefer.\n"
|
" -- Which monitor to prefer.\n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -978,7 +1056,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"is preferred, 1 and up (1 being first \n"
|
"is preferred, 1 and up (1 being first \n"
|
||||||
"monitor), suggests RetroArch to use that \n"
|
"monitor), suggests RetroArch to use that \n"
|
||||||
"particular monitor.");
|
"particular monitor.");
|
||||||
else if (!strcmp(setting->name, "video_rotation"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_rotation"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Forces a certain rotation \n"
|
" -- Forces a certain rotation \n"
|
||||||
"of the screen.\n"
|
"of the screen.\n"
|
||||||
@ -986,20 +1067,29 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"The rotation is added to rotations which\n"
|
"The rotation is added to rotations which\n"
|
||||||
"the libretro core sets (see Video Allow\n"
|
"the libretro core sets (see Video Allow\n"
|
||||||
"Rotate).");
|
"Rotate).");
|
||||||
else if (!strcmp(setting->name, "audio_volume"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "audio_volume"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Audio volume, expressed in dB.\n"
|
" -- Audio volume, expressed in dB.\n"
|
||||||
" \n"
|
" \n"
|
||||||
" 0 dB is normal volume. No gain will be applied.\n"
|
" 0 dB is normal volume. No gain will be applied.\n"
|
||||||
"Gain can be controlled in runtime with Input\n"
|
"Gain can be controlled in runtime with Input\n"
|
||||||
"Volume Up / Input Volume Down.");
|
"Volume Up / Input Volume Down.");
|
||||||
else if (!strcmp(setting->name, "block_sram_overwrite"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "block_sram_overwrite"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Block SRAM from being overwritten \n"
|
" -- Block SRAM from being overwritten \n"
|
||||||
"when loading save states.\n"
|
"when loading save states.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Might potentially lead to buggy games.");
|
"Might potentially lead to buggy games.");
|
||||||
else if (!strcmp(setting->name, "fastforward_ratio"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "fastforward_ratio"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Fastforward ratio."
|
" -- Fastforward ratio."
|
||||||
" \n"
|
" \n"
|
||||||
@ -1013,15 +1103,24 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"the maximum rate will not be exceeded.\n"
|
"the maximum rate will not be exceeded.\n"
|
||||||
"Do not rely on this cap to be perfectly \n"
|
"Do not rely on this cap to be perfectly \n"
|
||||||
"accurate.");
|
"accurate.");
|
||||||
else if (!strcmp(setting->name, "pause_nonactive"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "pause_nonactive"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Pause gameplay when window focus \n"
|
" -- Pause gameplay when window focus \n"
|
||||||
"is lost.");
|
"is lost.");
|
||||||
else if (!strcmp(setting->name, "video_gpu_screenshot"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_gpu_screenshot"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Screenshots output of GPU shaded \n"
|
" -- Screenshots output of GPU shaded \n"
|
||||||
"material if available.");
|
"material if available.");
|
||||||
else if (!strcmp(setting->name, "autosave_interval"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "autosave_interval"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Autosaves the non-volatile SRAM \n"
|
" -- Autosaves the non-volatile SRAM \n"
|
||||||
"at a regular interval.\n"
|
"at a regular interval.\n"
|
||||||
@ -1031,19 +1130,28 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"seconds. \n"
|
"seconds. \n"
|
||||||
" \n"
|
" \n"
|
||||||
"A value of 0 disables autosave.");
|
"A value of 0 disables autosave.");
|
||||||
else if (!strcmp(setting->name, "screenshot_directory"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "screenshot_directory"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Screenshot Directory. \n"
|
" -- Screenshot Directory. \n"
|
||||||
" \n"
|
" \n"
|
||||||
"Directory to dump screenshots to."
|
"Directory to dump screenshots to."
|
||||||
);
|
);
|
||||||
else if (!strcmp(setting->name, "video_swap_interval"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_swap_interval"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- VSync Swap Interval.\n"
|
" -- VSync Swap Interval.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Uses a custom swap interval for VSync. Set this \n"
|
"Uses a custom swap interval for VSync. Set this \n"
|
||||||
"to effectively halve monitor refresh rate.");
|
"to effectively halve monitor refresh rate.");
|
||||||
else if (!strcmp(setting->name, "video_refresh_rate_auto"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_refresh_rate_auto"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Refresh Rate Auto.\n"
|
" -- Refresh Rate Auto.\n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -1062,7 +1170,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"large pitch changes. If your monitor does \n"
|
"large pitch changes. If your monitor does \n"
|
||||||
"not run at 60Hz, or something close to it, \n"
|
"not run at 60Hz, or something close to it, \n"
|
||||||
"disable VSync, and leave this at its default.");
|
"disable VSync, and leave this at its default.");
|
||||||
else if (!strcmp(setting->name, "savefile_directory"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "savefile_directory"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Savefile Directory. \n"
|
" -- Savefile Directory. \n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -1072,7 +1183,10 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
"This will be overridden by explicit command line\n"
|
"This will be overridden by explicit command line\n"
|
||||||
"options.");
|
"options.");
|
||||||
else if (!strcmp(setting->name, "savestate_directory"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "savestate_directory"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Savestate Directory. \n"
|
" -- Savestate Directory. \n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -1081,25 +1195,37 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
" \n"
|
" \n"
|
||||||
"This will be overridden by explicit command line\n"
|
"This will be overridden by explicit command line\n"
|
||||||
"options.");
|
"options.");
|
||||||
else if (!strcmp(setting->name, "assets_directory"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "assets_directory"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Assets Directory. \n"
|
" -- Assets Directory. \n"
|
||||||
" \n"
|
" \n"
|
||||||
" This location is queried by default when \n"
|
" This location is queried by default when \n"
|
||||||
"menu interfaces try to look for loadable \n"
|
"menu interfaces try to look for loadable \n"
|
||||||
"assets, etc.");
|
"assets, etc.");
|
||||||
else if (!strcmp(setting->name, "slowmotion_ratio"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "slowmotion_ratio"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Slowmotion ratio."
|
" -- Slowmotion ratio."
|
||||||
" \n"
|
" \n"
|
||||||
"When slowmotion, content will slow\n"
|
"When slowmotion, content will slow\n"
|
||||||
"down by factor.");
|
"down by factor.");
|
||||||
else if (!strcmp(setting->name, "input_axis_threshold"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "input_axis_threshold"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Defines axis threshold.\n"
|
" -- Defines axis threshold.\n"
|
||||||
" \n"
|
" \n"
|
||||||
" Possible values are [0.0, 1.0].");
|
" Possible values are [0.0, 1.0].");
|
||||||
else if (!strcmp(setting->name, "rewind_granularity"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "rewind_granularity"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Rewind granularity.\n"
|
" -- Rewind granularity.\n"
|
||||||
" \n"
|
" \n"
|
||||||
@ -1107,27 +1233,42 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"frames, you can rewind several frames \n"
|
"frames, you can rewind several frames \n"
|
||||||
"at a time, increasing the rewinding \n"
|
"at a time, increasing the rewinding \n"
|
||||||
"speed.");
|
"speed.");
|
||||||
else if (!strcmp(setting->name, "rewind_enable"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "rewind_enable"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Enable rewinding.\n"
|
" -- Enable rewinding.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"This will take a performance hit, \n"
|
"This will take a performance hit, \n"
|
||||||
"so it is disabled by default.");
|
"so it is disabled by default.");
|
||||||
else if (!strcmp(setting->name, "input_autodetect_enable"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "input_autodetect_enable"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Enable input auto-detection.\n"
|
" -- Enable input auto-detection.\n"
|
||||||
" \n"
|
" \n"
|
||||||
"Will attempt to auto-configure \n"
|
"Will attempt to auto-configure \n"
|
||||||
"joypads, Plug-and-Play style.");
|
"joypads, Plug-and-Play style.");
|
||||||
else if (!strcmp(setting->name, "camera_allow"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "camera_allow"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Allow or disallow camera access by \n"
|
" -- Allow or disallow camera access by \n"
|
||||||
"cores.");
|
"cores.");
|
||||||
else if (!strcmp(setting->name, "location_allow"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "location_allow"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Allow or disallow location services \n"
|
" -- Allow or disallow location services \n"
|
||||||
"access by cores.");
|
"access by cores.");
|
||||||
else if (!strcmp(setting->name, "savestate_auto_save"))
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "savestate_auto_save"))
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
" -- Automatically saves a savestate at the \n"
|
" -- Automatically saves a savestate at the \n"
|
||||||
"end of RetroArch's lifetime.\n"
|
"end of RetroArch's lifetime.\n"
|
||||||
@ -1135,9 +1276,148 @@ void setting_data_get_description(const void *data, char *msg,
|
|||||||
"RetroArch will automatically load any savestate\n"
|
"RetroArch will automatically load any savestate\n"
|
||||||
"with this path on startup if 'Savestate Auto\n"
|
"with this path on startup if 'Savestate Auto\n"
|
||||||
"Load' is set.");
|
"Load' is set.");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "shader_apply_changes"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Apply Shader Changes. \n"
|
||||||
|
" \n"
|
||||||
|
"After changing shader settings, use this to \n"
|
||||||
|
"apply changes. \n"
|
||||||
|
" \n"
|
||||||
|
"Changing shader settings is a somewhat \n"
|
||||||
|
"expensive operation so it has to be \n"
|
||||||
|
"done explicitly. \n"
|
||||||
|
" \n"
|
||||||
|
"When you apply shaders, the menu shader \n"
|
||||||
|
"settings are saved to a temporary file (either \n"
|
||||||
|
"menu.cgp or menu.glslp) and loaded. The file \n"
|
||||||
|
"persists after RetroArch exits. The file is \n"
|
||||||
|
"saved to Shader Directory."
|
||||||
|
);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_preset"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Load Shader Preset. \n"
|
||||||
|
" \n"
|
||||||
|
" Load a "
|
||||||
|
#ifdef HAVE_CG
|
||||||
|
"Cg"
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_GLSL
|
||||||
|
#ifdef HAVE_CG
|
||||||
|
"/"
|
||||||
|
#endif
|
||||||
|
"GLSL"
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_HLSL
|
||||||
|
#if defined(HAVE_CG) || defined(HAVE_HLSL)
|
||||||
|
"/"
|
||||||
|
#endif
|
||||||
|
"HLSL"
|
||||||
|
#endif
|
||||||
|
" preset directly. \n"
|
||||||
|
"The menu shader menu is updated accordingly. \n"
|
||||||
|
" \n"
|
||||||
|
"If the CGP uses scaling methods which are not \n"
|
||||||
|
"simple, (i.e. source scaling, same scaling \n"
|
||||||
|
"factor for X/Y), the scaling factor displayed \n"
|
||||||
|
"in the menu might not be correct."
|
||||||
|
);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_num_passes"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Shader Passes. \n"
|
||||||
|
" \n"
|
||||||
|
"RetroArch allows you to mix and match various \n"
|
||||||
|
"shaders with arbitrary shader passes, with \n"
|
||||||
|
"custom hardware filters and scale factors. \n"
|
||||||
|
" \n"
|
||||||
|
"This option specifies the number of shader \n"
|
||||||
|
"passes to use. If you set this to 0, and use \n"
|
||||||
|
"Apply Shader Changes, you use a 'blank' shader. \n"
|
||||||
|
" \n"
|
||||||
|
"The Default Filter option will affect the \n"
|
||||||
|
"stretching filter.");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_parameters"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- Shader Parameters. \n"
|
||||||
|
" \n"
|
||||||
|
"Modifies current shader directly. Will not be \n"
|
||||||
|
"saved to CGP/GLSLP preset file.");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_preset_parameters"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- Shader Preset Parameters. \n"
|
||||||
|
" \n"
|
||||||
|
"Modifies shader preset currently in menu."
|
||||||
|
);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_pass"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Path to shader. \n"
|
||||||
|
" \n"
|
||||||
|
"All shaders must be of the same \n"
|
||||||
|
"type (i.e. CG, GLSL or HLSL). \n"
|
||||||
|
" \n"
|
||||||
|
"Set Shader Directory to set where \n"
|
||||||
|
"the browser starts to look for \n"
|
||||||
|
"shaders."
|
||||||
|
);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_filter_pass"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Hardware filter for this pass. \n"
|
||||||
|
" \n"
|
||||||
|
"If 'Don't Care' is set, 'Default \n"
|
||||||
|
"Filter' will be used."
|
||||||
|
);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (!strcmp(label, "video_shader_scale_pass"))
|
||||||
|
{
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Scale for this pass. \n"
|
||||||
|
" \n"
|
||||||
|
"The scale factor accumulates, i.e. 2x \n"
|
||||||
|
"for first pass and 2x for second pass \n"
|
||||||
|
"will give you a 4x total scale. \n"
|
||||||
|
" \n"
|
||||||
|
"If there is a scale factor for last \n"
|
||||||
|
"pass, the result is stretched to \n"
|
||||||
|
"screen with the filter specified in \n"
|
||||||
|
"'Default Filter'. \n"
|
||||||
|
" \n"
|
||||||
|
"If 'Don't Care' is set, either 1x \n"
|
||||||
|
"scale or stretch to fullscreen will \n"
|
||||||
|
"be used depending if it's not the last \n"
|
||||||
|
"pass or not."
|
||||||
|
);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
snprintf(msg, sizeof_msg,
|
snprintf(msg, sizeof_msg,
|
||||||
"-- No info on this item is available. --\n");
|
"-- No info on this item is available. --\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void general_read_handler(const void *data)
|
static void general_read_handler(const void *data)
|
||||||
|
@ -166,7 +166,7 @@ rarch_setting_t setting_data_bind_setting(const char* name,
|
|||||||
const struct retro_keybind* default_value, const char *group,
|
const struct retro_keybind* default_value, const char *group,
|
||||||
const char *subgroup);
|
const char *subgroup);
|
||||||
|
|
||||||
void setting_data_get_description(const void *data, char *msg,
|
int setting_data_get_description(const char *label, char *msg,
|
||||||
size_t msg_sizeof);
|
size_t msg_sizeof);
|
||||||
|
|
||||||
#ifdef HAVE_MENU
|
#ifdef HAVE_MENU
|
||||||
|
Loading…
x
Reference in New Issue
Block a user