mirror of
https://github.com/libretro/RetroArch
synced 2025-02-01 09:32:58 +00:00
Merge remote-tracking branch 'refs/remotes/libretro/master'
This commit is contained in:
commit
4f4d288253
@ -1,14 +1,28 @@
|
||||
diff --git a/audio/audio_driver.c b/audio/audio_driver.c
|
||||
index 10dcbc5b3..dd959f900 100644
|
||||
index 10dcbc5b3..203e89d0a 100644
|
||||
--- a/audio/audio_driver.c
|
||||
+++ b/audio/audio_driver.c
|
||||
@@ -597,6 +597,9 @@ static bool audio_driver_flush(const int16_t *data, size_t samples)
|
||||
@@ -597,6 +597,8 @@ static bool audio_driver_flush(const int16_t *data, size_t samples)
|
||||
|
||||
audio_driver_resampler->process(audio_driver_resampler_data, &src_data);
|
||||
|
||||
+ audio_mixer_load_wav("/home/squarepusher/nav.wav");
|
||||
+ audio_mixer_mix(audio_driver_output_samples_buf, src_data.output_frames);
|
||||
+
|
||||
output_data = audio_driver_output_samples_buf;
|
||||
output_frames = (unsigned)src_data.output_frames;
|
||||
|
||||
diff --git a/runloop.c b/runloop.c
|
||||
index 0e3a8dc44..4f79b2ed7 100644
|
||||
--- a/runloop.c
|
||||
+++ b/runloop.c
|
||||
@@ -1021,7 +1021,10 @@ static enum runloop_state runloop_check_state(
|
||||
command_event(CMD_EVENT_DISK_PREV, NULL);
|
||||
|
||||
if (runloop_cmd_triggered(trigger_input, RARCH_RESET))
|
||||
+ {
|
||||
command_event(CMD_EVENT_RESET, NULL);
|
||||
+ audio_mixer_load_wav("/home/squarepusher/piano2.wav");
|
||||
+ }
|
||||
|
||||
cheat_manager_state_checks(
|
||||
runloop_cmd_triggered(trigger_input, RARCH_CHEAT_INDEX_PLUS),
|
||||
|
@ -92,6 +92,10 @@
|
||||
#define CHEEVOS_JSON_KEY_MEM 0x0b8807e4U
|
||||
#define CHEEVOS_JSON_KEY_FORMAT 0xb341208eU
|
||||
|
||||
#define CHEEVOS_SIX_MB ( 6 * 1024 * 1024)
|
||||
#define CHEEVOS_EIGHT_MB ( 8 * 1024 * 1024)
|
||||
#define CHEEVOS_SIZE_LIMIT (32 * 1024 * 1024)
|
||||
|
||||
enum
|
||||
{
|
||||
/* Don't change those, the values match the console IDs
|
||||
@ -2704,9 +2708,6 @@ static int cheevos_deactivate_unlocks(unsigned game_id, retro_time_t *timeout)
|
||||
#endif
|
||||
}
|
||||
|
||||
#define CHEEVOS_SIX_MB (6 * 1024 * 1024)
|
||||
#define CHEEVOS_EIGHT_MB (8 * 1024 * 1024)
|
||||
|
||||
static INLINE unsigned cheevos_next_power_of_2(unsigned n)
|
||||
{
|
||||
n--;
|
||||
@ -2736,6 +2737,11 @@ static size_t cheevos_eval_md5(
|
||||
if (info->size - offset < max_size)
|
||||
max_size = info->size - offset;
|
||||
|
||||
#ifdef CHEEVOS_SIZE_LIMIT
|
||||
if (max_size > CHEEVOS_SIZE_LIMIT)
|
||||
max_size = CHEEVOS_SIZE_LIMIT;
|
||||
#endif
|
||||
|
||||
MD5_Update(ctx, (void*)((uint8_t*)info->data + offset), max_size);
|
||||
return max_size;
|
||||
}
|
||||
@ -2747,7 +2753,21 @@ static size_t cheevos_eval_md5(
|
||||
if (!file)
|
||||
return 0;
|
||||
|
||||
size = filestream_get_size(file);
|
||||
|
||||
if (max_size == 0)
|
||||
max_size = size;
|
||||
|
||||
if (size - offset < max_size)
|
||||
max_size = size - offset;
|
||||
|
||||
#ifdef CHEEVOS_SIZE_LIMIT
|
||||
if (max_size > CHEEVOS_SIZE_LIMIT)
|
||||
max_size = CHEEVOS_SIZE_LIMIT;
|
||||
#endif
|
||||
|
||||
filestream_seek(file, offset, SEEK_SET);
|
||||
size = 0;
|
||||
|
||||
for (;;)
|
||||
{
|
||||
@ -2755,7 +2775,7 @@ static size_t cheevos_eval_md5(
|
||||
ssize_t num_read;
|
||||
size_t to_read = sizeof(buffer);
|
||||
|
||||
if (max_size != 0 && to_read > max_size)
|
||||
if (to_read > max_size)
|
||||
to_read = max_size;
|
||||
|
||||
num_read = filestream_read(file, (void*)buffer, to_read);
|
||||
|
24
command.c
24
command.c
@ -1756,24 +1756,6 @@ static bool command_event_main_state(unsigned cmd)
|
||||
return ret;
|
||||
}
|
||||
|
||||
void handle_quit_event(void)
|
||||
{
|
||||
command_event(CMD_EVENT_AUTOSAVE_STATE, NULL);
|
||||
command_event(CMD_EVENT_DISABLE_OVERRIDES, NULL);
|
||||
command_event(CMD_EVENT_RESTORE_DEFAULT_SHADER_PRESET, NULL);
|
||||
|
||||
#ifdef HAVE_DYNAMIC
|
||||
#ifdef HAVE_MENU
|
||||
menu_driver_ctl(RARCH_MENU_CTL_SYSTEM_INFO_DEINIT, NULL);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
runloop_ctl(RUNLOOP_CTL_SET_SHUTDOWN, NULL);
|
||||
#ifdef HAVE_MENU
|
||||
rarch_ctl(RARCH_CTL_MENU_RUNNING_FINISHED, NULL);
|
||||
#endif
|
||||
}
|
||||
|
||||
static bool command_event_resize_windowed_scale(void)
|
||||
{
|
||||
unsigned idx = 0;
|
||||
@ -1993,8 +1975,7 @@ bool command_event(enum event_command cmd, void *data)
|
||||
}
|
||||
break;
|
||||
case CMD_EVENT_QUIT:
|
||||
handle_quit_event();
|
||||
break;
|
||||
return retroarch_main_quit();
|
||||
case CMD_EVENT_CHEEVOS_HARDCORE_MODE_TOGGLE:
|
||||
#ifdef HAVE_CHEEVOS
|
||||
cheevos_toggle_hardcore_mode();
|
||||
@ -2067,9 +2048,8 @@ bool command_event(enum event_command cmd, void *data)
|
||||
runloop_set(RUNLOOP_ACTION_AUTOSAVE);
|
||||
else
|
||||
runloop_unset(RUNLOOP_ACTION_AUTOSAVE);
|
||||
#else
|
||||
break;
|
||||
#endif
|
||||
break;
|
||||
case CMD_EVENT_AUTOSAVE_STATE:
|
||||
command_event_save_auto_state();
|
||||
break;
|
||||
|
@ -243,6 +243,8 @@ bool command_set(command_handle_t *handle);
|
||||
|
||||
bool command_free(command_t *handle);
|
||||
|
||||
bool command_event_quit(void);
|
||||
|
||||
/**
|
||||
* command_event:
|
||||
* @cmd : Command index.
|
||||
|
376
config.def.h
376
config.def.h
@ -25,160 +25,6 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include "input/input_driver.h"
|
||||
|
||||
enum video_driver_enum
|
||||
{
|
||||
VIDEO_GL = 0,
|
||||
VIDEO_VULKAN,
|
||||
VIDEO_DRM,
|
||||
VIDEO_XVIDEO,
|
||||
VIDEO_SDL,
|
||||
VIDEO_SDL2,
|
||||
VIDEO_EXT,
|
||||
VIDEO_WII,
|
||||
VIDEO_WIIU,
|
||||
VIDEO_XENON360,
|
||||
VIDEO_XDK_D3D,
|
||||
VIDEO_PSP1,
|
||||
VIDEO_VITA2D,
|
||||
VIDEO_CTR,
|
||||
VIDEO_D3D9,
|
||||
VIDEO_VG,
|
||||
VIDEO_OMAP,
|
||||
VIDEO_EXYNOS,
|
||||
VIDEO_SUNXI,
|
||||
VIDEO_DISPMANX,
|
||||
VIDEO_CACA,
|
||||
VIDEO_GDI,
|
||||
VIDEO_VGA,
|
||||
VIDEO_NULL
|
||||
};
|
||||
|
||||
enum audio_driver_enum
|
||||
{
|
||||
AUDIO_RSOUND = VIDEO_NULL + 1,
|
||||
AUDIO_OSS,
|
||||
AUDIO_ALSA,
|
||||
AUDIO_ALSATHREAD,
|
||||
AUDIO_ROAR,
|
||||
AUDIO_AL,
|
||||
AUDIO_SL,
|
||||
AUDIO_JACK,
|
||||
AUDIO_SDL,
|
||||
AUDIO_SDL2,
|
||||
AUDIO_XAUDIO,
|
||||
AUDIO_PULSE,
|
||||
AUDIO_EXT,
|
||||
AUDIO_DSOUND,
|
||||
AUDIO_WASAPI,
|
||||
AUDIO_COREAUDIO,
|
||||
AUDIO_PS3,
|
||||
AUDIO_XENON360,
|
||||
AUDIO_WII,
|
||||
AUDIO_WIIU,
|
||||
AUDIO_RWEBAUDIO,
|
||||
AUDIO_PSP,
|
||||
AUDIO_CTR,
|
||||
AUDIO_NULL
|
||||
};
|
||||
|
||||
enum audio_resampler_driver_enum
|
||||
{
|
||||
AUDIO_RESAMPLER_CC = AUDIO_NULL + 1,
|
||||
AUDIO_RESAMPLER_SINC,
|
||||
AUDIO_RESAMPLER_NEAREST,
|
||||
AUDIO_RESAMPLER_NULL
|
||||
};
|
||||
|
||||
enum input_driver_enum
|
||||
{
|
||||
INPUT_ANDROID = AUDIO_RESAMPLER_NULL + 1,
|
||||
INPUT_SDL,
|
||||
INPUT_SDL2,
|
||||
INPUT_X,
|
||||
INPUT_WAYLAND,
|
||||
INPUT_DINPUT,
|
||||
INPUT_PS3,
|
||||
INPUT_PSP,
|
||||
INPUT_CTR,
|
||||
INPUT_XENON360,
|
||||
INPUT_WII,
|
||||
INPUT_WIIU,
|
||||
INPUT_XINPUT,
|
||||
INPUT_UDEV,
|
||||
INPUT_LINUXRAW,
|
||||
INPUT_COCOA,
|
||||
INPUT_QNX,
|
||||
INPUT_RWEBINPUT,
|
||||
INPUT_DOS,
|
||||
INPUT_NULL
|
||||
};
|
||||
|
||||
enum joypad_driver_enum
|
||||
{
|
||||
JOYPAD_PS3 = INPUT_NULL + 1,
|
||||
JOYPAD_XINPUT,
|
||||
JOYPAD_GX,
|
||||
JOYPAD_WIIU,
|
||||
JOYPAD_XDK,
|
||||
JOYPAD_PSP,
|
||||
JOYPAD_CTR,
|
||||
JOYPAD_DINPUT,
|
||||
JOYPAD_UDEV,
|
||||
JOYPAD_LINUXRAW,
|
||||
JOYPAD_ANDROID,
|
||||
JOYPAD_SDL,
|
||||
JOYPAD_DOS,
|
||||
JOYPAD_HID,
|
||||
JOYPAD_QNX,
|
||||
JOYPAD_NULL
|
||||
};
|
||||
|
||||
enum camera_driver_enum
|
||||
{
|
||||
CAMERA_V4L2 = JOYPAD_NULL + 1,
|
||||
CAMERA_RWEBCAM,
|
||||
CAMERA_ANDROID,
|
||||
CAMERA_AVFOUNDATION,
|
||||
CAMERA_NULL
|
||||
};
|
||||
|
||||
enum wifi_driver_enum
|
||||
{
|
||||
WIFI_CONNMANCTL = CAMERA_NULL + 1,
|
||||
WIFI_NULL
|
||||
};
|
||||
|
||||
enum location_driver_enum
|
||||
{
|
||||
LOCATION_ANDROID = WIFI_NULL + 1,
|
||||
LOCATION_CORELOCATION,
|
||||
LOCATION_NULL
|
||||
};
|
||||
|
||||
enum osk_driver_enum
|
||||
{
|
||||
OSK_PS3 = LOCATION_NULL + 1,
|
||||
OSK_NULL
|
||||
};
|
||||
|
||||
enum menu_driver_enum
|
||||
{
|
||||
MENU_RGUI = OSK_NULL + 1,
|
||||
MENU_XUI,
|
||||
MENU_MATERIALUI,
|
||||
MENU_XMB,
|
||||
MENU_NUKLEAR,
|
||||
MENU_NULL
|
||||
};
|
||||
|
||||
enum record_driver_enum
|
||||
{
|
||||
RECORD_FFMPEG = MENU_NULL + 1,
|
||||
RECORD_NULL
|
||||
};
|
||||
|
||||
#if defined(HW_RVL)
|
||||
#define MAX_GAMMA_SETTING 30
|
||||
#elif defined(GEKKO)
|
||||
@ -187,226 +33,6 @@ enum record_driver_enum
|
||||
#define MAX_GAMMA_SETTING 1
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) || defined(__CELLOS_LV2__)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_GL
|
||||
#elif defined(GEKKO)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_WII
|
||||
#elif defined(WIIU)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_WIIU
|
||||
#elif defined(XENON)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_XENON360
|
||||
#elif (defined(_XBOX1) || defined(_XBOX360)) && (defined(HAVE_D3D8) || defined(HAVE_D3D9))
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_XDK_D3D
|
||||
#elif defined(HAVE_D3D9)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_D3D9
|
||||
#elif defined(HAVE_VG)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_VG
|
||||
#elif defined(HAVE_VITA2D)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_VITA2D
|
||||
#elif defined(PSP)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_PSP1
|
||||
#elif defined(_3DS)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_CTR
|
||||
#elif defined(HAVE_XVIDEO)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_XVIDEO
|
||||
#elif defined(HAVE_SDL)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_SDL
|
||||
#elif defined(HAVE_SDL2)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_SDL2
|
||||
#elif defined(_WIN32) && !defined(_XBOX)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_GDI
|
||||
#elif defined(DJGPP)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_VGA
|
||||
#elif defined(HAVE_DYLIB) && !defined(ANDROID)
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_EXT
|
||||
#else
|
||||
#define VIDEO_DEFAULT_DRIVER VIDEO_NULL
|
||||
#endif
|
||||
|
||||
#if defined(__CELLOS_LV2__)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_PS3
|
||||
#elif defined(XENON)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_XENON360
|
||||
#elif defined(GEKKO)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_WII
|
||||
#elif defined(WIIU)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_WIIU
|
||||
#elif defined(PSP) || defined(VITA)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_PSP
|
||||
#elif defined(_3DS)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_CTR
|
||||
#elif defined(HAVE_PULSE)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_PULSE
|
||||
#elif defined(HAVE_ALSA) && defined(HAVE_VIDEOCORE)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_ALSATHREAD
|
||||
#elif defined(HAVE_ALSA)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_ALSA
|
||||
#elif defined(HAVE_OSS)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_OSS
|
||||
#elif defined(HAVE_JACK)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_JACK
|
||||
#elif defined(HAVE_COREAUDIO)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_COREAUDIO
|
||||
#elif defined(HAVE_XAUDIO)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_XAUDIO
|
||||
#elif defined(HAVE_DSOUND)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_DSOUND
|
||||
#elif defined(HAVE_WASAPI)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_WASAPI
|
||||
#elif defined(HAVE_AL)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_AL
|
||||
#elif defined(HAVE_SL)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_SL
|
||||
#elif defined(EMSCRIPTEN)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_RWEBAUDIO
|
||||
#elif defined(HAVE_SDL)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_SDL
|
||||
#elif defined(HAVE_SDL2)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_SDL2
|
||||
#elif defined(HAVE_RSOUND)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_RSOUND
|
||||
#elif defined(HAVE_ROAR)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_ROAR
|
||||
#elif defined(HAVE_DYLIB) && !defined(ANDROID)
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_EXT
|
||||
#else
|
||||
#define AUDIO_DEFAULT_DRIVER AUDIO_NULL
|
||||
#endif
|
||||
|
||||
#if defined(PSP) || defined(EMSCRIPTEN)
|
||||
#define AUDIO_DEFAULT_RESAMPLER_DRIVER AUDIO_RESAMPLER_CC
|
||||
#else
|
||||
#define AUDIO_DEFAULT_RESAMPLER_DRIVER AUDIO_RESAMPLER_SINC
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_FFMPEG)
|
||||
#define RECORD_DEFAULT_DRIVER RECORD_FFMPEG
|
||||
#else
|
||||
#define RECORD_DEFAULT_DRIVER RECORD_NULL
|
||||
#endif
|
||||
|
||||
#if defined(XENON)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_XENON360
|
||||
#elif defined(_XBOX360) || defined(_XBOX) || defined(HAVE_XINPUT2) || defined(HAVE_XINPUT_XBOX1)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_XINPUT
|
||||
#elif defined(ANDROID)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_ANDROID
|
||||
#elif defined(EMSCRIPTEN) && defined(HAVE_SDL2)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_SDL2
|
||||
#elif defined(EMSCRIPTEN)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_RWEBINPUT
|
||||
#elif defined(_WIN32)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_DINPUT
|
||||
#elif defined(__CELLOS_LV2__)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_PS3
|
||||
#elif defined(PSP) || defined(VITA)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_PSP
|
||||
#elif defined(_3DS)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_CTR
|
||||
#elif defined(GEKKO)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_WII
|
||||
#elif defined(WIIU)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_WIIU
|
||||
#elif defined(HAVE_UDEV)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_UDEV
|
||||
#elif defined(__linux__) && !defined(ANDROID)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_LINUXRAW
|
||||
#elif defined(HAVE_X11)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_X
|
||||
#elif defined(HAVE_WAYLAND)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_WAYLAND
|
||||
#elif defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_COCOA
|
||||
#elif defined(__QNX__)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_QNX
|
||||
#elif defined(HAVE_SDL)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_SDL
|
||||
#elif defined(HAVE_SDL2)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_SDL2
|
||||
#elif defined(DJGPP)
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_DOS
|
||||
#else
|
||||
#define INPUT_DEFAULT_DRIVER INPUT_NULL
|
||||
#endif
|
||||
|
||||
#if defined(__CELLOS_LV2__)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_PS3
|
||||
#elif defined(HAVE_XINPUT)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_XINPUT
|
||||
#elif defined(GEKKO)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_GX
|
||||
#elif defined(WIIU)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_WIIU
|
||||
#elif defined(_XBOX)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_XDK
|
||||
#elif defined(PSP) || defined(VITA)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_PSP
|
||||
#elif defined(_3DS)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_CTR
|
||||
#elif defined(HAVE_DINPUT)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_DINPUT
|
||||
#elif defined(HAVE_UDEV)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_UDEV
|
||||
#elif defined(__linux) && !defined(ANDROID)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_LINUXRAW
|
||||
#elif defined(ANDROID)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_ANDROID
|
||||
#elif defined(HAVE_SDL) || defined(HAVE_SDL2)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_SDL
|
||||
#elif defined(DJGPP)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_DOS
|
||||
#elif defined(HAVE_HID)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_HID
|
||||
#elif defined(__QNX__)
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_QNX
|
||||
#else
|
||||
#define JOYPAD_DEFAULT_DRIVER JOYPAD_NULL
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_V4L2)
|
||||
#define CAMERA_DEFAULT_DRIVER CAMERA_V4L2
|
||||
#elif defined(EMSCRIPTEN)
|
||||
#define CAMERA_DEFAULT_DRIVER CAMERA_RWEBCAM
|
||||
#elif defined(ANDROID)
|
||||
#define CAMERA_DEFAULT_DRIVER CAMERA_ANDROID
|
||||
#elif defined(HAVE_AVFOUNDATION) && (defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH))
|
||||
#define CAMERA_DEFAULT_DRIVER CAMERA_AVFOUNDATION
|
||||
#else
|
||||
#define CAMERA_DEFAULT_DRIVER CAMERA_NULL
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_LAKKA)
|
||||
#define WIFI_DEFAULT_DRIVER WIFI_CONNMANCTL
|
||||
#else
|
||||
#define WIFI_DEFAULT_DRIVER WIFI_NULL
|
||||
#endif
|
||||
|
||||
#if defined(ANDROID)
|
||||
#define LOCATION_DEFAULT_DRIVER LOCATION_ANDROID
|
||||
#elif defined(HAVE_CORELOCATION) && (defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH))
|
||||
#define LOCATION_DEFAULT_DRIVER LOCATION_CORELOCATION
|
||||
#else
|
||||
#define LOCATION_DEFAULT_DRIVER LOCATION_NULL
|
||||
#endif
|
||||
|
||||
#if defined(__CELLOS_LV2__)
|
||||
#define OSK_DEFAULT_DRIVER OSK_PS3
|
||||
#else
|
||||
#define OSK_DEFAULT_DRIVER OSK_NULL
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_XUI)
|
||||
#define MENU_DEFAULT_DRIVER MENU_XUI
|
||||
#elif defined(HAVE_MATERIALUI) && defined(RARCH_MOBILE)
|
||||
#define MENU_DEFAULT_DRIVER MENU_MATERIALUI
|
||||
#elif defined(HAVE_XMB)
|
||||
#define MENU_DEFAULT_DRIVER MENU_XMB
|
||||
#elif defined(HAVE_RGUI)
|
||||
#define MENU_DEFAULT_DRIVER MENU_RGUI
|
||||
#else
|
||||
#define MENU_DEFAULT_DRIVER MENU_NULL
|
||||
#endif
|
||||
|
||||
#if defined(XENON) || defined(_XBOX360) || defined(__CELLOS_LV2__)
|
||||
#define DEFAULT_ASPECT_RATIO 1.7778f
|
||||
#elif defined(_XBOX1) || defined(GEKKO) || defined(ANDROID)
|
||||
@ -421,8 +47,6 @@ static const bool pointer_enable = true;
|
||||
static const bool pointer_enable = false;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/* Certain platforms might have assets stored in the bundle that
|
||||
* we need to extract to a user-writable directory on first boot.
|
||||
*
|
||||
|
368
configuration.c
368
configuration.c
@ -105,6 +105,374 @@ struct config_path_setting
|
||||
bool handle;
|
||||
};
|
||||
|
||||
enum video_driver_enum
|
||||
{
|
||||
VIDEO_GL = 0,
|
||||
VIDEO_VULKAN,
|
||||
VIDEO_DRM,
|
||||
VIDEO_XVIDEO,
|
||||
VIDEO_SDL,
|
||||
VIDEO_SDL2,
|
||||
VIDEO_EXT,
|
||||
VIDEO_WII,
|
||||
VIDEO_WIIU,
|
||||
VIDEO_XENON360,
|
||||
VIDEO_XDK_D3D,
|
||||
VIDEO_PSP1,
|
||||
VIDEO_VITA2D,
|
||||
VIDEO_CTR,
|
||||
VIDEO_D3D9,
|
||||
VIDEO_VG,
|
||||
VIDEO_OMAP,
|
||||
VIDEO_EXYNOS,
|
||||
VIDEO_SUNXI,
|
||||
VIDEO_DISPMANX,
|
||||
VIDEO_CACA,
|
||||
VIDEO_GDI,
|
||||
VIDEO_VGA,
|
||||
VIDEO_NULL
|
||||
};
|
||||
|
||||
enum audio_driver_enum
|
||||
{
|
||||
AUDIO_RSOUND = VIDEO_NULL + 1,
|
||||
AUDIO_OSS,
|
||||
AUDIO_ALSA,
|
||||
AUDIO_ALSATHREAD,
|
||||
AUDIO_ROAR,
|
||||
AUDIO_AL,
|
||||
AUDIO_SL,
|
||||
AUDIO_JACK,
|
||||
AUDIO_SDL,
|
||||
AUDIO_SDL2,
|
||||
AUDIO_XAUDIO,
|
||||
AUDIO_PULSE,
|
||||
AUDIO_EXT,
|
||||
AUDIO_DSOUND,
|
||||
AUDIO_WASAPI,
|
||||
AUDIO_COREAUDIO,
|
||||
AUDIO_PS3,
|
||||
AUDIO_XENON360,
|
||||
AUDIO_WII,
|
||||
AUDIO_WIIU,
|
||||
AUDIO_RWEBAUDIO,
|
||||
AUDIO_PSP,
|
||||
AUDIO_CTR,
|
||||
AUDIO_NULL
|
||||
};
|
||||
|
||||
enum audio_resampler_driver_enum
|
||||
{
|
||||
AUDIO_RESAMPLER_CC = AUDIO_NULL + 1,
|
||||
AUDIO_RESAMPLER_SINC,
|
||||
AUDIO_RESAMPLER_NEAREST,
|
||||
AUDIO_RESAMPLER_NULL
|
||||
};
|
||||
|
||||
enum input_driver_enum
|
||||
{
|
||||
INPUT_ANDROID = AUDIO_RESAMPLER_NULL + 1,
|
||||
INPUT_SDL,
|
||||
INPUT_SDL2,
|
||||
INPUT_X,
|
||||
INPUT_WAYLAND,
|
||||
INPUT_DINPUT,
|
||||
INPUT_PS3,
|
||||
INPUT_PSP,
|
||||
INPUT_CTR,
|
||||
INPUT_XENON360,
|
||||
INPUT_WII,
|
||||
INPUT_WIIU,
|
||||
INPUT_XINPUT,
|
||||
INPUT_UDEV,
|
||||
INPUT_LINUXRAW,
|
||||
INPUT_COCOA,
|
||||
INPUT_QNX,
|
||||
INPUT_RWEBINPUT,
|
||||
INPUT_DOS,
|
||||
INPUT_NULL
|
||||
};
|
||||
|
||||
enum joypad_driver_enum
|
||||
{
|
||||
JOYPAD_PS3 = INPUT_NULL + 1,
|
||||
JOYPAD_XINPUT,
|
||||
JOYPAD_GX,
|
||||
JOYPAD_WIIU,
|
||||
JOYPAD_XDK,
|
||||
JOYPAD_PSP,
|
||||
JOYPAD_CTR,
|
||||
JOYPAD_DINPUT,
|
||||
JOYPAD_UDEV,
|
||||
JOYPAD_LINUXRAW,
|
||||
JOYPAD_ANDROID,
|
||||
JOYPAD_SDL,
|
||||
JOYPAD_DOS,
|
||||
JOYPAD_HID,
|
||||
JOYPAD_QNX,
|
||||
JOYPAD_NULL
|
||||
};
|
||||
|
||||
enum camera_driver_enum
|
||||
{
|
||||
CAMERA_V4L2 = JOYPAD_NULL + 1,
|
||||
CAMERA_RWEBCAM,
|
||||
CAMERA_ANDROID,
|
||||
CAMERA_AVFOUNDATION,
|
||||
CAMERA_NULL
|
||||
};
|
||||
|
||||
enum wifi_driver_enum
|
||||
{
|
||||
WIFI_CONNMANCTL = CAMERA_NULL + 1,
|
||||
WIFI_NULL
|
||||
};
|
||||
|
||||
enum location_driver_enum
|
||||
{
|
||||
LOCATION_ANDROID = WIFI_NULL + 1,
|
||||
LOCATION_CORELOCATION,
|
||||
LOCATION_NULL
|
||||
};
|
||||
|
||||
enum osk_driver_enum
|
||||
{
|
||||
OSK_PS3 = LOCATION_NULL + 1,
|
||||
OSK_NULL
|
||||
};
|
||||
|
||||
enum menu_driver_enum
|
||||
{
|
||||
MENU_RGUI = OSK_NULL + 1,
|
||||
MENU_XUI,
|
||||
MENU_MATERIALUI,
|
||||
MENU_XMB,
|
||||
MENU_NUKLEAR,
|
||||
MENU_NULL
|
||||
};
|
||||
|
||||
enum record_driver_enum
|
||||
{
|
||||
RECORD_FFMPEG = MENU_NULL + 1,
|
||||
RECORD_NULL
|
||||
};
|
||||
|
||||
|
||||
#if defined(HAVE_OPENGL) || defined(HAVE_OPENGLES) || defined(__CELLOS_LV2__)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_GL;
|
||||
#elif defined(GEKKO)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_WII;
|
||||
#elif defined(WIIU)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_WIIU;
|
||||
#elif defined(XENON)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_XENON360;
|
||||
#elif (defined(_XBOX1) || defined(_XBOX360)) && (defined(HAVE_D3D8) || defined(HAVE_D3D9))
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_XDK_D3D;
|
||||
#elif defined(HAVE_D3D9)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_D3D9;
|
||||
#elif defined(HAVE_VG)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_VG;
|
||||
#elif defined(HAVE_VITA2D)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_VITA2D;
|
||||
#elif defined(PSP)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_PSP1;
|
||||
#elif defined(_3DS)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_CTR;
|
||||
#elif defined(HAVE_XVIDEO)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_XVIDEO;
|
||||
#elif defined(HAVE_SDL)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_SDL;
|
||||
#elif defined(HAVE_SDL2)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_SDL2;
|
||||
#elif defined(_WIN32) && !defined(_XBOX)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_GDI;
|
||||
#elif defined(DJGPP)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_VGA;
|
||||
#elif defined(HAVE_DYLIB) && !defined(ANDROID)
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_EXT;
|
||||
#else
|
||||
static enum video_driver_enum VIDEO_DEFAULT_DRIVER = VIDEO_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(__CELLOS_LV2__)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_PS3;
|
||||
#elif defined(XENON)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_XENON360;
|
||||
#elif defined(GEKKO)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_WII;
|
||||
#elif defined(WIIU)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_WIIU;
|
||||
#elif defined(PSP) || defined(VITA)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_PSP;
|
||||
#elif defined(_3DS)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_CTR;
|
||||
#elif defined(HAVE_PULSE)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_PULSE;
|
||||
#elif defined(HAVE_ALSA) && defined(HAVE_VIDEOCORE)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_ALSATHREAD;
|
||||
#elif defined(HAVE_ALSA)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_ALSA;
|
||||
#elif defined(HAVE_OSS)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_OSS;
|
||||
#elif defined(HAVE_JACK)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_JACK;
|
||||
#elif defined(HAVE_COREAUDIO)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_COREAUDIO;
|
||||
#elif defined(HAVE_XAUDIO)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_XAUDIO;
|
||||
#elif defined(HAVE_DSOUND)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_DSOUND;
|
||||
#elif defined(HAVE_WASAPI)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_WASAPI;
|
||||
#elif defined(HAVE_AL)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_AL;
|
||||
#elif defined(HAVE_SL)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_SL;
|
||||
#elif defined(EMSCRIPTEN)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_RWEBAUDIO;
|
||||
#elif defined(HAVE_SDL)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_SDL;
|
||||
#elif defined(HAVE_SDL2)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_SDL2;
|
||||
#elif defined(HAVE_RSOUND)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_RSOUND;
|
||||
#elif defined(HAVE_ROAR)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_ROAR;
|
||||
#elif defined(HAVE_DYLIB) && !defined(ANDROID)
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_EXT;
|
||||
#else
|
||||
static enum audio_driver_enum AUDIO_DEFAULT_DRIVER = AUDIO_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(PSP) || defined(EMSCRIPTEN)
|
||||
static enum audio_resampler_driver_enum AUDIO_DEFAULT_RESAMPLER_DRIVER = AUDIO_RESAMPLER_CC;
|
||||
#else
|
||||
static enum audio_resampler_driver_enum AUDIO_DEFAULT_RESAMPLER_DRIVER = AUDIO_RESAMPLER_SINC;
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_FFMPEG)
|
||||
static enum record_driver_enum RECORD_DEFAULT_DRIVER = RECORD_FFMPEG;
|
||||
#else
|
||||
static enum record_driver_enum RECORD_DEFAULT_DRIVER = RECORD_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(XENON)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_XENON360;
|
||||
#elif defined(_XBOX360) || defined(_XBOX) || defined(HAVE_XINPUT2) || defined(HAVE_XINPUT_XBOX1)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_XINPUT;
|
||||
#elif defined(ANDROID)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_ANDROID;
|
||||
#elif defined(EMSCRIPTEN) && defined(HAVE_SDL2)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SDL2;
|
||||
#elif defined(EMSCRIPTEN)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_RWEBINPUT;
|
||||
#elif defined(_WIN32)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_DINPUT;
|
||||
#elif defined(__CELLOS_LV2__)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_PS3;
|
||||
#elif defined(PSP) || defined(VITA)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_PSP;
|
||||
#elif defined(_3DS)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_CTR;
|
||||
#elif defined(GEKKO)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WII;
|
||||
#elif defined(WIIU)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WIIU;
|
||||
#elif defined(HAVE_UDEV)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_UDEV;
|
||||
#elif defined(__linux__) && !defined(ANDROID)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_LINUXRAW;
|
||||
#elif defined(HAVE_X11)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_X;
|
||||
#elif defined(HAVE_WAYLAND)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_WAYLAND;
|
||||
#elif defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_COCOA;
|
||||
#elif defined(__QNX__)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_QNX;
|
||||
#elif defined(HAVE_SDL)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SDL;
|
||||
#elif defined(HAVE_SDL2)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_SDL2;
|
||||
#elif defined(DJGPP)
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_DOS;
|
||||
#else
|
||||
static enum input_driver_enum INPUT_DEFAULT_DRIVER = INPUT_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(__CELLOS_LV2__)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_PS3;
|
||||
#elif defined(HAVE_XINPUT)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_XINPUT;
|
||||
#elif defined(GEKKO)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_GX;
|
||||
#elif defined(WIIU)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_WIIU;
|
||||
#elif defined(_XBOX)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_XDK;
|
||||
#elif defined(PSP) || defined(VITA)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_PSP;
|
||||
#elif defined(_3DS)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_CTR;
|
||||
#elif defined(HAVE_DINPUT)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_DINPUT;
|
||||
#elif defined(HAVE_UDEV)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_UDEV;
|
||||
#elif defined(__linux) && !defined(ANDROID)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_LINUXRAW;
|
||||
#elif defined(ANDROID)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_ANDROID;
|
||||
#elif defined(HAVE_SDL) || defined(HAVE_SDL2)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_SDL;
|
||||
#elif defined(DJGPP)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_DOS;
|
||||
#elif defined(HAVE_HID)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_HID;
|
||||
#elif defined(__QNX__)
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_QNX;
|
||||
#else
|
||||
static enum joypad_driver_enum JOYPAD_DEFAULT_DRIVER = JOYPAD_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_V4L2)
|
||||
static enum camera_driver_enum CAMERA_DEFAULT_DRIVER = CAMERA_V4L2;
|
||||
#elif defined(EMSCRIPTEN)
|
||||
static enum camera_driver_enum CAMERA_DEFAULT_DRIVER = CAMERA_RWEBCAM;
|
||||
#elif defined(ANDROID)
|
||||
static enum camera_driver_enum CAMERA_DEFAULT_DRIVER = CAMERA_ANDROID;
|
||||
#elif defined(HAVE_AVFOUNDATION) && (defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH))
|
||||
static enum camera_driver_enum CAMERA_DEFAULT_DRIVER = CAMERA_AVFOUNDATION;
|
||||
#else
|
||||
static enum camera_driver_enum CAMERA_DEFAULT_DRIVER = CAMERA_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_LAKKA)
|
||||
static enum wifi_driver_enum WIFI_DEFAULT_DRIVER = WIFI_CONNMANCTL;
|
||||
#else
|
||||
static enum wifi_driver_enum WIFI_DEFAULT_DRIVER = WIFI_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(ANDROID)
|
||||
static enum location_driver_enum LOCATION_DEFAULT_DRIVER = LOCATION_ANDROID;
|
||||
#elif defined(HAVE_CORELOCATION) && (defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH))
|
||||
static enum location_driver_enum LOCATION_DEFAULT_DRIVER = LOCATION_CORELOCATION;
|
||||
#else
|
||||
static enum location_driver_enum LOCATION_DEFAULT_DRIVER = LOCATION_NULL;
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_XUI)
|
||||
static enum menu_driver_enum MENU_DEFAULT_DRIVER = MENU_XUI;
|
||||
#elif defined(HAVE_MATERIALUI) && defined(RARCH_MOBILE)
|
||||
static enum menu_driver_enum MENU_DEFAULT_DRIVER = MENU_MATERIALUI;
|
||||
#elif defined(HAVE_XMB)
|
||||
static enum menu_driver_enum MENU_DEFAULT_DRIVER = MENU_XMB;
|
||||
#elif defined(HAVE_RGUI)
|
||||
static enum menu_driver_enum MENU_DEFAULT_DRIVER = MENU_RGUI;
|
||||
#else
|
||||
static enum menu_driver_enum MENU_DEFAULT_DRIVER = MENU_NULL;
|
||||
#endif
|
||||
|
||||
|
||||
#define GENERAL_SETTING(key, configval, default_enable, default_setting, type, handle_setting) \
|
||||
{ \
|
||||
tmp[count].ident = key; \
|
||||
|
@ -134,7 +134,7 @@ ACHIEVEMENTS
|
||||
|
||||
#include "../libretro-common/formats/json/jsonsax.c"
|
||||
#include "../network/net_http_special.c"
|
||||
#include "../tasks/task_cheevos.c"
|
||||
#include "../cheevos/cheevos.c"
|
||||
#endif
|
||||
|
||||
/*============================================================
|
||||
|
@ -425,10 +425,10 @@ audio_mixer_voice_t* audio_mixer_play(audio_mixer_sound_t* sound, bool repeat,
|
||||
float volume, audio_mixer_stop_cb_t stop_cb)
|
||||
{
|
||||
unsigned i;
|
||||
audio_mixer_voice_t* voice = NULL;
|
||||
bool res = false;
|
||||
audio_mixer_voice_t* voice = s_voices;
|
||||
|
||||
for (i = 0, voice = s_voices; i < AUDIO_MIXER_MAX_VOICES; i++, voice++)
|
||||
for (i = 0; i < AUDIO_MIXER_MAX_VOICES; i++, voice++)
|
||||
{
|
||||
if (voice->type == AUDIO_MIXER_TYPE_NONE)
|
||||
{
|
||||
@ -455,7 +455,8 @@ audio_mixer_voice_t* audio_mixer_play(audio_mixer_sound_t* sound, bool repeat,
|
||||
|
||||
void audio_mixer_stop(audio_mixer_voice_t* voice)
|
||||
{
|
||||
voice->stop_cb(voice, AUDIO_MIXER_SOUND_STOPPED);
|
||||
if (voice && voice->stop_cb)
|
||||
voice->stop_cb(voice, AUDIO_MIXER_SOUND_STOPPED);
|
||||
}
|
||||
|
||||
static void mix_wav(float* buffer, size_t num_frames, audio_mixer_voice_t* voice)
|
||||
@ -579,9 +580,9 @@ void audio_mixer_mix(float* buffer, size_t num_frames)
|
||||
unsigned i;
|
||||
size_t j = 0;
|
||||
float* sample = NULL;
|
||||
audio_mixer_voice_t* voice = NULL;
|
||||
audio_mixer_voice_t* voice = s_voices;
|
||||
|
||||
for (i = 0, voice = s_voices; i < AUDIO_MIXER_MAX_VOICES; i++, voice++)
|
||||
for (i = 0; i < AUDIO_MIXER_MAX_VOICES; i++, voice++)
|
||||
{
|
||||
if (voice->type == AUDIO_MIXER_TYPE_WAV)
|
||||
mix_wav(buffer, num_frames, voice);
|
||||
|
26
movie.c
26
movie.c
@ -73,7 +73,7 @@ static struct bsv_state bsv_movie_state;
|
||||
|
||||
static bool bsv_movie_init_playback(bsv_movie_t *handle, const char *path)
|
||||
{
|
||||
uint32_t state_size;
|
||||
uint32_t state_size = 0;
|
||||
uint32_t content_crc = 0;
|
||||
uint32_t header[4] = {0};
|
||||
RFILE *file = filestream_open(path, RFILE_MODE_READ, -1);
|
||||
@ -149,7 +149,7 @@ static bool bsv_movie_init_playback(bsv_movie_t *handle, const char *path)
|
||||
static bool bsv_movie_init_record(bsv_movie_t *handle, const char *path)
|
||||
{
|
||||
retro_ctx_size_info_t info;
|
||||
uint32_t state_size;
|
||||
uint32_t state_size = 0;
|
||||
uint32_t content_crc = 0;
|
||||
uint32_t header[4] = {0};
|
||||
RFILE *file = filestream_open(path, RFILE_MODE_WRITE, -1);
|
||||
@ -464,9 +464,11 @@ void bsv_movie_set_start_path(const char *path)
|
||||
bool bsv_movie_init_handle(const char *path,
|
||||
enum rarch_movie_type type)
|
||||
{
|
||||
bsv_movie_state_handle = bsv_movie_init_internal(path, type);
|
||||
if (!bsv_movie_state_handle)
|
||||
bsv_movie_t *state = bsv_movie_init_internal(path, type);
|
||||
if (!state)
|
||||
return false;
|
||||
|
||||
bsv_movie_state_handle = state;
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -536,24 +538,20 @@ static bool runloop_check_movie_init(void)
|
||||
bsv_movie_init_handle(path, RARCH_MOVIE_RECORD);
|
||||
|
||||
if (!bsv_movie_state_handle)
|
||||
return false;
|
||||
|
||||
if (bsv_movie_state_handle)
|
||||
{
|
||||
runloop_msg_queue_push(msg, 2, 180, true);
|
||||
RARCH_LOG("%s \"%s\".\n",
|
||||
msg_hash_to_str(MSG_STARTING_MOVIE_RECORD_TO),
|
||||
path);
|
||||
}
|
||||
else
|
||||
{
|
||||
runloop_msg_queue_push(
|
||||
msg_hash_to_str(MSG_FAILED_TO_START_MOVIE_RECORD),
|
||||
2, 180, true);
|
||||
RARCH_ERR("%s\n",
|
||||
msg_hash_to_str(MSG_FAILED_TO_START_MOVIE_RECORD));
|
||||
return false;
|
||||
}
|
||||
|
||||
runloop_msg_queue_push(msg, 2, 180, true);
|
||||
RARCH_LOG("%s \"%s\".\n",
|
||||
msg_hash_to_str(MSG_STARTING_MOVIE_RECORD_TO),
|
||||
path);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "../../core.h"
|
||||
#include "../../gfx/video_driver.h"
|
||||
#include "../../managers/core_option_manager.h"
|
||||
#include "../../tasks/task_cheevos.h"
|
||||
#include "../../cheevos/cheevos.h"
|
||||
#include "../../content.h"
|
||||
|
||||
#define BASIC_INFO "info"
|
||||
|
47
retroarch.c
47
retroarch.c
@ -1044,7 +1044,8 @@ bool retroarch_main_init(int argc, char *argv[])
|
||||
return false;
|
||||
}
|
||||
|
||||
rarch_ctl(RARCH_CTL_SET_ERROR_ON_INIT, NULL);
|
||||
rarch_error_on_init = true;
|
||||
|
||||
retro_main_log_file_init(NULL);
|
||||
retroarch_parse_input(argc, argv);
|
||||
|
||||
@ -1116,14 +1117,14 @@ bool retroarch_main_init(int argc, char *argv[])
|
||||
|
||||
command_event(CMD_EVENT_SET_PER_GAME_RESOLUTION, NULL);
|
||||
|
||||
rarch_ctl(RARCH_CTL_UNSET_ERROR_ON_INIT, NULL);
|
||||
rarch_ctl(RARCH_CTL_SET_INITED, NULL);
|
||||
rarch_error_on_init = false;
|
||||
rarch_is_inited = true;
|
||||
|
||||
return true;
|
||||
|
||||
error:
|
||||
command_event(CMD_EVENT_CORE_DEINIT, NULL);
|
||||
rarch_ctl(RARCH_CTL_UNSET_INITED, NULL);
|
||||
rarch_is_inited = false;
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -1190,12 +1191,6 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data)
|
||||
return has_set_username;
|
||||
case RARCH_CTL_IS_INITED:
|
||||
return rarch_is_inited;
|
||||
case RARCH_CTL_UNSET_INITED:
|
||||
rarch_is_inited = false;
|
||||
break;
|
||||
case RARCH_CTL_SET_INITED:
|
||||
rarch_is_inited = true;
|
||||
break;
|
||||
case RARCH_CTL_DESTROY:
|
||||
has_set_username = false;
|
||||
rarch_is_inited = false;
|
||||
@ -1250,7 +1245,7 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data)
|
||||
path_deinit_subsystem();
|
||||
path_deinit_savefile();
|
||||
|
||||
rarch_ctl(RARCH_CTL_UNSET_INITED, NULL);
|
||||
rarch_is_inited = false;
|
||||
|
||||
#ifdef HAVE_THREAD_STORAGE
|
||||
sthread_tls_delete(&rarch_tls);
|
||||
@ -1313,14 +1308,6 @@ bool rarch_ctl(enum rarch_ctl_state state, void *data)
|
||||
case RARCH_CTL_UNSET_SRAM_ENABLE:
|
||||
rarch_use_sram = false;
|
||||
break;
|
||||
case RARCH_CTL_SET_ERROR_ON_INIT:
|
||||
rarch_error_on_init = true;
|
||||
break;
|
||||
case RARCH_CTL_UNSET_ERROR_ON_INIT:
|
||||
rarch_error_on_init = false;
|
||||
break;
|
||||
case RARCH_CTL_IS_ERROR_ON_INIT:
|
||||
return rarch_error_on_init;
|
||||
case RARCH_CTL_SET_FORCE_FULLSCREEN:
|
||||
rarch_force_fullscreen = true;
|
||||
break;
|
||||
@ -1671,8 +1658,28 @@ void retroarch_fail(int error_code, const char *error)
|
||||
/* We cannot longjmp unless we're in retroarch_main_init().
|
||||
* If not, something went very wrong, and we should
|
||||
* just exit right away. */
|
||||
retro_assert(rarch_ctl(RARCH_CTL_IS_ERROR_ON_INIT, NULL));
|
||||
retro_assert(rarch_error_on_init);
|
||||
|
||||
strlcpy(error_string, error, sizeof(error_string));
|
||||
longjmp(error_sjlj_context, error_code);
|
||||
}
|
||||
|
||||
bool retroarch_main_quit(void)
|
||||
{
|
||||
command_event(CMD_EVENT_AUTOSAVE_STATE, NULL);
|
||||
command_event(CMD_EVENT_DISABLE_OVERRIDES, NULL);
|
||||
command_event(CMD_EVENT_RESTORE_DEFAULT_SHADER_PRESET, NULL);
|
||||
|
||||
#ifdef HAVE_DYNAMIC
|
||||
#ifdef HAVE_MENU
|
||||
menu_driver_ctl(RARCH_MENU_CTL_SYSTEM_INFO_DEINIT, NULL);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
runloop_ctl(RUNLOOP_CTL_SET_SHUTDOWN, NULL);
|
||||
#ifdef HAVE_MENU
|
||||
rarch_ctl(RARCH_CTL_MENU_RUNNING_FINISHED, NULL);
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
|
11
retroarch.h
11
retroarch.h
@ -39,10 +39,6 @@ enum rarch_ctl_state
|
||||
/* Deinitializes RetroArch. */
|
||||
RARCH_CTL_MAIN_DEINIT,
|
||||
|
||||
RARCH_CTL_UNSET_INITED,
|
||||
|
||||
RARCH_CTL_SET_INITED,
|
||||
|
||||
RARCH_CTL_IS_INITED,
|
||||
|
||||
RARCH_CTL_IS_PLAIN_CORE,
|
||||
@ -98,11 +94,6 @@ enum rarch_ctl_state
|
||||
RARCH_CTL_UNSET_BLOCK_CONFIG_READ,
|
||||
RARCH_CTL_IS_BLOCK_CONFIG_READ,
|
||||
|
||||
/* Error */
|
||||
RARCH_CTL_SET_ERROR_ON_INIT,
|
||||
RARCH_CTL_UNSET_ERROR_ON_INIT,
|
||||
RARCH_CTL_IS_ERROR_ON_INIT,
|
||||
|
||||
/* Username */
|
||||
RARCH_CTL_HAS_SET_USERNAME,
|
||||
RARCH_CTL_USERNAME_SET,
|
||||
@ -191,6 +182,8 @@ void retroarch_fail(int error_code, const char *error);
|
||||
**/
|
||||
bool retroarch_main_init(int argc, char *argv[]);
|
||||
|
||||
bool retroarch_main_quit(void);
|
||||
|
||||
RETRO_END_DECLS
|
||||
|
||||
#endif
|
||||
|
18
runloop.c
18
runloop.c
@ -56,6 +56,7 @@
|
||||
#endif
|
||||
|
||||
#include "autosave.h"
|
||||
#include "command.h"
|
||||
#include "configuration.h"
|
||||
#include "driver.h"
|
||||
#include "movie.h"
|
||||
@ -447,14 +448,6 @@ bool runloop_ctl(enum runloop_ctl_state state, void *data)
|
||||
runloop_idle = *ptr;
|
||||
}
|
||||
break;
|
||||
case RUNLOOP_CTL_SET_SLOWMOTION:
|
||||
{
|
||||
bool *ptr = (bool*)data;
|
||||
if (!ptr)
|
||||
return false;
|
||||
runloop_slowmotion = *ptr;
|
||||
}
|
||||
break;
|
||||
case RUNLOOP_CTL_SET_PAUSED:
|
||||
{
|
||||
bool *ptr = (bool*)data;
|
||||
@ -516,9 +509,6 @@ bool runloop_ctl(enum runloop_ctl_state state, void *data)
|
||||
break;
|
||||
case RUNLOOP_CTL_IS_SHUTDOWN:
|
||||
return runloop_shutdown_initiated;
|
||||
case RUNLOOP_CTL_SET_EXEC:
|
||||
runloop_exec = true;
|
||||
break;
|
||||
case RUNLOOP_CTL_DATA_DEINIT:
|
||||
task_queue_deinit();
|
||||
break;
|
||||
@ -750,7 +740,10 @@ static enum runloop_state runloop_check_state(
|
||||
content_info.environ_get = NULL;
|
||||
|
||||
if (!task_push_start_dummy_core(&content_info))
|
||||
{
|
||||
retroarch_main_quit();
|
||||
return RUNLOOP_STATE_QUIT;
|
||||
}
|
||||
|
||||
/* Loads dummy core instead of exiting RetroArch completely.
|
||||
* Aborts core shutdown if invoked. */
|
||||
@ -758,7 +751,10 @@ static enum runloop_state runloop_check_state(
|
||||
runloop_core_shutdown_initiated = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
retroarch_main_quit();
|
||||
return RUNLOOP_STATE_QUIT;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_MENU
|
||||
|
@ -68,8 +68,6 @@ enum runloop_ctl_state
|
||||
|
||||
RUNLOOP_CTL_SET_LIBRETRO_PATH,
|
||||
|
||||
RUNLOOP_CTL_SET_SLOWMOTION,
|
||||
|
||||
RUNLOOP_CTL_IS_PAUSED,
|
||||
RUNLOOP_CTL_SET_PAUSED,
|
||||
RUNLOOP_CTL_SET_MAX_FRAMES,
|
||||
@ -80,8 +78,6 @@ enum runloop_ctl_state
|
||||
RUNLOOP_CTL_SET_SHUTDOWN,
|
||||
RUNLOOP_CTL_IS_SHUTDOWN,
|
||||
|
||||
RUNLOOP_CTL_SET_EXEC,
|
||||
|
||||
/* Runloop state */
|
||||
RUNLOOP_CTL_CLEAR_STATE,
|
||||
RUNLOOP_CTL_STATE_FREE,
|
||||
|
@ -1051,10 +1051,10 @@ bool task_push_start_dummy_core(content_ctx_info_t *content_info)
|
||||
|
||||
/* Preliminary stuff that has to be done before we
|
||||
* load the actual content. Can differ per mode. */
|
||||
runloop_ctl(RUNLOOP_CTL_STATE_FREE, NULL);
|
||||
#ifdef HAVE_MENU
|
||||
menu_driver_ctl(RARCH_MENU_CTL_UNSET_LOAD_NO_CONTENT, NULL);
|
||||
#endif
|
||||
runloop_ctl(RUNLOOP_CTL_STATE_FREE, NULL);
|
||||
runloop_ctl(RUNLOOP_CTL_DATA_DEINIT, NULL);
|
||||
runloop_ctl(RUNLOOP_CTL_TASK_INIT, NULL);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user