(PS3/360/Xbox 1) Create and use default_paths struct

This commit is contained in:
Twinaphex 2012-07-23 18:17:50 +02:00
parent 2f51da4034
commit 0e6e563b08
10 changed files with 83 additions and 1374 deletions

View File

@ -47,6 +47,8 @@
ROM EXTENSIONS
============================================================ */
default_paths_t default_paths;
void rarch_console_load_game(const char *path)
{
snprintf(g_console.rom_path, sizeof(g_console.rom_path), path);

View File

@ -134,6 +134,24 @@ enum
/*============================================================
ROM EXTENSIONS
============================================================ */
typedef struct
{
char border_file[PATH_MAX];
char border_dir[PATH_MAX];
char config_file[PATH_MAX];
char core_dir[PATH_MAX];
char port_dir[PATH_MAX];
char savestate_dir[PATH_MAX];
#if defined(HAVE_CG) || defined(HAVE_HLSL) || defined(HAVE_GLSL)
char menu_shader_file[PATH_MAX];
char shader_file[PATH_MAX];
char shader_dir[PATH_MAX];
#endif
char sram_dir[PATH_MAX];
char system_dir[PATH_MAX];
} default_paths_t;
extern default_paths_t default_paths;
void rarch_console_load_game(const char *path);

View File

@ -1065,9 +1065,9 @@ static void *gl_init(const video_info_t *video, const input_driver_t **input, vo
RARCH_LOG("GL: Using resolution %ux%u\n", gl->win_width, gl->win_height);
#ifdef HAVE_CG_MENU
#if defined(HAVE_CG_MENU) && defined(RARCH_CONSOLE)
RARCH_LOG("Initializing menu shader ...\n");
gl_cg_set_menu_shader(DEFAULT_MENU_SHADER_FILE);
gl_cg_set_menu_shader(default_paths.menu_shader_file);
#endif
if (!gl_shader_init())

1292
gfx/gles.c

File diff suppressed because it is too large Load Diff

View File

@ -56,25 +56,15 @@
#include "menu.h"
#define EMULATOR_CONTENT_DIR "SSNE10000"
#define EMULATOR_CORE_DIR "cores"
#define CACHE_ID "ABCD12345"
#define NP_POOL_SIZE (128*1024)
static uint8_t np_pool[NP_POOL_SIZE];
char systemDirPath[PATH_MAX];
char usrDirPath[PATH_MAX];
char DEFAULT_PRESET_FILE[PATH_MAX];
char DEFAULT_BORDER_FILE[PATH_MAX];
char DEFAULT_MENU_BORDER_FILE[PATH_MAX];
char PRESETS_DIR_PATH[PATH_MAX];
char INPUT_PRESETS_DIR_PATH[PATH_MAX];
char BORDERS_DIR_PATH[PATH_MAX];
char SHADERS_DIR_PATH[PATH_MAX];
char LIBRETRO_DIR_PATH[PATH_MAX];
char DEFAULT_SHADER_FILE[PATH_MAX];
char DEFAULT_MENU_SHADER_FILE[PATH_MAX];
char SYS_CONFIG_FILE[PATH_MAX];
char EMULATOR_CORE_SELF[PATH_MAX];
#ifdef HAVE_MULTIMAN
char MULTIMAN_EXECUTABLE[PATH_MAX];
@ -89,18 +79,18 @@ SYS_PROCESS_PARAM(1001, 0x200000)
static void set_default_settings(void)
{
// g_settings
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_settings.cheat_database, default_paths.port_dir, sizeof(g_settings.cheat_database));
g_settings.rewind_enable = false;
strlcpy(g_settings.video.cg_shader_path, DEFAULT_SHADER_FILE, sizeof(g_settings.video.cg_shader_path));
strlcpy(g_settings.video.cg_shader_path, default_paths.shader_file, sizeof(g_settings.video.cg_shader_path));
g_settings.video.fbo_scale_x = 2.0f;
g_settings.video.fbo_scale_y = 2.0f;
g_settings.video.render_to_texture = true;
strlcpy(g_settings.video.second_pass_shader, DEFAULT_SHADER_FILE, sizeof(g_settings.video.second_pass_shader));
strlcpy(g_settings.video.second_pass_shader, default_paths.shader_file, sizeof(g_settings.video.second_pass_shader));
g_settings.video.second_pass_smooth = true;
g_settings.video.smooth = true;
g_settings.video.vsync = true;
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_settings.system_directory, systemDirPath, sizeof(g_settings.system_directory));
strlcpy(g_settings.cheat_database, default_paths.port_dir, sizeof(g_settings.cheat_database));
strlcpy(g_settings.system_directory, default_paths.system_dir, sizeof(g_settings.system_directory));
g_settings.video.msg_pos_x = 0.05f;
g_settings.video.msg_pos_y = 0.90f;
g_settings.video.aspect_ratio = -1.0f;
@ -122,8 +112,8 @@ static void set_default_settings(void)
g_console.screen_orientation = ORIENTATION_NORMAL;
g_console.current_resolution_id = 0;
strlcpy(g_console.default_rom_startup_dir, "/", sizeof(g_console.default_rom_startup_dir));
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
strlcpy(g_console.default_sram_dir, usrDirPath, sizeof(g_console.default_sram_dir));
strlcpy(g_console.default_savestate_dir, default_paths.savestate_dir, sizeof(g_console.default_savestate_dir));
strlcpy(g_console.default_sram_dir, default_paths.sram_dir, sizeof(g_console.default_sram_dir));
g_console.aspect_ratio_index = 0;
g_console.menu_font_size = 1.0f;
g_console.overscan_enable = false;
@ -242,13 +232,13 @@ static void get_environment_settings(int argc, char *argv[])
if((get_attributes & CELL_GAME_ATTRIBUTE_APP_HOME) == CELL_GAME_ATTRIBUTE_APP_HOME)
RARCH_LOG("RetroArch was launched from host machine (APP_HOME).\n");
ret = cellGameContentPermit(contentInfoPath, usrDirPath);
ret = cellGameContentPermit(contentInfoPath, default_paths.port_dir);
#ifdef HAVE_MULTIMAN
if(g_console.external_launcher_support == EXTERN_LAUNCHER_MULTIMAN)
{
snprintf(contentInfoPath, sizeof(contentInfoPath), "/dev_hdd0/game/%s", EMULATOR_CONTENT_DIR);
snprintf(usrDirPath, sizeof(usrDirPath), "/dev_hdd0/game/%s/USRDIR", EMULATOR_CONTENT_DIR);
snprintf(default_paths.port_dir, sizeof(default_paths.port_dir), "/dev_hdd0/game/%s/USRDIR", EMULATOR_CONTENT_DIR);
}
#endif
@ -260,23 +250,26 @@ static void get_environment_settings(int argc, char *argv[])
{
RARCH_LOG("cellGameContentPermit() OK.\n");
RARCH_LOG("contentInfoPath : [%s].\n", contentInfoPath);
RARCH_LOG("usrDirPath : [%s].\n", usrDirPath);
RARCH_LOG("usrDirPath : [%s].\n", default_paths.port_dir);
}
snprintf(systemDirPath, sizeof(systemDirPath), "%s/%s/system", usrDirPath, EMULATOR_CORE_DIR);
snprintf(default_paths.core_dir, sizeof(default_paths.core_dir), "%s/cores", default_paths.port_dir);
snprintf(default_paths.savestate_dir, sizeof(default_paths.savestate_dir), "%s/savestates", default_paths.core_dir);
snprintf(default_paths.sram_dir, sizeof(default_paths.sram_dir), "%s/sram", default_paths.core_dir);
snprintf(default_paths.system_dir, sizeof(default_paths.system_dir), "%s/system", default_paths.core_dir);
/* now we fill in all the variables */
snprintf(DEFAULT_PRESET_FILE, sizeof(DEFAULT_PRESET_FILE), "%s/%s/presets/stock.conf", usrDirPath, EMULATOR_CORE_DIR);
snprintf(DEFAULT_BORDER_FILE, sizeof(DEFAULT_BORDER_FILE), "%s/%s/borders/Centered-1080p/mega-man-2.png", usrDirPath, EMULATOR_CORE_DIR);
snprintf(DEFAULT_MENU_BORDER_FILE, sizeof(DEFAULT_MENU_BORDER_FILE), "%s/%s/borders/Menu/main-menu.png", usrDirPath, EMULATOR_CORE_DIR);
snprintf(PRESETS_DIR_PATH, sizeof(PRESETS_DIR_PATH), "%s/%s/presets", usrDirPath, EMULATOR_CORE_DIR);
snprintf(DEFAULT_PRESET_FILE, sizeof(DEFAULT_PRESET_FILE), "%s/presets/stock.conf", default_paths.core_dir);
snprintf(default_paths.border_file, sizeof(default_paths.border_file), "%s/borders/Centered-1080p/mega-man-2.png", default_paths.core_dir);
snprintf(DEFAULT_MENU_BORDER_FILE, sizeof(DEFAULT_MENU_BORDER_FILE), "%s/borders/Menu/main-menu.png", default_paths.core_dir);
snprintf(PRESETS_DIR_PATH, sizeof(PRESETS_DIR_PATH), "%s/presets", default_paths.core_dir);
snprintf(INPUT_PRESETS_DIR_PATH, sizeof(INPUT_PRESETS_DIR_PATH), "%s/input", PRESETS_DIR_PATH);
snprintf(LIBRETRO_DIR_PATH, sizeof(LIBRETRO_DIR_PATH), "%s/%s", usrDirPath, EMULATOR_CORE_DIR);
snprintf(BORDERS_DIR_PATH, sizeof(BORDERS_DIR_PATH), "%s/%s/borders", usrDirPath, EMULATOR_CORE_DIR);
snprintf(SHADERS_DIR_PATH, sizeof(SHADERS_DIR_PATH), "%s/%s/shaders", usrDirPath, EMULATOR_CORE_DIR);
snprintf(DEFAULT_SHADER_FILE, sizeof(DEFAULT_SHADER_FILE), "%s/%s/shaders/stock.cg", usrDirPath, EMULATOR_CORE_DIR);
snprintf(DEFAULT_MENU_SHADER_FILE, sizeof(DEFAULT_MENU_SHADER_FILE), "%s/%s/shaders/Borders/Menu/border-only-rarch.cg", usrDirPath, EMULATOR_CORE_DIR);
snprintf(SYS_CONFIG_FILE, sizeof(SYS_CONFIG_FILE), "%s/retroarch.cfg", usrDirPath);
snprintf(default_paths.border_dir, sizeof(default_paths.border_dir), "%s/borders", default_paths.core_dir);
snprintf(default_paths.shader_dir, sizeof(default_paths.shader_dir), "%s/shaders", default_paths.core_dir);
snprintf(default_paths.shader_file, sizeof(default_paths.shader_file), "%s/shaders/stock.cg", default_paths.core_dir);
snprintf(default_paths.menu_shader_file, sizeof(default_paths.menu_shader_file), "%s/shaders/Borders/Menu/border-only-rarch.cg", default_paths.core_dir);
snprintf(default_paths.config_file, sizeof(default_paths.config_file), "%s/retroarch.cfg", default_paths.port_dir);
}
g_extern.verbose = false;
@ -314,14 +307,14 @@ int main(int argc, char *argv[])
config_set_defaults();
char full_path[1024], tmp_path[1024];
snprintf(full_path, sizeof(full_path), "%s/%s/CORE.SELF", usrDirPath, EMULATOR_CORE_DIR);
snprintf(tmp_path, sizeof(tmp_path), "%s/%s/", usrDirPath, EMULATOR_CORE_DIR);
snprintf(full_path, sizeof(full_path), "%s/CORE.SELF", default_paths.core_dir);
snprintf(tmp_path, sizeof(tmp_path), "%s/", default_paths.core_dir);
bool find_libretro_file = rarch_configure_libretro_core(full_path, tmp_path, LIBRETRO_DIR_PATH,
SYS_CONFIG_FILE, ".SELF");
bool find_libretro_file = rarch_configure_libretro_core(full_path, tmp_path, default_paths.core_dir,
default_paths.config_file, ".SELF");
set_default_settings();
rarch_config_load(SYS_CONFIG_FILE, LIBRETRO_DIR_PATH, ".SELF", find_libretro_file);
rarch_config_load(default_paths.config_file, default_paths.core_dir, ".SELF", find_libretro_file);
init_libretro_sym();
#if(CELL_SDK_VERSION > 0x340000)
@ -367,7 +360,7 @@ int main(int argc, char *argv[])
RARCH_LOG("Started from multiMAN, will auto-start game.\n");
strlcpy(g_console.rom_path, argv[1], sizeof(g_console.rom_path));
rarch_settings_change(S_START_RARCH);
rarch_startup(SYS_CONFIG_FILE);
rarch_startup(default_paths.config_file);
break;
#endif
default:
@ -390,7 +383,7 @@ begin_loop:
else if(g_console.mode_switch == MODE_MENU)
{
menu_loop();
rarch_startup(SYS_CONFIG_FILE);
rarch_startup(default_paths.config_file);
}
else
goto begin_shutdown;
@ -398,8 +391,8 @@ begin_loop:
goto begin_loop;
begin_shutdown:
if(path_file_exists(SYS_CONFIG_FILE))
rarch_config_save(SYS_CONFIG_FILE);
if(path_file_exists(default_paths.config_file))
rarch_config_save(default_paths.config_file);
if(g_console.emulator_initialized)
rarch_main_deinit();

View File

@ -104,13 +104,13 @@ static void set_setting_label(menu * menu_obj, unsigned currentsetting)
case SETTING_SHADER:
fill_pathname_base(fname, g_settings.video.cg_shader_path, sizeof(fname));
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), "%s", fname);
set_setting_label_color(strcmp(g_settings.video.cg_shader_path,DEFAULT_SHADER_FILE) == 0,
set_setting_label_color(strcmp(g_settings.video.cg_shader_path, default_paths.shader_file) == 0,
currentsetting);
break;
case SETTING_SHADER_2:
fill_pathname_base(fname, g_settings.video.second_pass_shader, sizeof(fname));
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), "%s", fname);
set_setting_label_color(strcmp(g_settings.video.second_pass_shader,DEFAULT_SHADER_FILE) == 0,
set_setting_label_color(strcmp(g_settings.video.second_pass_shader, default_paths.shader_file) == 0,
currentsetting);
break;
case SETTING_FONT_SIZE:
@ -239,19 +239,19 @@ static void set_setting_label(menu * menu_obj, unsigned currentsetting)
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), g_console.default_rom_startup_dir);
break;
case SETTING_PATH_SAVESTATES_DIRECTORY:
set_setting_label_color(!(strcmp(g_console.default_savestate_dir, usrDirPath)), currentsetting);
set_setting_label_color(!(strcmp(g_console.default_savestate_dir, default_paths.port_dir)), currentsetting);
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), g_console.default_savestate_dir);
break;
case SETTING_PATH_SRAM_DIRECTORY:
set_setting_label_color(!(strcmp(g_console.default_sram_dir, usrDirPath)), currentsetting);
set_setting_label_color(!(strcmp(g_console.default_sram_dir, default_paths.port_dir)), currentsetting);
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), g_console.default_sram_dir);
break;
case SETTING_PATH_CHEATS:
set_setting_label_color(!(strcmp(g_settings.cheat_database, usrDirPath)), currentsetting);
set_setting_label_color(!(strcmp(g_settings.cheat_database, default_paths.port_dir)), currentsetting);
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), g_settings.cheat_database);
break;
case SETTING_PATH_SYSTEM:
set_setting_label_color(!(strcmp(g_settings.system_directory, systemDirPath)), currentsetting);
set_setting_label_color(!(strcmp(g_settings.system_directory, default_paths.system_dir)), currentsetting);
snprintf(items_generalsettings[currentsetting].setting_text, sizeof(items_generalsettings[currentsetting].setting_text), g_settings.system_directory);
break;
case SETTING_ENABLE_SRAM_PATH:
@ -394,7 +394,7 @@ static void menu_stack_push(unsigned stack_idx, unsigned menu_id)
menuStack[stack_idx].category_id = CATEGORY_FILEBROWSER;
menu_stack_refresh(items_generalsettings, stack_idx);
strlcpy(tmpBrowser.extensions, "self|SELF|bin|BIN", sizeof(tmpBrowser.extensions));
filebrowser_set_root(&tmpBrowser, LIBRETRO_DIR_PATH);
filebrowser_set_root(&tmpBrowser, default_paths.core_dir);
filebrowser_iterate(&tmpBrowser, FILEBROWSER_ACTION_RESET);
break;
case PRESET_CHOICE:
@ -427,7 +427,7 @@ static void menu_stack_push(unsigned stack_idx, unsigned menu_id)
menuStack[stack_idx].category_id = CATEGORY_FILEBROWSER;
menu_stack_refresh(items_generalsettings, stack_idx);
strlcpy(tmpBrowser.extensions, "cg|CG", sizeof(tmpBrowser.extensions));
filebrowser_set_root(&tmpBrowser, SHADERS_DIR_PATH);
filebrowser_set_root(&tmpBrowser, default_paths.shader_dir);
filebrowser_iterate(&tmpBrowser, FILEBROWSER_ACTION_RESET);
break;
case BORDER_CHOICE:
@ -438,7 +438,7 @@ static void menu_stack_push(unsigned stack_idx, unsigned menu_id)
menuStack[stack_idx].category_id = CATEGORY_FILEBROWSER;
menu_stack_refresh(items_generalsettings, stack_idx);
strlcpy(tmpBrowser.extensions, "png|PNG|jpg|JPG|JPEG|jpeg", sizeof(tmpBrowser.extensions));
filebrowser_set_root(&tmpBrowser, BORDERS_DIR_PATH);
filebrowser_set_root(&tmpBrowser, default_paths.border_dir);
filebrowser_iterate(&tmpBrowser, FILEBROWSER_ACTION_RESET);
break;
case PATH_DEFAULT_ROM_DIR_CHOICE:
@ -868,7 +868,7 @@ static void select_directory(void)
}
else if (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_X))
{
strlcpy(path, usrDirPath, sizeof(path));
strlcpy(path, default_paths.port_dir, sizeof(path));
switch(menu_id)
{
case PATH_SAVESTATES_DIR_CHOICE:
@ -1072,7 +1072,7 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
if(input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START))
{
rarch_load_shader(1, NULL);
strlcpy(g_settings.video.cg_shader_path, DEFAULT_SHADER_FILE, sizeof(g_settings.video.cg_shader_path));
strlcpy(g_settings.video.cg_shader_path, default_paths.shader_file, sizeof(g_settings.video.cg_shader_path));
menu_stack_refresh(items_generalsettings, menuStackindex);
}
break;
@ -1086,7 +1086,7 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
if(input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START))
{
rarch_load_shader(2, NULL);
strlcpy(g_settings.video.second_pass_shader, DEFAULT_SHADER_FILE, sizeof(g_settings.video.second_pass_shader));
strlcpy(g_settings.video.second_pass_shader, default_paths.shader_file, sizeof(g_settings.video.second_pass_shader));
menu_stack_refresh(items_generalsettings, menuStackindex);
}
break;
@ -1403,7 +1403,7 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
}
if(input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START))
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
strlcpy(g_console.default_savestate_dir, default_paths.savestate_dir, sizeof(g_console.default_savestate_dir));
break;
case SETTING_PATH_SRAM_DIRECTORY:
@ -1414,7 +1414,7 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
}
if(input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START))
strlcpy(g_console.default_sram_dir, "", sizeof(g_console.default_sram_dir));
strlcpy(g_console.default_sram_dir, default_paths.sram_dir, sizeof(g_console.default_sram_dir));
break;
case SETTING_PATH_CHEATS:
if((input_state & (1 << RETRO_DEVICE_ID_JOYPAD_LEFT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_RIGHT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_B)))
@ -1424,7 +1424,7 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
}
if(input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START))
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_settings.cheat_database, default_paths.port_dir, sizeof(g_settings.cheat_database));
break;
case SETTING_PATH_SYSTEM:
if((input_state & (1 << RETRO_DEVICE_ID_JOYPAD_LEFT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_RIGHT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_B)))
@ -1434,7 +1434,7 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
}
if(input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START))
strlcpy(g_settings.system_directory, systemDirPath, sizeof(g_settings.system_directory));
strlcpy(g_settings.system_directory, default_paths.system_dir, sizeof(g_settings.system_directory));
break;
case SETTING_ENABLE_SRAM_PATH:
if((input_state & (1 << RETRO_DEVICE_ID_JOYPAD_LEFT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_RIGHT)))
@ -1464,8 +1464,8 @@ static void producesettingentry(menu * menu_obj, unsigned switchvalue)
if((input_state & (1 << RETRO_DEVICE_ID_JOYPAD_LEFT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_RIGHT)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_B)) || (input_state & (1 << RETRO_DEVICE_ID_JOYPAD_START)))
{
strlcpy(g_console.default_rom_startup_dir, "/", sizeof(g_console.default_rom_startup_dir));
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_console.default_savestate_dir, default_paths.port_dir, sizeof(g_console.default_savestate_dir));
strlcpy(g_settings.cheat_database, default_paths.port_dir, sizeof(g_settings.cheat_database));
strlcpy(g_console.default_sram_dir, "", sizeof(g_console.default_sram_dir));
menu_stack_refresh(items_generalsettings, menuStackindex);

View File

@ -17,19 +17,10 @@
#ifndef _PS3_SHARED_H
#define _PS3_SHARED_H
extern char usrDirPath[PATH_MAX];
extern char systemDirPath[PATH_MAX];
extern char DEFAULT_PRESET_FILE[PATH_MAX];
extern char DEFAULT_BORDER_FILE[PATH_MAX];
extern char DEFAULT_MENU_BORDER_FILE[PATH_MAX];
extern char PRESETS_DIR_PATH[PATH_MAX];
extern char INPUT_PRESETS_DIR_PATH[PATH_MAX];
extern char BORDERS_DIR_PATH[PATH_MAX];
extern char SHADERS_DIR_PATH[PATH_MAX];
extern char DEFAULT_SHADER_FILE[PATH_MAX];
extern char DEFAULT_MENU_SHADER_FILE[PATH_MAX];
extern char LIBRETRO_DIR_PATH[PATH_MAX];
extern char SYS_CONFIG_FILE[PATH_MAX];
extern char MULTIMAN_EXECUTABLE[PATH_MAX];
#endif

View File

View File

View File

@ -41,9 +41,6 @@
#include "../../file.h"
#include "../../general.h"
char DEFAULT_SHADER_FILE[PATH_MAX];
char SYS_CONFIG_FILE[PATH_MAX];
int rarch_main(int argc, char *argv[]);
#undef main
@ -52,11 +49,11 @@ static void set_default_settings (void)
{
//g_settings
g_settings.rewind_enable = false;
strlcpy(g_settings.video.cg_shader_path, DEFAULT_SHADER_FILE, sizeof(g_settings.video.cg_shader_path));
strlcpy(g_settings.video.cg_shader_path, default_paths.shader_file, sizeof(g_settings.video.cg_shader_path));
g_settings.video.fbo_scale_x = 2.0f;
g_settings.video.fbo_scale_y = 2.0f;
g_settings.video.render_to_texture = true;
strlcpy(g_settings.video.second_pass_shader, DEFAULT_SHADER_FILE, sizeof(g_settings.video.second_pass_shader));
strlcpy(g_settings.video.second_pass_shader, default_paths.shader_file, sizeof(g_settings.video.second_pass_shader));
g_settings.video.second_pass_smooth = true;
g_settings.video.smooth = true;
g_settings.video.vsync = true;
@ -142,13 +139,13 @@ static void get_environment_settings (void)
}
#endif
strlcpy(DEFAULT_SHADER_FILE, "game:\\media\\shaders\\stock.cg", sizeof(DEFAULT_SHADER_FILE));
strlcpy(default_paths.shader_file, "game:\\media\\shaders\\stock.cg", sizeof(default_paths.shader_file));
#ifdef _XBOX1
/* FIXME: Hardcoded */
strlcpy(SYS_CONFIG_FILE, "D:\\retroarch.cfg", sizeof(SYS_CONFIG_FILE));
strlcpy(default_paths.config_file, "D:\\retroarch.cfg", sizeof(default_paths.config_file));
strlcpy(g_settings.system_directory, "D:\\system\\", sizeof(g_settings.system_directory));
#else
strlcpy(SYS_CONFIG_FILE, "game:\\retroarch.cfg", sizeof(SYS_CONFIG_FILE));
strlcpy(default_paths.config_file, "game:\\retroarch.cfg", sizeof(default_paths.config_file));
strlcpy(g_settings.system_directory, "game:\\system\\", sizeof(g_settings.system_directory));
#endif
}
@ -159,10 +156,10 @@ static void configure_libretro(const char *path_prefix, const char * extension)
snprintf(full_path, sizeof(full_path), "%sCORE%s", path_prefix, extension);
bool find_libretro_file = rarch_configure_libretro_core(full_path, path_prefix, path_prefix,
SYS_CONFIG_FILE, extension);
default_paths.config_file, extension);
set_default_settings();
rarch_config_load(SYS_CONFIG_FILE, path_prefix, extension, find_libretro_file);
rarch_config_load(default_paths.config_file, path_prefix, extension, find_libretro_file);
init_libretro_sym();
}
@ -279,7 +276,7 @@ begin_loop:
else if(g_console.mode_switch == MODE_MENU)
{
menu_loop();
rarch_startup(SYS_CONFIG_FILE);
rarch_startup(default_paths.config_file);
}
else
goto begin_shutdown;
@ -287,8 +284,8 @@ begin_loop:
goto begin_loop;
begin_shutdown:
if(path_file_exists(SYS_CONFIG_FILE))
rarch_config_save(SYS_CONFIG_FILE);
if(path_file_exists(default_paths.config_file))
rarch_config_save(default_paths.config_file);
menu_free();
#if defined(HAVE_D3D8) || defined(HAVE_D3D9)