1 /* RetroArch - A frontend for libretro. 2 * Copyright (C) 2010-2014 - Hans-Kristian Arntzen 3 * Copyright (C) 2011-2016 - Daniel De Matteis 4 * Copyright (C) 2016-2019 - Brad Parker 5 * 6 * RetroArch is free software: you can redistribute it and/or modify it under the terms 7 * of the GNU General Public License as published by the Free Software Found- 8 * ation, either version 3 of the License, or (at your option) any later version. 9 * 10 * RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 11 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 12 * PURPOSE. See the GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License along with RetroArch. 15 * If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef _FILE_PATH_SPECIAL_H 19 #define _FILE_PATH_SPECIAL_H 20 21 #include <stdint.h> 22 #include <stddef.h> 23 24 #include <boolean.h> 25 #include <retro_common_api.h> 26 #include <retro_environment.h> 27 28 RETRO_BEGIN_DECLS 29 30 #define FILE_PATH_UNKNOWN "null" 31 #define FILE_PATH_CONTENT_BASENAME "content.png" 32 #define FILE_PATH_BUILTIN "builtin" 33 #define FILE_PATH_DETECT "DETECT" 34 #define FILE_PATH_LUTRO_PLAYLIST "Lutro.lpl" 35 #define FILE_PATH_NUL "nul" 36 #define FILE_PATH_CGP_EXTENSION ".cgp" 37 #define FILE_PATH_GLSLP_EXTENSION ".glslp" 38 #define FILE_PATH_SLANGP_EXTENSION ".slangp" 39 #define FILE_PATH_AUTO_EXTENSION ".auto" 40 #define FILE_PATH_BSV_EXTENSION ".bsv" 41 #define FILE_PATH_OPT_EXTENSION ".opt" 42 #define FILE_PATH_CORE_INFO_EXTENSION ".info" 43 #define FILE_PATH_CONFIG_EXTENSION ".cfg" 44 #define FILE_PATH_REMAP_EXTENSION ".rmp" 45 #define FILE_PATH_RTC_EXTENSION ".rtc" 46 #define FILE_PATH_CHT_EXTENSION ".cht" 47 #define FILE_PATH_SRM_EXTENSION ".srm" 48 #define FILE_PATH_STATE_EXTENSION ".state" 49 #define FILE_PATH_LPL_EXTENSION ".lpl" 50 #define FILE_PATH_LPL_EXTENSION_NO_DOT "lpl" 51 #define FILE_PATH_PNG_EXTENSION ".png" 52 #define FILE_PATH_MP3_EXTENSION ".mp3" 53 #define FILE_PATH_FLAC_EXTENSION ".flac" 54 #define FILE_PATH_OGG_EXTENSION ".ogg" 55 #define FILE_PATH_WAV_EXTENSION ".wav" 56 #define FILE_PATH_MOD_EXTENSION ".mod" 57 #define FILE_PATH_S3M_EXTENSION ".s3m" 58 #define FILE_PATH_XM_EXTENSION ".xm" 59 #define FILE_PATH_JPEG_EXTENSION ".jpeg" 60 #define FILE_PATH_BMP_EXTENSION ".bmp" 61 #define FILE_PATH_TGA_EXTENSION ".tga" 62 #define FILE_PATH_JPG_EXTENSION ".jpg" 63 #define FILE_PATH_UPS_EXTENSION ".ups" 64 #define FILE_PATH_IPS_EXTENSION ".ips" 65 #define FILE_PATH_BPS_EXTENSION ".bps" 66 #define FILE_PATH_RDB_EXTENSION ".rdb" 67 #define FILE_PATH_RDB_EXTENSION_NO_DOT "rdb" 68 #define FILE_PATH_ZIP_EXTENSION ".zip" 69 #define FILE_PATH_7Z_EXTENSION ".7z" 70 #define FILE_PATH_INDEX_URL ".index" 71 #define FILE_PATH_INDEX_DIRS_URL ".index-dirs" 72 #define FILE_PATH_INDEX_EXTENDED_URL ".index-extended" 73 #define FILE_PATH_NETPLAY_ROOM_LIST_URL "registry.lpl" 74 #define FILE_PATH_RETROACHIEVEMENTS_URL "http://i.retroachievements.org" 75 #define FILE_PATH_LOBBY_LIBRETRO_URL "http://lobby.libretro.com/" 76 #define FILE_PATH_CORE_THUMBNAILS_URL "http://thumbnails.libretro.com" 77 #define FILE_PATH_CORE_THUMBNAILPACKS_URL "http://thumbnailpacks.libretro.com" 78 #ifdef HAVE_LAKKA_NIGHTLY 79 #define FILE_PATH_LAKKA_URL "http://nightly.builds.lakka.tv/.updater" 80 #else 81 #define FILE_PATH_LAKKA_URL "http://le.builds.lakka.tv" 82 #endif 83 #define FILE_PATH_SHADERS_GLSL_ZIP "shaders_glsl.zip" 84 #define FILE_PATH_SHADERS_SLANG_ZIP "shaders_slang.zip" 85 #define FILE_PATH_SHADERS_CG_ZIP "shaders_cg.zip" 86 #define FILE_PATH_DATABASE_RDB_ZIP "database-rdb.zip" 87 #define FILE_PATH_OVERLAYS_ZIP "overlays.zip" 88 #define FILE_PATH_CORE_INFO_ZIP "info.zip" 89 #define FILE_PATH_CHEATS_ZIP "cheats.zip" 90 #define FILE_PATH_ASSETS_ZIP "assets.zip" 91 #define FILE_PATH_AUTOCONFIG_ZIP "autoconfig.zip" 92 #define FILE_PATH_CONTENT_FAVORITES "content_favorites.lpl" 93 #define FILE_PATH_CONTENT_HISTORY "content_history.lpl" 94 #define FILE_PATH_CONTENT_IMAGE_HISTORY "content_image_history.lpl" 95 #define FILE_PATH_CONTENT_MUSIC_HISTORY "content_music_history.lpl" 96 #define FILE_PATH_CONTENT_VIDEO_HISTORY "content_video_history.lpl" 97 #define FILE_PATH_CORE_OPTIONS_CONFIG "retroarch-core-options.cfg" 98 #define FILE_PATH_MAIN_CONFIG "retroarch.cfg" 99 #define FILE_PATH_SALAMANDER_CONFIG "retroarch-salamander.cfg" 100 #define FILE_PATH_BACKGROUND_IMAGE "bg.png" 101 #define FILE_PATH_TTF_FONT "font.ttf" 102 #define FILE_PATH_RUNTIME_EXTENSION ".lrtl" 103 #define FILE_PATH_DEFAULT_EVENT_LOG "retroarch.log" 104 #define FILE_PATH_EVENT_LOG_EXTENSION ".log" 105 #define FILE_PATH_DISK_CONTROL_INDEX_EXTENSION ".ldci" 106 #define FILE_PATH_CORE_BACKUP_EXTENSION ".lcbk" 107 #define FILE_PATH_CORE_BACKUP_EXTENSION_NO_DOT "lcbk" 108 #define FILE_PATH_LOCK_EXTENSION ".lck" 109 #define FILE_PATH_LOCK_EXTENSION_NO_DOT "lck" 110 #define FILE_PATH_BACKUP_EXTENSION ".bak" 111 #if defined(RARCH_MOBILE) 112 #define FILE_PATH_DEFAULT_OVERLAY "gamepads/neo-retropad/neo-retropad.cfg" 113 #endif 114 #define FILE_PATH_CORE_INFO_CACHE "core_info.cache" 115 #define FILE_PATH_CORE_INFO_CACHE_REFRESH "core_info.refresh" 116 117 enum application_special_type 118 { 119 APPLICATION_SPECIAL_NONE = 0, 120 APPLICATION_SPECIAL_DIRECTORY_AUTOCONFIG, 121 APPLICATION_SPECIAL_DIRECTORY_CONFIG, 122 APPLICATION_SPECIAL_DIRECTORY_ASSETS_PKG, 123 APPLICATION_SPECIAL_DIRECTORY_ASSETS_PKG_AR_FONT, 124 APPLICATION_SPECIAL_DIRECTORY_ASSETS_PKG_CJK_FONT, 125 APPLICATION_SPECIAL_DIRECTORY_ASSETS_MATERIALUI, 126 APPLICATION_SPECIAL_DIRECTORY_ASSETS_MATERIALUI_FONT, 127 APPLICATION_SPECIAL_DIRECTORY_ASSETS_MATERIALUI_ICONS, 128 APPLICATION_SPECIAL_DIRECTORY_ASSETS_XMB, 129 APPLICATION_SPECIAL_DIRECTORY_ASSETS_XMB_BG, 130 APPLICATION_SPECIAL_DIRECTORY_ASSETS_XMB_ICONS, 131 APPLICATION_SPECIAL_DIRECTORY_ASSETS_XMB_FONT, 132 APPLICATION_SPECIAL_DIRECTORY_ASSETS_OZONE, 133 APPLICATION_SPECIAL_DIRECTORY_ASSETS_OZONE_ICONS, 134 APPLICATION_SPECIAL_DIRECTORY_ASSETS_RGUI_FONT, 135 APPLICATION_SPECIAL_DIRECTORY_ASSETS_SOUNDS, 136 APPLICATION_SPECIAL_DIRECTORY_ASSETS_SYSICONS, 137 APPLICATION_SPECIAL_DIRECTORY_THUMBNAILS_CHEEVOS_BADGES, 138 APPLICATION_SPECIAL_DIRECTORY_THUMBNAILS_DISCORD_AVATARS 139 }; 140 141 bool fill_pathname_application_data(char *s, size_t len); 142 143 void fill_pathname_application_special(char *s, size_t len, enum application_special_type type); 144 145 RETRO_END_DECLS 146 147 #endif 148