From 6ecbfbc22b06dab9ad04f8d269315631cae765bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Francisco=20Jos=C3=A9=20Garc=C3=ADa=20Garc=C3=ADa?= Date: Mon, 10 Oct 2016 11:43:05 +0200 Subject: [PATCH] (VITA) Enable database support --- Makefile.griffin | 1 + dist-scripts/dist-cores.sh | 24 ++++++++++++++++++++ frontend/drivers/platform_psp.c | 39 +++++++++++++++++++-------------- 3 files changed, 47 insertions(+), 17 deletions(-) diff --git a/Makefile.griffin b/Makefile.griffin index c27afda455..abdd7b89a3 100644 --- a/Makefile.griffin +++ b/Makefile.griffin @@ -248,6 +248,7 @@ else ifeq ($(platform), vita) HAVE_STB_FONT :=1 RARCH_CONSOLE = 1 HAVE_THREADS := 1 + HAVE_LIBRETRODB := 1 endif diff --git a/dist-scripts/dist-cores.sh b/dist-scripts/dist-cores.sh index da90943e41..316c4b2e38 100755 --- a/dist-scripts/dist-cores.sh +++ b/dist-scripts/dist-cores.sh @@ -145,6 +145,18 @@ if [ $SALAMANDER = "yes" ]; then rm -rf ../pkg/${platform}/retroarch.vpk/vpk/assets/xmb/retroactive/src rm -rf ../pkg/${platform}/retroarch.vpk/vpk/assets/xmb/retroactive_marked/src fi + if [ -d ../media/libretrodb/rdb ]; then + mkdir -p ../pkg/${platform}/retroarch.vpk/vpk/database/rdb + cp -r ../media/libretrodb/rdb/* ../pkg/${platform}/retroarch.vpk/vpk/database/rdb + fi + if [ -d ../media/libretrodb/cursors ]; then + mkdir -p ../pkg/${platform}/retroarch.vpk/vpk/database/cursors + cp -r ../media/libretrodb/cursors/* ../pkg/${platform}/retroarch.vpk/vpk/database/cursors + fi + if [ -d ../../dist/info ]; then + mkdir -p ../pkg/${platform}/retroarch.vpk/vpk/info + cp -fv ../../dist/info/*.info ../pkg/${platform}/retroarch.vpk/vpk/info/ + fi make -C ../ -f Makefile.${platform}.salamander clean || exit 1 fi if [ $PLATFORM = "ctr" ] ; then @@ -268,6 +280,18 @@ for f in `ls -v *_${platform}.${EXT}`; do rm -rf ../pkg/${platform}/${name}_libretro.vpk/vpk/assets/xmb/retroactive/src rm -rf ../pkg/${platform}/${name}_libretro.vpk/vpk/assets/xmb/retroactive_marked/src fi + if [ -d ../media/libretrodb/rdb ]; then + mkdir -p ../pkg/${platform}/retroarch.vpk/vpk/database/rdb + cp -r ../media/libretrodb/rdb/* ../pkg/${platform}/${name}_libretro.vpk/vpk/database/rdb + fi + if [ -d ../media/libretrodb/cursors ]; then + mkdir -p ../pkg/${platform}/retroarch.vpk/vpk/database/cursors + cp -r ../media/libretrodb/cursors/* ../pkg/${platform}/${name}_libretro.vpk/vpk/database/cursors + fi + if [ -d ../../dist/info ]; then + mkdir -p ../pkg/${platform}/retroarch.vpk/vpk/info + cp -fv ../../dist/info/"${name}_libretro.info" ../pkg/${platform}/${name}_libretro.vpk/vpk/info/"${name}_libretro.info" + fi elif [ $PLATFORM = "ctr" ] ; then mv -f ../retroarch_3ds.cia ../pkg/3ds/cia/${name}_libretro.cia mv -f ../retroarch_3ds.3ds ../pkg/3ds/rom/${name}_libretro.3ds diff --git a/frontend/drivers/platform_psp.c b/frontend/drivers/platform_psp.c index 00b258b4ba..9556a2e618 100644 --- a/frontend/drivers/platform_psp.c +++ b/frontend/drivers/platform_psp.c @@ -95,8 +95,9 @@ static void frontend_psp_get_environment_settings(int *argc, char *argv[], #endif #ifdef VITA - strlcpy(eboot_path, "ux0:/data/retroarch/", sizeof(eboot_path)); + strlcpy(eboot_path, "app0:/", sizeof(eboot_path)); strlcpy(g_defaults.dir.port, eboot_path, sizeof(g_defaults.dir.port)); + strlcpy(user_path, "ux0:/data/retroarch/", sizeof(user_path)); #else strlcpy(eboot_path, argv[0], sizeof(eboot_path)); /* for PSP, use uppercase directories, and no trailing slashes @@ -108,36 +109,40 @@ static void frontend_psp_get_environment_settings(int *argc, char *argv[], #ifdef VITA /* bundle data*/ - fill_pathname_join(g_defaults.dir.assets, "app0:/", - "assets", sizeof(g_defaults.dir.assets)); - fill_pathname_join(g_defaults.dir.core, "app0:/", + fill_pathname_join(g_defaults.dir.core, g_defaults.dir.port, "", sizeof(g_defaults.dir.core)); + fill_pathname_join(g_defaults.dir.assets, g_defaults.dir.port, + "assets", sizeof(g_defaults.dir.assets)); fill_pathname_join(g_defaults.dir.core_info, g_defaults.dir.core, "info", sizeof(g_defaults.dir.core_info)); + fill_pathname_join(g_defaults.dir.database, g_defaults.dir.port, + "database/rdb", sizeof(g_defaults.dir.database)); + fill_pathname_join(g_defaults.dir.cursor, g_defaults.dir.port, + "database/cursors", sizeof(g_defaults.dir.cursor)); /* user data*/ - fill_pathname_join(g_defaults.dir.cheats, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.cheats, user_path, "cheats", sizeof(g_defaults.dir.cheats)); - fill_pathname_join(g_defaults.dir.menu_config, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.menu_config, user_path, "config", sizeof(g_defaults.dir.menu_config)); - fill_pathname_join(g_defaults.dir.core_assets, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.core_assets, user_path, "downloads", sizeof(g_defaults.dir.core_assets)); - fill_pathname_join(g_defaults.dir.playlist, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.playlist, user_path, "playlists", sizeof(g_defaults.dir.playlist)); - fill_pathname_join(g_defaults.dir.remap, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.remap, user_path, "remaps", sizeof(g_defaults.dir.remap)); - fill_pathname_join(g_defaults.dir.sram, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.sram, user_path, "savefiles", sizeof(g_defaults.dir.sram)); - fill_pathname_join(g_defaults.dir.savestate, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.savestate, user_path, "savestates", sizeof(g_defaults.dir.savestate)); - fill_pathname_join(g_defaults.dir.system, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.system, user_path, "system", sizeof(g_defaults.dir.system)); - fill_pathname_join(g_defaults.dir.cache, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.cache, user_path, "temp", sizeof(g_defaults.dir.cache)); - fill_pathname_join(g_defaults.dir.overlay, g_defaults.dir.port, + fill_pathname_join(g_defaults.dir.overlay, user_path, "overlays", sizeof(g_defaults.dir.overlay)); strlcpy(g_defaults.dir.content_history, - g_defaults.dir.port, sizeof(g_defaults.dir.content_history)); - fill_pathname_join(g_defaults.path.config, g_defaults.dir.port, + user_path, sizeof(g_defaults.dir.content_history)); + fill_pathname_join(g_defaults.path.config, user_path, file_path_str(FILE_PATH_MAIN_CONFIG), sizeof(g_defaults.path.config)); #else @@ -222,7 +227,7 @@ static void frontend_psp_get_environment_settings(int *argc, char *argv[], if (!string_is_empty(argv[1])) { static char path[PATH_MAX_LENGTH] = {0}; - struct rarch_main_wrap *args = + struct rarch_main_wrap *args = (struct rarch_main_wrap*)params_data; if (args)