mirror of
https://github.com/libretro/RetroArch
synced 2025-03-27 23:37:39 +00:00
(PS3) Implemented a bunch of settings :
* Audio can be muted * Buffering mode can be changed from double to triple buffering and vice versa * Default ROM startup dir and cheat path can be specified - now to save the config file at exit
This commit is contained in:
parent
bbd6e16bbe
commit
73fa4ea199
@ -182,6 +182,9 @@ struct console_settings
|
|||||||
uint32_t *supported_resolutions;
|
uint32_t *supported_resolutions;
|
||||||
uint32_t supported_resolutions_count;
|
uint32_t supported_resolutions_count;
|
||||||
char rom_path[PATH_MAX];
|
char rom_path[PATH_MAX];
|
||||||
|
char default_rom_startup_dir[PATH_MAX];
|
||||||
|
char default_savestate_dir[PATH_MAX];
|
||||||
|
char default_sram_dir[PATH_MAX];
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -105,12 +105,14 @@ static void set_default_settings(void)
|
|||||||
g_settings.video.second_pass_smooth = true;
|
g_settings.video.second_pass_smooth = true;
|
||||||
g_settings.video.smooth = true;
|
g_settings.video.smooth = true;
|
||||||
g_settings.video.vsync = true;
|
g_settings.video.vsync = true;
|
||||||
|
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
|
||||||
|
|
||||||
// g_console
|
// g_console
|
||||||
g_console.screenshots_enable = false;
|
g_console.screenshots_enable = false;
|
||||||
g_console.throttle_enable = true;
|
g_console.throttle_enable = true;
|
||||||
g_console.triple_buffering_enable = true;
|
g_console.triple_buffering_enable = true;
|
||||||
g_console.current_resolution_id = CELL_VIDEO_OUT_RESOLUTION_UNDEFINED;
|
g_console.current_resolution_id = CELL_VIDEO_OUT_RESOLUTION_UNDEFINED;
|
||||||
|
strlcpy(g_console.default_rom_startup_dir, "/", sizeof(g_console.default_rom_startup_dir));
|
||||||
|
|
||||||
// g_extern
|
// g_extern
|
||||||
g_extern.state_slot = 0;
|
g_extern.state_slot = 0;
|
||||||
|
@ -405,6 +405,21 @@ static item items_generalsettings[MAX_NO_OF_CONTROLS_SETTINGS] =
|
|||||||
0,
|
0,
|
||||||
1
|
1
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
SETTING_EMU_AUDIO_MUTE,
|
||||||
|
"Mute Audio",
|
||||||
|
"",
|
||||||
|
0.0f,
|
||||||
|
0.0f,
|
||||||
|
YELLOW,
|
||||||
|
"INFO - [Mute Audio] is set to 'OFF'.",
|
||||||
|
WHITE,
|
||||||
|
0.91f,
|
||||||
|
0.09f,
|
||||||
|
0.83f,
|
||||||
|
0,
|
||||||
|
1
|
||||||
|
},
|
||||||
{
|
{
|
||||||
SETTING_EMU_AUDIO_DEFAULT_ALL,
|
SETTING_EMU_AUDIO_DEFAULT_ALL,
|
||||||
"DEFAULT",
|
"DEFAULT",
|
||||||
|
78
ps3/menu.c
78
ps3/menu.c
@ -468,8 +468,10 @@ static void select_directory(uint32_t menu_id)
|
|||||||
case PATH_SRAM_DIR_CHOICE:
|
case PATH_SRAM_DIR_CHOICE:
|
||||||
break;
|
break;
|
||||||
case PATH_DEFAULT_ROM_DIR_CHOICE:
|
case PATH_DEFAULT_ROM_DIR_CHOICE:
|
||||||
|
strcpy(g_console.default_rom_startup_dir, path);
|
||||||
break;
|
break;
|
||||||
case PATH_CHEATS_DIR_CHOICE:
|
case PATH_CHEATS_DIR_CHOICE:
|
||||||
|
strcpy(g_settings.cheat_database, path);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
menuStackindex--;
|
menuStackindex--;
|
||||||
@ -485,8 +487,10 @@ static void select_directory(uint32_t menu_id)
|
|||||||
case PATH_SRAM_DIR_CHOICE:
|
case PATH_SRAM_DIR_CHOICE:
|
||||||
break;
|
break;
|
||||||
case PATH_DEFAULT_ROM_DIR_CHOICE:
|
case PATH_DEFAULT_ROM_DIR_CHOICE:
|
||||||
|
strcpy(g_console.default_rom_startup_dir, path);
|
||||||
break;
|
break;
|
||||||
case PATH_CHEATS_DIR_CHOICE:
|
case PATH_CHEATS_DIR_CHOICE:
|
||||||
|
strcpy(g_settings.cheat_database, path);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
menuStackindex--;
|
menuStackindex--;
|
||||||
@ -718,6 +722,20 @@ static void set_setting_label(menu * menu_obj, int currentsetting)
|
|||||||
snprintf(menu_obj->items[currentsetting].comment, sizeof(menu_obj->items[currentsetting].comment), "INFO - [Rewind] feature is set to 'OFF'.");
|
snprintf(menu_obj->items[currentsetting].comment, sizeof(menu_obj->items[currentsetting].comment), "INFO - [Rewind] feature is set to 'OFF'.");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case SETTING_EMU_AUDIO_MUTE:
|
||||||
|
if(g_extern.audio_data.mute)
|
||||||
|
{
|
||||||
|
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), "ON");
|
||||||
|
menu_obj->items[currentsetting].text_color = ORANGE;
|
||||||
|
snprintf(menu_obj->items[currentsetting].comment, sizeof(menu_obj->items[currentsetting].comment), "INFO - [Audio Mute] feature is set to 'ON'. The game audio will be muted.");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), "OFF");
|
||||||
|
menu_obj->items[currentsetting].text_color = GREEN;
|
||||||
|
snprintf(menu_obj->items[currentsetting].comment, sizeof(menu_obj->items[currentsetting].comment), "INFO - [Audio Mute] feature is set to 'OFF'.");
|
||||||
|
}
|
||||||
|
break;
|
||||||
case SETTING_EMU_VIDEO_DEFAULT_ALL:
|
case SETTING_EMU_VIDEO_DEFAULT_ALL:
|
||||||
if(menu_obj->selected == currentsetting)
|
if(menu_obj->selected == currentsetting)
|
||||||
menu_obj->items[currentsetting].text_color = GREEN;
|
menu_obj->items[currentsetting].text_color = GREEN;
|
||||||
@ -731,12 +749,24 @@ static void set_setting_label(menu * menu_obj, int currentsetting)
|
|||||||
menu_obj->items[currentsetting].text_color = ORANGE;
|
menu_obj->items[currentsetting].text_color = ORANGE;
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_DEFAULT_ROM_DIRECTORY:
|
case SETTING_PATH_DEFAULT_ROM_DIRECTORY:
|
||||||
|
if(!(strcmp(g_console.default_rom_startup_dir, "/")))
|
||||||
|
menu_obj->items[currentsetting].text_color = GREEN;
|
||||||
|
else
|
||||||
|
menu_obj->items[currentsetting].text_color = ORANGE;
|
||||||
|
|
||||||
|
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), g_console.default_rom_startup_dir);
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_SAVESTATES_DIRECTORY:
|
case SETTING_PATH_SAVESTATES_DIRECTORY:
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_SRAM_DIRECTORY:
|
case SETTING_PATH_SRAM_DIRECTORY:
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_CHEATS:
|
case SETTING_PATH_CHEATS:
|
||||||
|
if(!(strcmp(g_settings.cheat_database, usrDirPath)))
|
||||||
|
menu_obj->items[currentsetting].text_color = GREEN;
|
||||||
|
else
|
||||||
|
menu_obj->items[currentsetting].text_color = ORANGE;
|
||||||
|
|
||||||
|
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), g_settings.cheat_database);
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_DEFAULT_ALL:
|
case SETTING_PATH_DEFAULT_ALL:
|
||||||
if(menu_obj->selected == currentsetting)
|
if(menu_obj->selected == currentsetting)
|
||||||
@ -1023,6 +1053,20 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SETTING_TRIPLE_BUFFERING:
|
case SETTING_TRIPLE_BUFFERING:
|
||||||
|
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
|
||||||
|
{
|
||||||
|
g_console.triple_buffering_enable = !g_console.triple_buffering_enable;
|
||||||
|
ps3graphics_video_reinit();
|
||||||
|
set_text_message("", 7);
|
||||||
|
}
|
||||||
|
if(CTRL_START(state))
|
||||||
|
{
|
||||||
|
if(!g_console.triple_buffering_enable)
|
||||||
|
{
|
||||||
|
g_console.triple_buffering_enable = true;
|
||||||
|
ps3graphics_video_reinit();
|
||||||
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SETTING_ENABLE_SCREENSHOTS:
|
case SETTING_ENABLE_SCREENSHOTS:
|
||||||
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
|
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
|
||||||
@ -1096,17 +1140,49 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
|
|||||||
g_settings.rewind_enable = false;
|
g_settings.rewind_enable = false;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case SETTING_EMU_AUDIO_MUTE:
|
||||||
|
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
|
||||||
|
{
|
||||||
|
g_extern.audio_data.mute = !g_extern.audio_data.mute;
|
||||||
|
|
||||||
|
set_text_message("", 7);
|
||||||
|
}
|
||||||
|
if(CTRL_START(state))
|
||||||
|
{
|
||||||
|
g_extern.audio_data.mute = false;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case SETTING_EMU_VIDEO_DEFAULT_ALL:
|
case SETTING_EMU_VIDEO_DEFAULT_ALL:
|
||||||
break;
|
break;
|
||||||
case SETTING_EMU_AUDIO_DEFAULT_ALL:
|
case SETTING_EMU_AUDIO_DEFAULT_ALL:
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_DEFAULT_ROM_DIRECTORY:
|
case SETTING_PATH_DEFAULT_ROM_DIRECTORY:
|
||||||
|
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
|
||||||
|
{
|
||||||
|
menuStackindex++;
|
||||||
|
menuStack[menuStackindex] = menu_filebrowser;
|
||||||
|
menuStack[menuStackindex].enum_id = PATH_DEFAULT_ROM_DIR_CHOICE;
|
||||||
|
set_initial_dir_tmpbrowser = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(CTRL_START(state))
|
||||||
|
strcpy(g_console.default_rom_startup_dir, "/");
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_SAVESTATES_DIRECTORY:
|
case SETTING_PATH_SAVESTATES_DIRECTORY:
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_SRAM_DIRECTORY:
|
case SETTING_PATH_SRAM_DIRECTORY:
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_CHEATS:
|
case SETTING_PATH_CHEATS:
|
||||||
|
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
|
||||||
|
{
|
||||||
|
menuStackindex++;
|
||||||
|
menuStack[menuStackindex] = menu_filebrowser;
|
||||||
|
menuStack[menuStackindex].enum_id = PATH_CHEATS_DIR_CHOICE;
|
||||||
|
set_initial_dir_tmpbrowser = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(CTRL_START(state))
|
||||||
|
strcpy(g_settings.cheat_database, usrDirPath);
|
||||||
break;
|
break;
|
||||||
case SETTING_PATH_DEFAULT_ALL:
|
case SETTING_PATH_DEFAULT_ALL:
|
||||||
break;
|
break;
|
||||||
@ -1373,7 +1449,7 @@ static void select_rom(void)
|
|||||||
|
|
||||||
void menu_init (void)
|
void menu_init (void)
|
||||||
{
|
{
|
||||||
filebrowser_new(&browser, "/", ssnes_console_get_rom_ext());
|
filebrowser_new(&browser, g_console.default_rom_startup_dir, ssnes_console_get_rom_ext());
|
||||||
}
|
}
|
||||||
|
|
||||||
void menu_loop(void)
|
void menu_loop(void)
|
||||||
|
@ -99,6 +99,7 @@ enum
|
|||||||
SETTING_EMU_DEFAULT_ALL,
|
SETTING_EMU_DEFAULT_ALL,
|
||||||
SETTING_EMU_REWIND_ENABLED,
|
SETTING_EMU_REWIND_ENABLED,
|
||||||
SETTING_EMU_VIDEO_DEFAULT_ALL,
|
SETTING_EMU_VIDEO_DEFAULT_ALL,
|
||||||
|
SETTING_EMU_AUDIO_MUTE,
|
||||||
SETTING_EMU_AUDIO_DEFAULT_ALL,
|
SETTING_EMU_AUDIO_DEFAULT_ALL,
|
||||||
/* end of port-specific */
|
/* end of port-specific */
|
||||||
SETTING_PATH_DEFAULT_ROM_DIRECTORY,
|
SETTING_PATH_DEFAULT_ROM_DIRECTORY,
|
||||||
|
@ -816,17 +816,20 @@ static bool psgl_init_device(gl_t *gl, const video_info_t *video, uint32_t resol
|
|||||||
|
|
||||||
psglInit(&options);
|
psglInit(&options);
|
||||||
|
|
||||||
PSGLdeviceParameters params = {
|
PSGLdeviceParameters params;
|
||||||
.enable = PSGL_DEVICE_PARAMETERS_COLOR_FORMAT |
|
|
||||||
PSGL_DEVICE_PARAMETERS_DEPTH_FORMAT |
|
|
||||||
PSGL_DEVICE_PARAMETERS_MULTISAMPLING_MODE |
|
|
||||||
PSGL_DEVICE_PARAMETERS_BUFFERING_MODE,
|
|
||||||
|
|
||||||
.colorFormat = GL_ARGB_SCE,
|
params.enable = PSGL_DEVICE_PARAMETERS_COLOR_FORMAT | \
|
||||||
.depthFormat = GL_NONE,
|
PSGL_DEVICE_PARAMETERS_DEPTH_FORMAT | \
|
||||||
.multisamplingMode = GL_MULTISAMPLING_NONE_SCE,
|
PSGL_DEVICE_PARAMETERS_MULTISAMPLING_MODE;
|
||||||
.bufferingMode = PSGL_BUFFERING_MODE_TRIPLE,
|
params.colorFormat = GL_ARGB_SCE;
|
||||||
};
|
params.depthFormat = GL_NONE;
|
||||||
|
params.multisamplingMode = GL_MULTISAMPLING_NONE_SCE;
|
||||||
|
|
||||||
|
if(g_console.triple_buffering_enable)
|
||||||
|
{
|
||||||
|
params.enable |= PSGL_DEVICE_PARAMETERS_BUFFERING_MODE;
|
||||||
|
params.bufferingMode = PSGL_BUFFERING_MODE_TRIPLE;
|
||||||
|
}
|
||||||
|
|
||||||
if(resolution_id)
|
if(resolution_id)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user