From 1efe0ae29b39b5853c7c1018dce5bb6c2b2698f4 Mon Sep 17 00:00:00 2001 From: Ensiform Date: Fri, 3 Nov 2017 20:41:51 -0500 Subject: [PATCH] Shared: Update to SDL 2.0.7 Fixes Issue #922 Using official libsdl.org bins and libs --- lib/SDL2/include/SDL.h | 31 +- lib/SDL2/include/SDL_assert.h | 20 +- lib/SDL2/include/SDL_atomic.h | 22 +- lib/SDL2/include/SDL_audio.h | 270 +++++++++++-- lib/SDL2/include/SDL_bits.h | 25 +- lib/SDL2/include/SDL_blendmode.h | 67 +++- lib/SDL2/include/SDL_clipboard.h | 8 +- lib/SDL2/include/SDL_config.h | 29 +- lib/SDL2/include/SDL_config.h.cmake | 445 ++++++++++++++++++++++ lib/SDL2/include/SDL_config.h.in | 389 +++++++++++++++++++ lib/SDL2/include/SDL_config_android.h | 157 ++++++++ lib/SDL2/include/SDL_config_iphoneos.h | 166 ++++++++ lib/SDL2/include/SDL_config_macosx.h | 197 ++++++++++ lib/SDL2/include/SDL_config_macosx.h.orig | 197 ++++++++++ lib/SDL2/include/SDL_config_minimal.h | 82 ++++ lib/SDL2/include/SDL_config_pandora.h | 128 +++++++ lib/SDL2/include/SDL_config_psp.h | 144 +++++++ lib/SDL2/include/SDL_config_windows.h | 225 +++++++++++ lib/SDL2/include/SDL_config_winrt.h | 215 +++++++++++ lib/SDL2/include/SDL_config_wiz.h | 121 ++++++ lib/SDL2/include/SDL_copying.h | 20 + lib/SDL2/include/SDL_cpuinfo.h | 23 +- lib/SDL2/include/SDL_egl.h | 4 +- lib/SDL2/include/SDL_endian.h | 29 +- lib/SDL2/include/SDL_error.h | 8 +- lib/SDL2/include/SDL_events.h | 70 ++-- lib/SDL2/include/SDL_filesystem.h | 8 +- lib/SDL2/include/SDL_gamecontroller.h | 71 +++- lib/SDL2/include/SDL_gesture.h | 8 +- lib/SDL2/include/SDL_haptic.h | 76 ++-- lib/SDL2/include/SDL_hints.h | 298 +++++++++++++-- lib/SDL2/include/SDL_joystick.h | 131 ++++++- lib/SDL2/include/SDL_keyboard.h | 10 +- lib/SDL2/include/SDL_keycode.h | 18 +- lib/SDL2/include/SDL_loadso.h | 8 +- lib/SDL2/include/SDL_log.h | 10 +- lib/SDL2/include/SDL_main.h | 12 +- lib/SDL2/include/SDL_messagebox.h | 8 +- lib/SDL2/include/SDL_mouse.h | 16 +- lib/SDL2/include/SDL_mutex.h | 8 +- lib/SDL2/include/SDL_name.h | 8 +- lib/SDL2/include/SDL_opengl.h | 15 +- lib/SDL2/include/SDL_opengles.h | 3 +- lib/SDL2/include/SDL_opengles2.h | 4 +- lib/SDL2/include/SDL_pixels.h | 22 +- lib/SDL2/include/SDL_platform.h | 52 ++- lib/SDL2/include/SDL_power.h | 8 +- lib/SDL2/include/SDL_quit.h | 8 +- lib/SDL2/include/SDL_rect.h | 8 +- lib/SDL2/include/SDL_render.h | 44 ++- lib/SDL2/include/SDL_revision.h | 4 +- lib/SDL2/include/SDL_rwops.h | 43 ++- lib/SDL2/include/SDL_scancode.h | 22 +- lib/SDL2/include/SDL_shape.h | 17 +- lib/SDL2/include/SDL_stdinc.h | 89 ++++- lib/SDL2/include/SDL_surface.h | 30 +- lib/SDL2/include/SDL_system.h | 18 +- lib/SDL2/include/SDL_syswm.h | 51 ++- lib/SDL2/include/SDL_test.h | 21 +- lib/SDL2/include/SDL_test_assert.h | 14 +- lib/SDL2/include/SDL_test_common.h | 8 +- lib/SDL2/include/SDL_test_compare.h | 8 +- lib/SDL2/include/SDL_test_crc32.h | 10 +- lib/SDL2/include/SDL_test_font.h | 17 +- lib/SDL2/include/SDL_test_fuzzer.h | 36 +- lib/SDL2/include/SDL_test_harness.h | 19 +- lib/SDL2/include/SDL_test_images.h | 30 +- lib/SDL2/include/SDL_test_log.h | 8 +- lib/SDL2/include/SDL_test_md5.h | 8 +- lib/SDL2/include/SDL_test_memory.h | 63 +++ lib/SDL2/include/SDL_test_random.h | 8 +- lib/SDL2/include/SDL_thread.h | 53 ++- lib/SDL2/include/SDL_timer.h | 8 +- lib/SDL2/include/SDL_touch.h | 8 +- lib/SDL2/include/SDL_types.h | 2 +- lib/SDL2/include/SDL_version.h | 10 +- lib/SDL2/include/SDL_video.h | 184 ++++++++- lib/SDL2/include/SDL_vulkan.h | 257 +++++++++++++ lib/SDL2/include/begin_code.h | 25 +- lib/SDL2/include/close_code.h | 4 +- lib/SDL2/lib/x64/SDL2.lib | Bin 117610 -> 130646 bytes lib/SDL2/lib/x64/SDL2main.lib | Bin 39358 -> 45212 bytes lib/SDL2/lib/x64/SDL2test.lib | Bin 831240 -> 940792 bytes lib/SDL2/lib/x86/SDL2.lib | Bin 120400 -> 133714 bytes lib/SDL2/lib/x86/SDL2main.lib | Bin 37594 -> 43794 bytes lib/SDL2/lib/x86/SDL2test.lib | Bin 820224 -> 899966 bytes shared/sdl/sdl_sound.cpp | 20 +- 87 files changed, 4511 insertions(+), 530 deletions(-) create mode 100644 lib/SDL2/include/SDL_config.h.cmake create mode 100644 lib/SDL2/include/SDL_config.h.in create mode 100644 lib/SDL2/include/SDL_config_android.h create mode 100644 lib/SDL2/include/SDL_config_iphoneos.h create mode 100644 lib/SDL2/include/SDL_config_macosx.h create mode 100644 lib/SDL2/include/SDL_config_macosx.h.orig create mode 100644 lib/SDL2/include/SDL_config_minimal.h create mode 100644 lib/SDL2/include/SDL_config_pandora.h create mode 100644 lib/SDL2/include/SDL_config_psp.h create mode 100644 lib/SDL2/include/SDL_config_windows.h create mode 100644 lib/SDL2/include/SDL_config_winrt.h create mode 100644 lib/SDL2/include/SDL_config_wiz.h create mode 100644 lib/SDL2/include/SDL_copying.h create mode 100644 lib/SDL2/include/SDL_test_memory.h create mode 100644 lib/SDL2/include/SDL_vulkan.h diff --git a/lib/SDL2/include/SDL.h b/lib/SDL2/include/SDL.h index 7647b5111e..366d50fa39 100644 --- a/lib/SDL2/include/SDL.h +++ b/lib/SDL2/include/SDL.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -26,8 +26,8 @@ */ -#ifndef _SDL_H -#define _SDL_H +#ifndef SDL_h_ +#define SDL_h_ #include "SDL_main.h" #include "SDL_stdinc.h" @@ -40,10 +40,10 @@ #include "SDL_error.h" #include "SDL_events.h" #include "SDL_filesystem.h" -#include "SDL_joystick.h" #include "SDL_gamecontroller.h" #include "SDL_haptic.h" #include "SDL_hints.h" +#include "SDL_joystick.h" #include "SDL_loadso.h" #include "SDL_log.h" #include "SDL_messagebox.h" @@ -51,6 +51,7 @@ #include "SDL_power.h" #include "SDL_render.h" #include "SDL_rwops.h" +#include "SDL_shape.h" #include "SDL_system.h" #include "SDL_thread.h" #include "SDL_timer.h" @@ -72,14 +73,14 @@ extern "C" { * specify the subsystems which you will be using in your application. */ /* @{ */ -#define SDL_INIT_TIMER 0x00000001 -#define SDL_INIT_AUDIO 0x00000010 -#define SDL_INIT_VIDEO 0x00000020 /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */ -#define SDL_INIT_JOYSTICK 0x00000200 /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */ -#define SDL_INIT_HAPTIC 0x00001000 -#define SDL_INIT_GAMECONTROLLER 0x00002000 /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */ -#define SDL_INIT_EVENTS 0x00004000 -#define SDL_INIT_NOPARACHUTE 0x00100000 /**< compatibility; this flag is ignored. */ +#define SDL_INIT_TIMER 0x00000001u +#define SDL_INIT_AUDIO 0x00000010u +#define SDL_INIT_VIDEO 0x00000020u /**< SDL_INIT_VIDEO implies SDL_INIT_EVENTS */ +#define SDL_INIT_JOYSTICK 0x00000200u /**< SDL_INIT_JOYSTICK implies SDL_INIT_EVENTS */ +#define SDL_INIT_HAPTIC 0x00001000u +#define SDL_INIT_GAMECONTROLLER 0x00002000u /**< SDL_INIT_GAMECONTROLLER implies SDL_INIT_JOYSTICK */ +#define SDL_INIT_EVENTS 0x00004000u +#define SDL_INIT_NOPARACHUTE 0x00100000u /**< compatibility; this flag is ignored. */ #define SDL_INIT_EVERYTHING ( \ SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | SDL_INIT_EVENTS | \ SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER \ @@ -95,8 +96,8 @@ extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags); * This function initializes specific SDL subsystems * * Subsystem initialization is ref-counted, you must call - * SDL_QuitSubSystem for each SDL_InitSubSystem to correctly - * shutdown a subsystem manually (or call SDL_Quit to force shutdown). + * SDL_QuitSubSystem() for each SDL_InitSubSystem() to correctly + * shutdown a subsystem manually (or call SDL_Quit() to force shutdown). * If a subsystem is already loaded then this call will * increase the ref-count and return. */ @@ -127,6 +128,6 @@ extern DECLSPEC void SDLCALL SDL_Quit(void); #endif #include "close_code.h" -#endif /* _SDL_H */ +#endif /* SDL_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_assert.h b/lib/SDL2/include/SDL_assert.h index 402981f967..90abbe39b6 100644 --- a/lib/SDL2/include/SDL_assert.h +++ b/lib/SDL2/include/SDL_assert.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_assert_h -#define _SDL_assert_h +#ifndef SDL_assert_h_ +#define SDL_assert_h_ #include "SDL_config.h" @@ -51,9 +51,11 @@ assert can have unique static variables associated with it. /* Don't include intrin.h here because it contains C++ code */ extern void __cdecl __debugbreak(void); #define SDL_TriggerBreakpoint() __debugbreak() -#elif (!defined(__NACL__) && defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__))) +#elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) ) #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" ) -#elif defined(HAVE_SIGNAL_H) +#elif defined(__386__) && defined(__WATCOMC__) + #define SDL_TriggerBreakpoint() { _asm { int 0x03 } } +#elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__) #include #define SDL_TriggerBreakpoint() raise(SIGTRAP) #else @@ -63,7 +65,7 @@ assert can have unique static variables associated with it. #if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 supports __func__ as a standard. */ # define SDL_FUNCTION __func__ -#elif ((__GNUC__ >= 2) || defined(_MSC_VER)) +#elif ((__GNUC__ >= 2) || defined(_MSC_VER) || defined (__WATCOMC__)) # define SDL_FUNCTION __FUNCTION__ #else # define SDL_FUNCTION "???" @@ -201,7 +203,7 @@ typedef SDL_AssertState (SDLCALL *SDL_AssertionHandler)( * * This callback is NOT reset to SDL's internal handler upon SDL_Quit()! * - * \return SDL_AssertState value of how to handle the assertion failure. + * Return SDL_AssertState value of how to handle the assertion failure. * * \param handler Callback function, called when an assertion fails. * \param userdata A pointer passed to the callback as-is. @@ -250,7 +252,7 @@ extern DECLSPEC SDL_AssertionHandler SDLCALL SDL_GetAssertionHandler(void **puse * * const SDL_AssertData *item = SDL_GetAssertionReport(); * while (item) { - * printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\n", + * printf("'%s', %s (%s:%d), triggered %u times, always ignore: %s.\\n", * item->condition, item->function, item->filename, * item->linenum, item->trigger_count, * item->always_ignore ? "yes" : "no"); @@ -284,6 +286,6 @@ extern DECLSPEC void SDLCALL SDL_ResetAssertionReport(void); #endif #include "close_code.h" -#endif /* _SDL_assert_h */ +#endif /* SDL_assert_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_atomic.h b/lib/SDL2/include/SDL_atomic.h index 56aa81df98..36e37f3b78 100644 --- a/lib/SDL2/include/SDL_atomic.h +++ b/lib/SDL2/include/SDL_atomic.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -56,8 +56,8 @@ * All of the atomic operations that modify memory are full memory barriers. */ -#ifndef _SDL_atomic_h_ -#define _SDL_atomic_h_ +#ifndef SDL_atomic_h_ +#define SDL_atomic_h_ #include "SDL_stdinc.h" #include "SDL_platform.h" @@ -118,13 +118,16 @@ extern DECLSPEC void SDLCALL SDL_AtomicUnlock(SDL_SpinLock *lock); * The compiler barrier prevents the compiler from reordering * reads and writes to globally visible variables across the call. */ -#if defined(_MSC_VER) && (_MSC_VER > 1200) +#if defined(_MSC_VER) && (_MSC_VER > 1200) && !defined(__clang__) void _ReadWriteBarrier(void); #pragma intrinsic(_ReadWriteBarrier) #define SDL_CompilerBarrier() _ReadWriteBarrier() #elif (defined(__GNUC__) && !defined(__EMSCRIPTEN__)) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) /* This is correct for all CPUs when using GCC or Solaris Studio 12.1+. */ #define SDL_CompilerBarrier() __asm__ __volatile__ ("" : : : "memory") +#elif defined(__WATCOMC__) +extern _inline void SDL_CompilerBarrier (void); +#pragma aux SDL_CompilerBarrier = "" parm [] modify exact []; #else #define SDL_CompilerBarrier() \ { SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); } @@ -149,6 +152,9 @@ void _ReadWriteBarrier(void); * For more information on these semantics, take a look at the blog post: * http://preshing.com/20120913/acquire-and-release-semantics */ +extern DECLSPEC void SDLCALL SDL_MemoryBarrierReleaseFunction(void); +extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void); + #if defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__)) #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("lwsync" : : : "memory") #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("lwsync" : : : "memory") @@ -156,11 +162,11 @@ void _ReadWriteBarrier(void); #if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") -#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) +#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__) #ifdef __thumb__ /* The mcr instruction isn't available in thumb mode, use real functions */ -extern DECLSPEC void SDLCALL SDL_MemoryBarrierRelease(); -extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquire(); +#define SDL_MemoryBarrierRelease() SDL_MemoryBarrierReleaseFunction() +#define SDL_MemoryBarrierAcquire() SDL_MemoryBarrierAcquireFunction() #else #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("mcr p15, 0, %0, c7, c10, 5" : : "r"(0) : "memory") @@ -263,6 +269,6 @@ extern DECLSPEC void* SDLCALL SDL_AtomicGetPtr(void **a); #include "close_code.h" -#endif /* _SDL_atomic_h_ */ +#endif /* SDL_atomic_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_audio.h b/lib/SDL2/include/SDL_audio.h index 4f65521468..f119c2b267 100644 --- a/lib/SDL2/include/SDL_audio.h +++ b/lib/SDL2/include/SDL_audio.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Access to the raw audio mixing buffer for the SDL library. */ -#ifndef _SDL_audio_h -#define _SDL_audio_h +#ifndef SDL_audio_h_ +#define SDL_audio_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -164,6 +164,15 @@ typedef void (SDLCALL * SDL_AudioCallback) (void *userdata, Uint8 * stream, /** * The calculated values in this structure are calculated by SDL_OpenAudio(). + * + * For multi-channel audio, the default SDL channel mapping is: + * 2: FL FR (stereo) + * 3: FL FR LFE (2.1 surround) + * 4: FL FR BL BR (quad) + * 5: FL FR FC BL BR (quad + center) + * 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR) + * 7: FL FR FC LFE BC SL SR (6.1 surround) + * 8: FL FR FC LFE BL BR SL SR (7.1 surround) */ typedef struct SDL_AudioSpec { @@ -171,7 +180,7 @@ typedef struct SDL_AudioSpec SDL_AudioFormat format; /**< Audio data format */ Uint8 channels; /**< Number of channels: 1 mono, 2 stereo */ Uint8 silence; /**< Audio buffer silence value (calculated) */ - Uint16 samples; /**< Audio buffer size in samples (power of 2) */ + Uint16 samples; /**< Audio buffer size in sample FRAMES (total samples divided by channel count) */ Uint16 padding; /**< Necessary for some compile environments */ Uint32 size; /**< Audio buffer size in bytes (calculated) */ SDL_AudioCallback callback; /**< Callback that feeds the audio device (NULL to use SDL_QueueAudio()). */ @@ -184,7 +193,23 @@ typedef void (SDLCALL * SDL_AudioFilter) (struct SDL_AudioCVT * cvt, SDL_AudioFormat format); /** - * A structure to hold a set of audio conversion filters and buffers. + * \brief Upper limit of filters in SDL_AudioCVT + * + * The maximum number of SDL_AudioFilter functions in SDL_AudioCVT is + * currently limited to 9. The SDL_AudioCVT.filters array has 10 pointers, + * one of which is the terminating NULL pointer. + */ +#define SDL_AUDIOCVT_MAX_FILTERS 9 + +/** + * \struct SDL_AudioCVT + * \brief A structure to hold a set of audio conversion filters and buffers. + * + * Note that various parts of the conversion pipeline can take advantage + * of SIMD operations (like SSE2, for example). SDL_AudioCVT doesn't require + * you to pass it aligned data, but can possibly run much faster if you + * set both its (buf) field to a pointer that is aligned to 16 bytes, and its + * (len) field to something that's a multiple of 16, if possible. */ #ifdef __GNUC__ /* This structure is 84 bytes on 32-bit architectures, make sure GCC doesn't @@ -208,7 +233,7 @@ typedef struct SDL_AudioCVT int len_cvt; /**< Length of converted audio buffer */ int len_mult; /**< buffer must be len*len_mult big */ double len_ratio; /**< Given len, final size is len*len_ratio */ - SDL_AudioFilter filters[10]; /**< Filter list */ + SDL_AudioFilter filters[SDL_AUDIOCVT_MAX_FILTERS + 1]; /**< NULL-terminated list of filter functions */ int filter_index; /**< Current audio conversion function */ } SDL_AUDIOCVT_PACKED SDL_AudioCVT; @@ -278,7 +303,8 @@ extern DECLSPEC const char *SDLCALL SDL_GetCurrentAudioDriver(void); * protect data structures that it accesses by calling SDL_LockAudio() * and SDL_UnlockAudio() in your code. Alternately, you may pass a NULL * pointer here, and call SDL_QueueAudio() with some frequency, to queue - * more audio samples to be played. + * more audio samples to be played (or for capture devices, call + * SDL_DequeueAudio() with some frequency, to obtain audio samples). * - \c desired->userdata is passed as the first parameter to your callback * function. If you passed a NULL callback, this value is ignored. * @@ -433,10 +459,10 @@ extern DECLSPEC void SDLCALL SDL_FreeWAV(Uint8 * audio_buf); * This function takes a source format and rate and a destination format * and rate, and initializes the \c cvt structure with information needed * by SDL_ConvertAudio() to convert a buffer of audio data from one format - * to the other. + * to the other. An unsupported format causes an error and -1 will be returned. * - * \return -1 if the format conversion is not supported, 0 if there's - * no conversion needed, or 1 if the audio filter is set up. + * \return 0 if no conversion is needed, 1 if the audio filter is set up, + * or -1 on error. */ extern DECLSPEC int SDLCALL SDL_BuildAudioCVT(SDL_AudioCVT * cvt, SDL_AudioFormat src_format, @@ -455,9 +481,137 @@ extern DECLSPEC int SDLCALL SDL_BuildAudioCVT(SDL_AudioCVT * cvt, * The data conversion may expand the size of the audio data, so the buffer * \c cvt->buf should be allocated after the \c cvt structure is initialized by * SDL_BuildAudioCVT(), and should be \c cvt->len*cvt->len_mult bytes long. + * + * \return 0 on success or -1 if \c cvt->buf is NULL. */ extern DECLSPEC int SDLCALL SDL_ConvertAudio(SDL_AudioCVT * cvt); +/* SDL_AudioStream is a new audio conversion interface. + The benefits vs SDL_AudioCVT: + - it can handle resampling data in chunks without generating + artifacts, when it doesn't have the complete buffer available. + - it can handle incoming data in any variable size. + - You push data as you have it, and pull it when you need it + */ +/* this is opaque to the outside world. */ +struct _SDL_AudioStream; +typedef struct _SDL_AudioStream SDL_AudioStream; + +/** + * Create a new audio stream + * + * \param src_format The format of the source audio + * \param src_channels The number of channels of the source audio + * \param src_rate The sampling rate of the source audio + * \param dst_format The format of the desired audio output + * \param dst_channels The number of channels of the desired audio output + * \param dst_rate The sampling rate of the desired audio output + * \return 0 on success, or -1 on error. + * + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC SDL_AudioStream * SDLCALL SDL_NewAudioStream(const SDL_AudioFormat src_format, + const Uint8 src_channels, + const int src_rate, + const SDL_AudioFormat dst_format, + const Uint8 dst_channels, + const int dst_rate); + +/** + * Add data to be converted/resampled to the stream + * + * \param stream The stream the audio data is being added to + * \param buf A pointer to the audio data to add + * \param int The number of bytes to write to the stream + * \return 0 on success, or -1 on error. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamPut(SDL_AudioStream *stream, const void *buf, int len); + +/** + * Get converted/resampled data from the stream + * + * \param stream The stream the audio is being requested from + * \param buf A buffer to fill with audio data + * \param len The maximum number of bytes to fill + * \return The number of bytes read from the stream, or -1 on error + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamGet(SDL_AudioStream *stream, void *buf, int len); + +/** + * Get the number of converted/resampled bytes available. The stream may be + * buffering data behind the scenes until it has enough to resample + * correctly, so this number might be lower than what you expect, or even + * be zero. Add more data or flush the stream if you need the data now. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamAvailable(SDL_AudioStream *stream); + +/** + * Tell the stream that you're done sending data, and anything being buffered + * should be converted/resampled and made available immediately. + * + * It is legal to add more data to a stream after flushing, but there will + * be audio gaps in the output. Generally this is intended to signal the + * end of input, so the complete output becomes available. + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamClear + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC int SDLCALL SDL_AudioStreamFlush(SDL_AudioStream *stream); + +/** + * Clear any pending data in the stream without converting it + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_FreeAudioStream + */ +extern DECLSPEC void SDLCALL SDL_AudioStreamClear(SDL_AudioStream *stream); + +/** + * Free an audio stream + * + * \sa SDL_NewAudioStream + * \sa SDL_AudioStreamPut + * \sa SDL_AudioStreamGet + * \sa SDL_AudioStreamAvailable + * \sa SDL_AudioStreamFlush + * \sa SDL_AudioStreamClear + */ +extern DECLSPEC void SDLCALL SDL_FreeAudioStream(SDL_AudioStream *stream); + #define SDL_MIX_MAXVOLUME 128 /** * This takes two audio buffers of the playing audio format and mixes @@ -482,6 +636,10 @@ extern DECLSPEC void SDLCALL SDL_MixAudioFormat(Uint8 * dst, /** * Queue more audio on non-callback devices. * + * (If you are looking to retrieve queued audio from a non-callback capture + * device, you want SDL_DequeueAudio() instead. This will return -1 to + * signify an error if you use it with capture devices.) + * * SDL offers two ways to feed audio to the device: you can either supply a * callback that SDL triggers with some frequency to obtain more audio * (pull method), or you can supply no callback, and then SDL will expect @@ -509,28 +667,83 @@ extern DECLSPEC void SDLCALL SDL_MixAudioFormat(Uint8 * dst, * \param dev The device ID to which we will queue audio. * \param data The data to queue to the device for later playback. * \param len The number of bytes (not samples!) to which (data) points. - * \return zero on success, -1 on error. + * \return 0 on success, or -1 on error. * * \sa SDL_GetQueuedAudioSize * \sa SDL_ClearQueuedAudio */ extern DECLSPEC int SDLCALL SDL_QueueAudio(SDL_AudioDeviceID dev, const void *data, Uint32 len); +/** + * Dequeue more audio on non-callback devices. + * + * (If you are looking to queue audio for output on a non-callback playback + * device, you want SDL_QueueAudio() instead. This will always return 0 + * if you use it with playback devices.) + * + * SDL offers two ways to retrieve audio from a capture device: you can + * either supply a callback that SDL triggers with some frequency as the + * device records more audio data, (push method), or you can supply no + * callback, and then SDL will expect you to retrieve data at regular + * intervals (pull method) with this function. + * + * There are no limits on the amount of data you can queue, short of + * exhaustion of address space. Data from the device will keep queuing as + * necessary without further intervention from you. This means you will + * eventually run out of memory if you aren't routinely dequeueing data. + * + * Capture devices will not queue data when paused; if you are expecting + * to not need captured audio for some length of time, use + * SDL_PauseAudioDevice() to stop the capture device from queueing more + * data. This can be useful during, say, level loading times. When + * unpaused, capture devices will start queueing data from that point, + * having flushed any capturable data available while paused. + * + * This function is thread-safe, but dequeueing from the same device from + * two threads at once does not promise which thread will dequeued data + * first. + * + * You may not dequeue audio from a device that is using an + * application-supplied callback; doing so returns an error. You have to use + * the audio callback, or dequeue audio with this function, but not both. + * + * You should not call SDL_LockAudio() on the device before queueing; SDL + * handles locking internally for this function. + * + * \param dev The device ID from which we will dequeue audio. + * \param data A pointer into where audio data should be copied. + * \param len The number of bytes (not samples!) to which (data) points. + * \return number of bytes dequeued, which could be less than requested. + * + * \sa SDL_GetQueuedAudioSize + * \sa SDL_ClearQueuedAudio + */ +extern DECLSPEC Uint32 SDLCALL SDL_DequeueAudio(SDL_AudioDeviceID dev, void *data, Uint32 len); + /** * Get the number of bytes of still-queued audio. * - * This is the number of bytes that have been queued for playback with - * SDL_QueueAudio(), but have not yet been sent to the hardware. + * For playback device: + * + * This is the number of bytes that have been queued for playback with + * SDL_QueueAudio(), but have not yet been sent to the hardware. This + * number may shrink at any time, so this only informs of pending data. + * + * Once we've sent it to the hardware, this function can not decide the + * exact byte boundary of what has been played. It's possible that we just + * gave the hardware several kilobytes right before you called this + * function, but it hasn't played any of it yet, or maybe half of it, etc. + * + * For capture devices: * - * Once we've sent it to the hardware, this function can not decide the exact - * byte boundary of what has been played. It's possible that we just gave the - * hardware several kilobytes right before you called this function, but it - * hasn't played any of it yet, or maybe half of it, etc. + * This is the number of bytes that have been captured by the device and + * are waiting for you to dequeue. This number may grow at any time, so + * this only informs of the lower-bound of available data. * * You may not queue audio on a device that is using an application-supplied * callback; calling this function on such a device always returns 0. - * You have to use the audio callback or queue audio with SDL_QueueAudio(), - * but not both. + * You have to queue audio with SDL_QueueAudio()/SDL_DequeueAudio(), or use + * the audio callback, but not both. * * You should not call SDL_LockAudio() on the device before querying; SDL * handles locking internally for this function. @@ -544,10 +757,17 @@ extern DECLSPEC int SDLCALL SDL_QueueAudio(SDL_AudioDeviceID dev, const void *da extern DECLSPEC Uint32 SDLCALL SDL_GetQueuedAudioSize(SDL_AudioDeviceID dev); /** - * Drop any queued audio data waiting to be sent to the hardware. + * Drop any queued audio data. For playback devices, this is any queued data + * still waiting to be submitted to the hardware. For capture devices, this + * is any data that was queued by the device that hasn't yet been dequeued by + * the application. * - * Immediately after this call, SDL_GetQueuedAudioSize() will return 0 and - * the hardware will start playing silence if more audio isn't queued. + * Immediately after this call, SDL_GetQueuedAudioSize() will return 0. For + * playback devices, the hardware will start playing silence if more audio + * isn't queued. Unpaused capture devices will start filling the queue again + * as soon as they have more data available (which, depending on the state + * of the hardware and the thread, could be before this function call + * returns!). * * This will not prevent playback of queued audio that's already been sent * to the hardware, as we can not undo that, so expect there to be some @@ -557,8 +777,8 @@ extern DECLSPEC Uint32 SDLCALL SDL_GetQueuedAudioSize(SDL_AudioDeviceID dev); * * You may not queue audio on a device that is using an application-supplied * callback; calling this function on such a device is always a no-op. - * You have to use the audio callback or queue audio with SDL_QueueAudio(), - * but not both. + * You have to queue audio with SDL_QueueAudio()/SDL_DequeueAudio(), or use + * the audio callback, but not both. * * You should not call SDL_LockAudio() on the device before clearing the * queue; SDL handles locking internally for this function. @@ -600,6 +820,6 @@ extern DECLSPEC void SDLCALL SDL_CloseAudioDevice(SDL_AudioDeviceID dev); #endif #include "close_code.h" -#endif /* _SDL_audio_h */ +#endif /* SDL_audio_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_bits.h b/lib/SDL2/include/SDL_bits.h index 528da2eac6..bc28572902 100644 --- a/lib/SDL2/include/SDL_bits.h +++ b/lib/SDL2/include/SDL_bits.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Functions for fiddling with bits and bitmasks. */ -#ifndef _SDL_bits_h -#define _SDL_bits_h +#ifndef SDL_bits_h_ +#define SDL_bits_h_ #include "SDL_stdinc.h" @@ -47,10 +47,20 @@ extern "C" { * * \return Index of the most significant bit, or -1 if the value is 0. */ +#if defined(__WATCOMC__) && defined(__386__) +extern _inline int _SDL_clz_watcom (Uint32); +#pragma aux _SDL_clz_watcom = \ + "bsr eax, eax" \ + "xor eax, 31" \ + parm [eax] nomemory \ + value [eax] \ + modify exact [eax] nomemory; +#endif + SDL_FORCE_INLINE int SDL_MostSignificantBitIndex32(Uint32 x) { -#if defined(__GNUC__) && __GNUC__ >= 4 +#if defined(__GNUC__) && (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) /* Count Leading Zeroes builtin in GCC. * http://gcc.gnu.org/onlinedocs/gcc-4.3.4/gcc/Other-Builtins.html */ @@ -58,6 +68,11 @@ SDL_MostSignificantBitIndex32(Uint32 x) return -1; } return 31 - __builtin_clz(x); +#elif defined(__WATCOMC__) && defined(__386__) + if (x == 0) { + return -1; + } + return 31 - _SDL_clz_watcom(x); #else /* Based off of Bit Twiddling Hacks by Sean Eron Anderson * , released in the public domain. @@ -92,6 +107,6 @@ SDL_MostSignificantBitIndex32(Uint32 x) #endif #include "close_code.h" -#endif /* _SDL_bits_h */ +#endif /* SDL_bits_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_blendmode.h b/lib/SDL2/include/SDL_blendmode.h index 56d8ad66ef..9abd0bd4cf 100644 --- a/lib/SDL2/include/SDL_blendmode.h +++ b/lib/SDL2/include/SDL_blendmode.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Header file declaring the SDL_BlendMode enumeration */ -#ifndef _SDL_blendmode_h -#define _SDL_blendmode_h +#ifndef SDL_blendmode_h_ +#define SDL_blendmode_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -47,17 +47,74 @@ typedef enum SDL_BLENDMODE_ADD = 0x00000002, /**< additive blending dstRGB = (srcRGB * srcA) + dstRGB dstA = dstA */ - SDL_BLENDMODE_MOD = 0x00000004 /**< color modulate + SDL_BLENDMODE_MOD = 0x00000004, /**< color modulate dstRGB = srcRGB * dstRGB dstA = dstA */ + SDL_BLENDMODE_INVALID = 0x7FFFFFFF + + /* Additional custom blend modes can be returned by SDL_ComposeCustomBlendMode() */ + } SDL_BlendMode; +/** + * \brief The blend operation used when combining source and destination pixel components + */ +typedef enum +{ + SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */ + SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */ + SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */ + SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D11 */ + SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D11 */ + +} SDL_BlendOperation; + +/** + * \brief The normalized factor used to multiply pixel components + */ +typedef enum +{ + SDL_BLENDFACTOR_ZERO = 0x1, /**< 0, 0, 0, 0 */ + SDL_BLENDFACTOR_ONE = 0x2, /**< 1, 1, 1, 1 */ + SDL_BLENDFACTOR_SRC_COLOR = 0x3, /**< srcR, srcG, srcB, srcA */ + SDL_BLENDFACTOR_ONE_MINUS_SRC_COLOR = 0x4, /**< 1-srcR, 1-srcG, 1-srcB, 1-srcA */ + SDL_BLENDFACTOR_SRC_ALPHA = 0x5, /**< srcA, srcA, srcA, srcA */ + SDL_BLENDFACTOR_ONE_MINUS_SRC_ALPHA = 0x6, /**< 1-srcA, 1-srcA, 1-srcA, 1-srcA */ + SDL_BLENDFACTOR_DST_COLOR = 0x7, /**< dstR, dstG, dstB, dstA */ + SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 0x8, /**< 1-dstR, 1-dstG, 1-dstB, 1-dstA */ + SDL_BLENDFACTOR_DST_ALPHA = 0x9, /**< dstA, dstA, dstA, dstA */ + SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 0xA /**< 1-dstA, 1-dstA, 1-dstA, 1-dstA */ + +} SDL_BlendFactor; + +/** + * \brief Create a custom blend mode, which may or may not be supported by a given renderer + * + * \param srcColorFactor + * \param dstColorFactor + * \param colorOperation + * \param srcAlphaFactor + * \param dstAlphaFactor + * \param alphaOperation + * + * The result of the blend mode operation will be: + * dstRGB = dstRGB * dstColorFactor colorOperation srcRGB * srcColorFactor + * and + * dstA = dstA * dstAlphaFactor alphaOperation srcA * srcAlphaFactor + */ +extern DECLSPEC SDL_BlendMode SDLCALL SDL_ComposeCustomBlendMode(SDL_BlendFactor srcColorFactor, + SDL_BlendFactor dstColorFactor, + SDL_BlendOperation colorOperation, + SDL_BlendFactor srcAlphaFactor, + SDL_BlendFactor dstAlphaFactor, + SDL_BlendOperation alphaOperation); + /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #include "close_code.h" -#endif /* _SDL_blendmode_h */ +#endif /* SDL_blendmode_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_clipboard.h b/lib/SDL2/include/SDL_clipboard.h index a5556f21c4..341f4ba42b 100644 --- a/lib/SDL2/include/SDL_clipboard.h +++ b/lib/SDL2/include/SDL_clipboard.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL clipboard handling */ -#ifndef _SDL_clipboard_h -#define _SDL_clipboard_h +#ifndef SDL_clipboard_h_ +#define SDL_clipboard_h_ #include "SDL_stdinc.h" @@ -66,6 +66,6 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void); #endif #include "close_code.h" -#endif /* _SDL_clipboard_h */ +#endif /* SDL_clipboard_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_config.h b/lib/SDL2/include/SDL_config.h index 890986cc4e..1bbb838481 100644 --- a/lib/SDL2/include/SDL_config.h +++ b/lib/SDL2/include/SDL_config.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,9 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_config_windows_h -#define _SDL_config_windows_h +#ifndef SDL_config_windows_h_ +#define SDL_config_windows_h_ +#define SDL_config_h_ #include "SDL_platform.h" @@ -85,12 +86,14 @@ typedef unsigned int uintptr_t; /* This is disabled by default to avoid C runtime dependencies and manifest requirements */ #ifdef HAVE_LIBC /* Useful headers */ -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 #define HAVE_CTYPE_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_LIMITS_H 1 #define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 /* C library functions */ #define HAVE_MALLOC 1 @@ -139,12 +142,19 @@ typedef unsigned int uintptr_t; #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE__COPYSIGN 1 +#if defined(_MSC_VER) +/* These functions were added with the VC++ 2013 C runtime library */ #if _MSC_VER >= 1800 #define HAVE_STRTOLL 1 #define HAVE_VSSCANF 1 -#define HAVE_COPYSIGN 1 #define HAVE_SCALBN 1 #endif +/* This function is available with at least the VC++ 2008 C runtime library */ +#if _MSC_VER >= 1400 +#define HAVE__FSEEKI64 1 +#endif +#endif #if !defined(_MSC_VER) || defined(_USE_MATH_DEFINES) #define HAVE_M_PI 1 #endif @@ -154,8 +164,9 @@ typedef unsigned int uintptr_t; #endif /* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_WASAPI 1 #define SDL_AUDIO_DRIVER_DSOUND 1 -#define SDL_AUDIO_DRIVER_XAUDIO2 1 +#define SDL_AUDIO_DRIVER_XAUDIO2 0 #define SDL_AUDIO_DRIVER_WINMM 1 #define SDL_AUDIO_DRIVER_DISK 1 #define SDL_AUDIO_DRIVER_DUMMY 1 @@ -206,6 +217,8 @@ typedef unsigned int uintptr_t; #define SDL_VIDEO_OPENGL_EGL 1 #endif +/* Enable Vulkan support */ +#define SDL_VIDEO_VULKAN 1 /* Enable system power support */ #define SDL_POWER_WINDOWS 1 @@ -218,4 +231,4 @@ typedef unsigned int uintptr_t; #define SDL_ASSEMBLY_ROUTINES 1 #endif -#endif /* _SDL_config_windows_h */ +#endif /* SDL_config_windows_h_ */ diff --git a/lib/SDL2/include/SDL_config.h.cmake b/lib/SDL2/include/SDL_config.h.cmake new file mode 100644 index 0000000000..c57266c413 --- /dev/null +++ b/lib/SDL2/include/SDL_config.h.cmake @@ -0,0 +1,445 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_h_ +#define SDL_config_h_ + +/** + * \file SDL_config.h.in + * + * This is a set of defines to configure the SDL features + */ + +/* General platform specific identifiers */ +#include "SDL_platform.h" + +/* C language features */ +#cmakedefine const @HAVE_CONST@ +#cmakedefine inline @HAVE_INLINE@ +#cmakedefine volatile @HAVE_VOLATILE@ + +/* C datatypes */ +/* Define SIZEOF_VOIDP for 64/32 architectures */ +#ifdef __LP64__ +#define SIZEOF_VOIDP 8 +#else +#define SIZEOF_VOIDP 4 +#endif + +#cmakedefine HAVE_GCC_ATOMICS @HAVE_GCC_ATOMICS@ +#cmakedefine HAVE_GCC_SYNC_LOCK_TEST_AND_SET @HAVE_GCC_SYNC_LOCK_TEST_AND_SET@ + +#cmakedefine HAVE_D3D_H @HAVE_D3D_H@ +#cmakedefine HAVE_D3D11_H @HAVE_D3D11_H@ +#cmakedefine HAVE_DDRAW_H @HAVE_DDRAW_H@ +#cmakedefine HAVE_DSOUND_H @HAVE_DSOUND_H@ +#cmakedefine HAVE_DINPUT_H @HAVE_DINPUT_H@ +#cmakedefine HAVE_XAUDIO2_H @HAVE_XAUDIO2_H@ +#cmakedefine HAVE_XINPUT_H @HAVE_XINPUT_H@ +#cmakedefine HAVE_DXGI_H @HAVE_DXGI_H@ +#cmakedefine HAVE_XINPUT_GAMEPAD_EX @HAVE_XINPUT_GAMEPAD_EX@ +#cmakedefine HAVE_XINPUT_STATE_EX @HAVE_XINPUT_STATE_EX@ + +/* Comment this if you want to build without any C library requirements */ +#cmakedefine HAVE_LIBC 1 +#if HAVE_LIBC + +/* Useful headers */ +#cmakedefine HAVE_ALLOCA_H 1 +#cmakedefine HAVE_SYS_TYPES_H 1 +#cmakedefine HAVE_STDIO_H 1 +#cmakedefine STDC_HEADERS 1 +#cmakedefine HAVE_STDLIB_H 1 +#cmakedefine HAVE_STDARG_H 1 +#cmakedefine HAVE_MALLOC_H 1 +#cmakedefine HAVE_MEMORY_H 1 +#cmakedefine HAVE_STRING_H 1 +#cmakedefine HAVE_STRINGS_H 1 +#cmakedefine HAVE_WCHAR_H 1 +#cmakedefine HAVE_INTTYPES_H 1 +#cmakedefine HAVE_STDINT_H 1 +#cmakedefine HAVE_CTYPE_H 1 +#cmakedefine HAVE_MATH_H 1 +#cmakedefine HAVE_ICONV_H 1 +#cmakedefine HAVE_SIGNAL_H 1 +#cmakedefine HAVE_ALTIVEC_H 1 +#cmakedefine HAVE_PTHREAD_NP_H 1 +#cmakedefine HAVE_LIBUDEV_H 1 +#cmakedefine HAVE_DBUS_DBUS_H 1 +#cmakedefine HAVE_IBUS_IBUS_H 1 +#cmakedefine HAVE_FCITX_FRONTEND_H 1 +#cmakedefine HAVE_LIBSAMPLERATE_H 1 + +/* C library functions */ +#cmakedefine HAVE_MALLOC 1 +#cmakedefine HAVE_CALLOC 1 +#cmakedefine HAVE_REALLOC 1 +#cmakedefine HAVE_FREE 1 +#cmakedefine HAVE_ALLOCA 1 +#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */ +#cmakedefine HAVE_GETENV 1 +#cmakedefine HAVE_SETENV 1 +#cmakedefine HAVE_PUTENV 1 +#cmakedefine HAVE_UNSETENV 1 +#endif +#cmakedefine HAVE_QSORT 1 +#cmakedefine HAVE_ABS 1 +#cmakedefine HAVE_BCOPY 1 +#cmakedefine HAVE_MEMSET 1 +#cmakedefine HAVE_MEMCPY 1 +#cmakedefine HAVE_MEMMOVE 1 +#cmakedefine HAVE_MEMCMP 1 +#cmakedefine HAVE_WCSLEN 1 +#cmakedefine HAVE_WCSLCPY 1 +#cmakedefine HAVE_WCSLCAT 1 +#cmakedefine HAVE_WCSCMP 1 +#cmakedefine HAVE_STRLEN 1 +#cmakedefine HAVE_STRLCPY 1 +#cmakedefine HAVE_STRLCAT 1 +#cmakedefine HAVE_STRDUP 1 +#cmakedefine HAVE__STRREV 1 +#cmakedefine HAVE__STRUPR 1 +#cmakedefine HAVE__STRLWR 1 +#cmakedefine HAVE_INDEX 1 +#cmakedefine HAVE_RINDEX 1 +#cmakedefine HAVE_STRCHR 1 +#cmakedefine HAVE_STRRCHR 1 +#cmakedefine HAVE_STRSTR 1 +#cmakedefine HAVE_ITOA 1 +#cmakedefine HAVE__LTOA 1 +#cmakedefine HAVE__UITOA 1 +#cmakedefine HAVE__ULTOA 1 +#cmakedefine HAVE_STRTOL 1 +#cmakedefine HAVE_STRTOUL 1 +#cmakedefine HAVE__I64TOA 1 +#cmakedefine HAVE__UI64TOA 1 +#cmakedefine HAVE_STRTOLL 1 +#cmakedefine HAVE_STRTOULL 1 +#cmakedefine HAVE_STRTOD 1 +#cmakedefine HAVE_ATOI 1 +#cmakedefine HAVE_ATOF 1 +#cmakedefine HAVE_STRCMP 1 +#cmakedefine HAVE_STRNCMP 1 +#cmakedefine HAVE__STRICMP 1 +#cmakedefine HAVE_STRCASECMP 1 +#cmakedefine HAVE__STRNICMP 1 +#cmakedefine HAVE_STRNCASECMP 1 +#cmakedefine HAVE_VSSCANF 1 +#cmakedefine HAVE_VSNPRINTF 1 +#cmakedefine HAVE_M_PI 1 +#cmakedefine HAVE_ATAN 1 +#cmakedefine HAVE_ATAN2 1 +#cmakedefine HAVE_ACOS 1 +#cmakedefine HAVE_ASIN 1 +#cmakedefine HAVE_CEIL 1 +#cmakedefine HAVE_COPYSIGN 1 +#cmakedefine HAVE_COS 1 +#cmakedefine HAVE_COSF 1 +#cmakedefine HAVE_FABS 1 +#cmakedefine HAVE_FLOOR 1 +#cmakedefine HAVE_LOG 1 +#cmakedefine HAVE_POW 1 +#cmakedefine HAVE_SCALBN 1 +#cmakedefine HAVE_SIN 1 +#cmakedefine HAVE_SINF 1 +#cmakedefine HAVE_SQRT 1 +#cmakedefine HAVE_SQRTF 1 +#cmakedefine HAVE_TAN 1 +#cmakedefine HAVE_TANF 1 +#cmakedefine HAVE_FOPEN64 1 +#cmakedefine HAVE_FSEEKO 1 +#cmakedefine HAVE_FSEEKO64 1 +#cmakedefine HAVE_SIGACTION 1 +#cmakedefine HAVE_SA_SIGACTION 1 +#cmakedefine HAVE_SETJMP 1 +#cmakedefine HAVE_NANOSLEEP 1 +#cmakedefine HAVE_SYSCONF 1 +#cmakedefine HAVE_SYSCTLBYNAME 1 +#cmakedefine HAVE_CLOCK_GETTIME 1 +#cmakedefine HAVE_GETPAGESIZE 1 +#cmakedefine HAVE_MPROTECT 1 +#cmakedefine HAVE_ICONV 1 +#cmakedefine HAVE_PTHREAD_SETNAME_NP 1 +#cmakedefine HAVE_PTHREAD_SET_NAME_NP 1 +#cmakedefine HAVE_SEM_TIMEDWAIT 1 +#cmakedefine HAVE_GETAUXVAL 1 +#cmakedefine HAVE_POLL 1 + +#elif __WIN32__ +#cmakedefine HAVE_STDARG_H 1 +#cmakedefine HAVE_STDDEF_H 1 +#else +/* We may need some replacement for stdarg.h here */ +#include +#endif /* HAVE_LIBC */ + +/* SDL internal assertion support */ +#cmakedefine SDL_DEFAULT_ASSERT_LEVEL @SDL_DEFAULT_ASSERT_LEVEL@ + +/* Allow disabling of core subsystems */ +#cmakedefine SDL_ATOMIC_DISABLED @SDL_ATOMIC_DISABLED@ +#cmakedefine SDL_AUDIO_DISABLED @SDL_AUDIO_DISABLED@ +#cmakedefine SDL_CPUINFO_DISABLED @SDL_CPUINFO_DISABLED@ +#cmakedefine SDL_EVENTS_DISABLED @SDL_EVENTS_DISABLED@ +#cmakedefine SDL_FILE_DISABLED @SDL_FILE_DISABLED@ +#cmakedefine SDL_JOYSTICK_DISABLED @SDL_JOYSTICK_DISABLED@ +#cmakedefine SDL_HAPTIC_DISABLED @SDL_HAPTIC_DISABLED@ +#cmakedefine SDL_LOADSO_DISABLED @SDL_LOADSO_DISABLED@ +#cmakedefine SDL_RENDER_DISABLED @SDL_RENDER_DISABLED@ +#cmakedefine SDL_THREADS_DISABLED @SDL_THREADS_DISABLED@ +#cmakedefine SDL_TIMERS_DISABLED @SDL_TIMERS_DISABLED@ +#cmakedefine SDL_VIDEO_DISABLED @SDL_VIDEO_DISABLED@ +#cmakedefine SDL_POWER_DISABLED @SDL_POWER_DISABLED@ +#cmakedefine SDL_FILESYSTEM_DISABLED @SDL_FILESYSTEM_DISABLED@ + +/* Enable various audio drivers */ +#cmakedefine SDL_AUDIO_DRIVER_ALSA @SDL_AUDIO_DRIVER_ALSA@ +#cmakedefine SDL_AUDIO_DRIVER_ALSA_DYNAMIC @SDL_AUDIO_DRIVER_ALSA_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_ANDROID @SDL_AUDIO_DRIVER_ANDROID@ +#cmakedefine SDL_AUDIO_DRIVER_ARTS @SDL_AUDIO_DRIVER_ARTS@ +#cmakedefine SDL_AUDIO_DRIVER_ARTS_DYNAMIC @SDL_AUDIO_DRIVER_ARTS_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_COREAUDIO @SDL_AUDIO_DRIVER_COREAUDIO@ +#cmakedefine SDL_AUDIO_DRIVER_DISK @SDL_AUDIO_DRIVER_DISK@ +#cmakedefine SDL_AUDIO_DRIVER_DSOUND @SDL_AUDIO_DRIVER_DSOUND@ +#cmakedefine SDL_AUDIO_DRIVER_DUMMY @SDL_AUDIO_DRIVER_DUMMY@ +#cmakedefine SDL_AUDIO_DRIVER_EMSCRIPTEN @SDL_AUDIO_DRIVER_EMSCRIPTEN@ +#cmakedefine SDL_AUDIO_DRIVER_ESD @SDL_AUDIO_DRIVER_ESD@ +#cmakedefine SDL_AUDIO_DRIVER_ESD_DYNAMIC @SDL_AUDIO_DRIVER_ESD_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_FUSIONSOUND @SDL_AUDIO_DRIVER_FUSIONSOUND@ +#cmakedefine SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC @SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_HAIKU @SDL_AUDIO_DRIVER_HAIKU@ +#cmakedefine SDL_AUDIO_DRIVER_JACK @SDL_AUDIO_DRIVER_JACK@ +#cmakedefine SDL_AUDIO_DRIVER_JACK_DYNAMIC @SDL_AUDIO_DRIVER_JACK_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_NAS @SDL_AUDIO_DRIVER_NAS@ +#cmakedefine SDL_AUDIO_DRIVER_NAS_DYNAMIC @SDL_AUDIO_DRIVER_NAS_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_NETBSD @SDL_AUDIO_DRIVER_NETBSD@ +#cmakedefine SDL_AUDIO_DRIVER_OSS @SDL_AUDIO_DRIVER_OSS@ +#cmakedefine SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H @SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H@ +#cmakedefine SDL_AUDIO_DRIVER_PAUDIO @SDL_AUDIO_DRIVER_PAUDIO@ +#cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO @SDL_AUDIO_DRIVER_PULSEAUDIO@ +#cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC @SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_QSA @SDL_AUDIO_DRIVER_QSA@ +#cmakedefine SDL_AUDIO_DRIVER_SNDIO @SDL_AUDIO_DRIVER_SNDIO@ +#cmakedefine SDL_AUDIO_DRIVER_SNDIO_DYNAMIC @SDL_AUDIO_DRIVER_SNDIO_DYNAMIC@ +#cmakedefine SDL_AUDIO_DRIVER_SUNAUDIO @SDL_AUDIO_DRIVER_SUNAUDIO@ +#cmakedefine SDL_AUDIO_DRIVER_WASAPI @SDL_AUDIO_DRIVER_WASAPI@ +#cmakedefine SDL_AUDIO_DRIVER_WINMM @SDL_AUDIO_DRIVER_WINMM@ +#cmakedefine SDL_AUDIO_DRIVER_XAUDIO2 @SDL_AUDIO_DRIVER_XAUDIO2@ + +/* Enable various input drivers */ +#cmakedefine SDL_INPUT_LINUXEV @SDL_INPUT_LINUXEV@ +#cmakedefine SDL_INPUT_LINUXKD @SDL_INPUT_LINUXKD@ +#cmakedefine SDL_INPUT_TSLIB @SDL_INPUT_TSLIB@ +#cmakedefine SDL_JOYSTICK_ANDROID @SDL_JOYSTICK_ANDROID@ +#cmakedefine SDL_JOYSTICK_HAIKU @SDL_JOYSTICK_HAIKU@ +#cmakedefine SDL_JOYSTICK_DINPUT @SDL_JOYSTICK_DINPUT@ +#cmakedefine SDL_JOYSTICK_XINPUT @SDL_JOYSTICK_XINPUT@ +#cmakedefine SDL_JOYSTICK_DUMMY @SDL_JOYSTICK_DUMMY@ +#cmakedefine SDL_JOYSTICK_IOKIT @SDL_JOYSTICK_IOKIT@ +#cmakedefine SDL_JOYSTICK_MFI @SDL_JOYSTICK_MFI@ +#cmakedefine SDL_JOYSTICK_LINUX @SDL_JOYSTICK_LINUX@ +#cmakedefine SDL_JOYSTICK_WINMM @SDL_JOYSTICK_WINMM@ +#cmakedefine SDL_JOYSTICK_USBHID @SDL_JOYSTICK_USBHID@ +#cmakedefine SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H @SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H@ +#cmakedefine SDL_JOYSTICK_EMSCRIPTEN @SDL_JOYSTICK_EMSCRIPTEN@ +#cmakedefine SDL_HAPTIC_DUMMY @SDL_HAPTIC_DUMMY@ +#cmakedefine SDL_HAPTIC_LINUX @SDL_HAPTIC_LINUX@ +#cmakedefine SDL_HAPTIC_IOKIT @SDL_HAPTIC_IOKIT@ +#cmakedefine SDL_HAPTIC_DINPUT @SDL_HAPTIC_DINPUT@ +#cmakedefine SDL_HAPTIC_XINPUT @SDL_HAPTIC_XINPUT@ +#cmakedefine SDL_HAPTIC_ANDROID @SDL_HAPTIC_ANDROID@ + +/* Enable various shared object loading systems */ +#cmakedefine SDL_LOADSO_DLOPEN @SDL_LOADSO_DLOPEN@ +#cmakedefine SDL_LOADSO_DUMMY @SDL_LOADSO_DUMMY@ +#cmakedefine SDL_LOADSO_LDG @SDL_LOADSO_LDG@ +#cmakedefine SDL_LOADSO_WINDOWS @SDL_LOADSO_WINDOWS@ + +/* Enable various threading systems */ +#cmakedefine SDL_THREAD_PTHREAD @SDL_THREAD_PTHREAD@ +#cmakedefine SDL_THREAD_PTHREAD_RECURSIVE_MUTEX @SDL_THREAD_PTHREAD_RECURSIVE_MUTEX@ +#cmakedefine SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP @SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP@ +#cmakedefine SDL_THREAD_WINDOWS @SDL_THREAD_WINDOWS@ + +/* Enable various timer systems */ +#cmakedefine SDL_TIMER_HAIKU @SDL_TIMER_HAIKU@ +#cmakedefine SDL_TIMER_DUMMY @SDL_TIMER_DUMMY@ +#cmakedefine SDL_TIMER_UNIX @SDL_TIMER_UNIX@ +#cmakedefine SDL_TIMER_WINDOWS @SDL_TIMER_WINDOWS@ +#cmakedefine SDL_TIMER_WINCE @SDL_TIMER_WINCE@ + +/* Enable various video drivers */ +#cmakedefine SDL_VIDEO_DRIVER_ANDROID @SDL_VIDEO_DRIVER_ANDROID@ +#cmakedefine SDL_VIDEO_DRIVER_HAIKU @SDL_VIDEO_DRIVER_HAIKU@ +#cmakedefine SDL_VIDEO_DRIVER_COCOA @SDL_VIDEO_DRIVER_COCOA@ +#cmakedefine SDL_VIDEO_DRIVER_DIRECTFB @SDL_VIDEO_DRIVER_DIRECTFB@ +#cmakedefine SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC @SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC@ +#cmakedefine SDL_VIDEO_DRIVER_DUMMY @SDL_VIDEO_DRIVER_DUMMY@ +#cmakedefine SDL_VIDEO_DRIVER_WINDOWS @SDL_VIDEO_DRIVER_WINDOWS@ +#cmakedefine SDL_VIDEO_DRIVER_WAYLAND @SDL_VIDEO_DRIVER_WAYLAND@ +#cmakedefine SDL_VIDEO_DRIVER_RPI @SDL_VIDEO_DRIVER_RPI@ +#cmakedefine SDL_VIDEO_DRIVER_VIVANTE @SDL_VIDEO_DRIVER_VIVANTE@ +#cmakedefine SDL_VIDEO_DRIVER_VIVANTE_VDK @SDL_VIDEO_DRIVER_VIVANTE_VDK@ + +#cmakedefine SDL_VIDEO_DRIVER_KMSDRM @SDL_VIDEO_DRIVER_KMSDRM@ +#cmakedefine SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC @SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC@ +#cmakedefine SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM @SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM@ + +#cmakedefine SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH @SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH@ +#cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC@ +#cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL@ +#cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR@ +#cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON@ + +#cmakedefine SDL_VIDEO_DRIVER_MIR @SDL_VIDEO_DRIVER_MIR@ +#cmakedefine SDL_VIDEO_DRIVER_MIR_DYNAMIC @SDL_VIDEO_DRIVER_MIR_DYNAMIC@ +#cmakedefine SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON @SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON@ +#cmakedefine SDL_VIDEO_DRIVER_EMSCRIPTEN @SDL_VIDEO_DRIVER_EMSCRIPTEN@ +#cmakedefine SDL_VIDEO_DRIVER_X11 @SDL_VIDEO_DRIVER_X11@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC @SDL_VIDEO_DRIVER_X11_DYNAMIC@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT @SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR @SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA @SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 @SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR @SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS @SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS@ +#cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE @SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XCURSOR @SDL_VIDEO_DRIVER_X11_XCURSOR@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XDBE @SDL_VIDEO_DRIVER_X11_XDBE@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XINERAMA @SDL_VIDEO_DRIVER_X11_XINERAMA@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XINPUT2 @SDL_VIDEO_DRIVER_X11_XINPUT2@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH @SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XRANDR @SDL_VIDEO_DRIVER_X11_XRANDR@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XSCRNSAVER @SDL_VIDEO_DRIVER_X11_XSCRNSAVER@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XSHAPE @SDL_VIDEO_DRIVER_X11_XSHAPE@ +#cmakedefine SDL_VIDEO_DRIVER_X11_XVIDMODE @SDL_VIDEO_DRIVER_X11_XVIDMODE@ +#cmakedefine SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS @SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS@ +#cmakedefine SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY @SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY@ +#cmakedefine SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM @SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM@ + +#cmakedefine SDL_VIDEO_RENDER_D3D @SDL_VIDEO_RENDER_D3D@ +#cmakedefine SDL_VIDEO_RENDER_D3D11 @SDL_VIDEO_RENDER_D3D11@ +#cmakedefine SDL_VIDEO_RENDER_OGL @SDL_VIDEO_RENDER_OGL@ +#cmakedefine SDL_VIDEO_RENDER_OGL_ES @SDL_VIDEO_RENDER_OGL_ES@ +#cmakedefine SDL_VIDEO_RENDER_OGL_ES2 @SDL_VIDEO_RENDER_OGL_ES2@ +#cmakedefine SDL_VIDEO_RENDER_DIRECTFB @SDL_VIDEO_RENDER_DIRECTFB@ + +/* Enable OpenGL support */ +#cmakedefine SDL_VIDEO_OPENGL @SDL_VIDEO_OPENGL@ +#cmakedefine SDL_VIDEO_OPENGL_ES @SDL_VIDEO_OPENGL_ES@ +#cmakedefine SDL_VIDEO_OPENGL_ES2 @SDL_VIDEO_OPENGL_ES2@ +#cmakedefine SDL_VIDEO_OPENGL_BGL @SDL_VIDEO_OPENGL_BGL@ +#cmakedefine SDL_VIDEO_OPENGL_CGL @SDL_VIDEO_OPENGL_CGL@ +#cmakedefine SDL_VIDEO_OPENGL_GLX @SDL_VIDEO_OPENGL_GLX@ +#cmakedefine SDL_VIDEO_OPENGL_WGL @SDL_VIDEO_OPENGL_WGL@ +#cmakedefine SDL_VIDEO_OPENGL_EGL @SDL_VIDEO_OPENGL_EGL@ +#cmakedefine SDL_VIDEO_OPENGL_OSMESA @SDL_VIDEO_OPENGL_OSMESA@ +#cmakedefine SDL_VIDEO_OPENGL_OSMESA_DYNAMIC @SDL_VIDEO_OPENGL_OSMESA_DYNAMIC@ + +/* Enable Vulkan support */ +#cmakedefine SDL_VIDEO_VULKAN @SDL_VIDEO_VULKAN@ + +/* Enable system power support */ +#cmakedefine SDL_POWER_ANDROID @SDL_POWER_ANDROID@ +#cmakedefine SDL_POWER_LINUX @SDL_POWER_LINUX@ +#cmakedefine SDL_POWER_WINDOWS @SDL_POWER_WINDOWS@ +#cmakedefine SDL_POWER_MACOSX @SDL_POWER_MACOSX@ +#cmakedefine SDL_POWER_HAIKU @SDL_POWER_HAIKU@ +#cmakedefine SDL_POWER_EMSCRIPTEN @SDL_POWER_EMSCRIPTEN@ +#cmakedefine SDL_POWER_HARDWIRED @SDL_POWER_HARDWIRED@ + +/* Enable system filesystem support */ +#cmakedefine SDL_FILESYSTEM_ANDROID @SDL_FILESYSTEM_ANDROID@ +#cmakedefine SDL_FILESYSTEM_HAIKU @SDL_FILESYSTEM_HAIKU@ +#cmakedefine SDL_FILESYSTEM_COCOA @SDL_FILESYSTEM_COCOA@ +#cmakedefine SDL_FILESYSTEM_DUMMY @SDL_FILESYSTEM_DUMMY@ +#cmakedefine SDL_FILESYSTEM_UNIX @SDL_FILESYSTEM_UNIX@ +#cmakedefine SDL_FILESYSTEM_WINDOWS @SDL_FILESYSTEM_WINDOWS@ +#cmakedefine SDL_FILESYSTEM_EMSCRIPTEN @SDL_FILESYSTEM_EMSCRIPTEN@ + +/* Enable assembly routines */ +#cmakedefine SDL_ASSEMBLY_ROUTINES @SDL_ASSEMBLY_ROUTINES@ +#cmakedefine SDL_ALTIVEC_BLITTERS @SDL_ALTIVEC_BLITTERS@ + +/* Enable dynamic libsamplerate support */ +#cmakedefine SDL_LIBSAMPLERATE_DYNAMIC @SDL_LIBSAMPLERATE_DYNAMIC@ + +/* Platform specific definitions */ +#if !defined(__WIN32__) +# if !defined(_STDINT_H_) && !defined(_STDINT_H) && !defined(HAVE_STDINT_H) && !defined(_HAVE_STDINT_H) +typedef unsigned int size_t; +typedef signed char int8_t; +typedef unsigned char uint8_t; +typedef signed short int16_t; +typedef unsigned short uint16_t; +typedef signed int int32_t; +typedef unsigned int uint32_t; +typedef signed long long int64_t; +typedef unsigned long long uint64_t; +typedef unsigned long uintptr_t; +# endif /* if (stdint.h isn't available) */ +#else /* __WIN32__ */ +# if !defined(_STDINT_H_) && !defined(HAVE_STDINT_H) && !defined(_HAVE_STDINT_H) +# if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__) +#define HAVE_STDINT_H 1 +# elif defined(_MSC_VER) +typedef signed __int8 int8_t; +typedef unsigned __int8 uint8_t; +typedef signed __int16 int16_t; +typedef unsigned __int16 uint16_t; +typedef signed __int32 int32_t; +typedef unsigned __int32 uint32_t; +typedef signed __int64 int64_t; +typedef unsigned __int64 uint64_t; +# ifndef _UINTPTR_T_DEFINED +# ifdef _WIN64 +typedef unsigned __int64 uintptr_t; +# else +typedef unsigned int uintptr_t; +# endif +#define _UINTPTR_T_DEFINED +# endif +/* Older Visual C++ headers don't have the Win64-compatible typedefs... */ +# if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR))) +#define DWORD_PTR DWORD +# endif +# if ((_MSC_VER <= 1200) && (!defined(LONG_PTR))) +#define LONG_PTR LONG +# endif +# else /* !__GNUC__ && !_MSC_VER */ +typedef signed char int8_t; +typedef unsigned char uint8_t; +typedef signed short int16_t; +typedef unsigned short uint16_t; +typedef signed int int32_t; +typedef unsigned int uint32_t; +typedef signed long long int64_t; +typedef unsigned long long uint64_t; +# ifndef _SIZE_T_DEFINED_ +#define _SIZE_T_DEFINED_ +typedef unsigned int size_t; +# endif +typedef unsigned int uintptr_t; +# endif /* __GNUC__ || _MSC_VER */ +# endif /* !_STDINT_H_ && !HAVE_STDINT_H */ +#endif /* __WIN32__ */ + +#endif /* SDL_config_h_ */ diff --git a/lib/SDL2/include/SDL_config.h.in b/lib/SDL2/include/SDL_config.h.in new file mode 100644 index 0000000000..8b3d20880b --- /dev/null +++ b/lib/SDL2/include/SDL_config.h.in @@ -0,0 +1,389 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_h_ +#define SDL_config_h_ + +/** + * \file SDL_config.h.in + * + * This is a set of defines to configure the SDL features + */ + +/* General platform specific identifiers */ +#include "SDL_platform.h" + +/* Make sure that this isn't included by Visual C++ */ +#ifdef _MSC_VER +#error You should run hg revert SDL_config.h +#endif + +/* C language features */ +#undef const +#undef inline +#undef volatile + +/* C datatypes */ +#ifdef __LP64__ +#define SIZEOF_VOIDP 8 +#else +#define SIZEOF_VOIDP 4 +#endif +#undef HAVE_GCC_ATOMICS +#undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET + +#undef HAVE_DDRAW_H +#undef HAVE_DINPUT_H +#undef HAVE_DSOUND_H +#undef HAVE_DXGI_H +#undef HAVE_XINPUT_H +#undef HAVE_XINPUT_GAMEPAD_EX +#undef HAVE_XINPUT_STATE_EX + +/* Comment this if you want to build without any C library requirements */ +#undef HAVE_LIBC +#if HAVE_LIBC + +/* Useful headers */ +#undef HAVE_ALLOCA_H +#undef HAVE_SYS_TYPES_H +#undef HAVE_STDIO_H +#undef STDC_HEADERS +#undef HAVE_STDLIB_H +#undef HAVE_STDARG_H +#undef HAVE_MALLOC_H +#undef HAVE_MEMORY_H +#undef HAVE_STRING_H +#undef HAVE_STRINGS_H +#undef HAVE_WCHAR_H +#undef HAVE_INTTYPES_H +#undef HAVE_STDINT_H +#undef HAVE_CTYPE_H +#undef HAVE_MATH_H +#undef HAVE_ICONV_H +#undef HAVE_SIGNAL_H +#undef HAVE_ALTIVEC_H +#undef HAVE_PTHREAD_NP_H +#undef HAVE_LIBUDEV_H +#undef HAVE_DBUS_DBUS_H +#undef HAVE_IBUS_IBUS_H +#undef HAVE_FCITX_FRONTEND_H +#undef HAVE_LIBSAMPLERATE_H + +/* C library functions */ +#undef HAVE_MALLOC +#undef HAVE_CALLOC +#undef HAVE_REALLOC +#undef HAVE_FREE +#undef HAVE_ALLOCA +#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */ +#undef HAVE_GETENV +#undef HAVE_SETENV +#undef HAVE_PUTENV +#undef HAVE_UNSETENV +#endif +#undef HAVE_QSORT +#undef HAVE_ABS +#undef HAVE_BCOPY +#undef HAVE_MEMSET +#undef HAVE_MEMCPY +#undef HAVE_MEMMOVE +#undef HAVE_MEMCMP +#undef HAVE_WCSLEN +#undef HAVE_WCSLCPY +#undef HAVE_WCSLCAT +#undef HAVE_WCSCMP +#undef HAVE_STRLEN +#undef HAVE_STRLCPY +#undef HAVE_STRLCAT +#undef HAVE_STRDUP +#undef HAVE__STRREV +#undef HAVE__STRUPR +#undef HAVE__STRLWR +#undef HAVE_INDEX +#undef HAVE_RINDEX +#undef HAVE_STRCHR +#undef HAVE_STRRCHR +#undef HAVE_STRSTR +#undef HAVE_ITOA +#undef HAVE__LTOA +#undef HAVE__UITOA +#undef HAVE__ULTOA +#undef HAVE_STRTOL +#undef HAVE_STRTOUL +#undef HAVE__I64TOA +#undef HAVE__UI64TOA +#undef HAVE_STRTOLL +#undef HAVE_STRTOULL +#undef HAVE_STRTOD +#undef HAVE_ATOI +#undef HAVE_ATOF +#undef HAVE_STRCMP +#undef HAVE_STRNCMP +#undef HAVE__STRICMP +#undef HAVE_STRCASECMP +#undef HAVE__STRNICMP +#undef HAVE_STRNCASECMP +#undef HAVE_SSCANF +#undef HAVE_VSSCANF +#undef HAVE_SNPRINTF +#undef HAVE_VSNPRINTF +#undef HAVE_M_PI +#undef HAVE_ATAN +#undef HAVE_ATAN2 +#undef HAVE_ACOS +#undef HAVE_ASIN +#undef HAVE_CEIL +#undef HAVE_COPYSIGN +#undef HAVE_COS +#undef HAVE_COSF +#undef HAVE_FABS +#undef HAVE_FLOOR +#undef HAVE_LOG +#undef HAVE_POW +#undef HAVE_SCALBN +#undef HAVE_SIN +#undef HAVE_SINF +#undef HAVE_SQRT +#undef HAVE_SQRTF +#undef HAVE_TAN +#undef HAVE_TANF +#undef HAVE_FOPEN64 +#undef HAVE_FSEEKO +#undef HAVE_FSEEKO64 +#undef HAVE_SIGACTION +#undef HAVE_SA_SIGACTION +#undef HAVE_SETJMP +#undef HAVE_NANOSLEEP +#undef HAVE_SYSCONF +#undef HAVE_SYSCTLBYNAME +#undef HAVE_CLOCK_GETTIME +#undef HAVE_GETPAGESIZE +#undef HAVE_MPROTECT +#undef HAVE_ICONV +#undef HAVE_PTHREAD_SETNAME_NP +#undef HAVE_PTHREAD_SET_NAME_NP +#undef HAVE_SEM_TIMEDWAIT +#undef HAVE_GETAUXVAL +#undef HAVE_POLL + +#else +#define HAVE_STDARG_H 1 +#define HAVE_STDDEF_H 1 +#define HAVE_STDINT_H 1 +#endif /* HAVE_LIBC */ + +/* SDL internal assertion support */ +#undef SDL_DEFAULT_ASSERT_LEVEL + +/* Allow disabling of core subsystems */ +#undef SDL_ATOMIC_DISABLED +#undef SDL_AUDIO_DISABLED +#undef SDL_CPUINFO_DISABLED +#undef SDL_EVENTS_DISABLED +#undef SDL_FILE_DISABLED +#undef SDL_JOYSTICK_DISABLED +#undef SDL_HAPTIC_DISABLED +#undef SDL_LOADSO_DISABLED +#undef SDL_RENDER_DISABLED +#undef SDL_THREADS_DISABLED +#undef SDL_TIMERS_DISABLED +#undef SDL_VIDEO_DISABLED +#undef SDL_POWER_DISABLED +#undef SDL_FILESYSTEM_DISABLED + +/* Enable various audio drivers */ +#undef SDL_AUDIO_DRIVER_ALSA +#undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC +#undef SDL_AUDIO_DRIVER_ANDROID +#undef SDL_AUDIO_DRIVER_ARTS +#undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC +#undef SDL_AUDIO_DRIVER_COREAUDIO +#undef SDL_AUDIO_DRIVER_DISK +#undef SDL_AUDIO_DRIVER_DSOUND +#undef SDL_AUDIO_DRIVER_DUMMY +#undef SDL_AUDIO_DRIVER_EMSCRIPTEN +#undef SDL_AUDIO_DRIVER_ESD +#undef SDL_AUDIO_DRIVER_ESD_DYNAMIC +#undef SDL_AUDIO_DRIVER_FUSIONSOUND +#undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC +#undef SDL_AUDIO_DRIVER_HAIKU +#undef SDL_AUDIO_DRIVER_JACK +#undef SDL_AUDIO_DRIVER_JACK_DYNAMIC +#undef SDL_AUDIO_DRIVER_NACL +#undef SDL_AUDIO_DRIVER_NAS +#undef SDL_AUDIO_DRIVER_NAS_DYNAMIC +#undef SDL_AUDIO_DRIVER_NETBSD +#undef SDL_AUDIO_DRIVER_OSS +#undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H +#undef SDL_AUDIO_DRIVER_PAUDIO +#undef SDL_AUDIO_DRIVER_PULSEAUDIO +#undef SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC +#undef SDL_AUDIO_DRIVER_QSA +#undef SDL_AUDIO_DRIVER_SNDIO +#undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC +#undef SDL_AUDIO_DRIVER_SUNAUDIO +#undef SDL_AUDIO_DRIVER_WASAPI +#undef SDL_AUDIO_DRIVER_WINMM +#undef SDL_AUDIO_DRIVER_XAUDIO2 + +/* Enable various input drivers */ +#undef SDL_INPUT_LINUXEV +#undef SDL_INPUT_LINUXKD +#undef SDL_INPUT_TSLIB +#undef SDL_JOYSTICK_HAIKU +#undef SDL_JOYSTICK_DINPUT +#undef SDL_JOYSTICK_XINPUT +#undef SDL_JOYSTICK_DUMMY +#undef SDL_JOYSTICK_IOKIT +#undef SDL_JOYSTICK_LINUX +#undef SDL_JOYSTICK_ANDROID +#undef SDL_JOYSTICK_WINMM +#undef SDL_JOYSTICK_USBHID +#undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H +#undef SDL_JOYSTICK_EMSCRIPTEN +#undef SDL_HAPTIC_DUMMY +#undef SDL_HAPTIC_LINUX +#undef SDL_HAPTIC_IOKIT +#undef SDL_HAPTIC_DINPUT +#undef SDL_HAPTIC_XINPUT + +/* Enable various shared object loading systems */ +#undef SDL_LOADSO_DLOPEN +#undef SDL_LOADSO_DUMMY +#undef SDL_LOADSO_LDG +#undef SDL_LOADSO_WINDOWS + +/* Enable various threading systems */ +#undef SDL_THREAD_PTHREAD +#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX +#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP +#undef SDL_THREAD_WINDOWS + +/* Enable various timer systems */ +#undef SDL_TIMER_HAIKU +#undef SDL_TIMER_DUMMY +#undef SDL_TIMER_UNIX +#undef SDL_TIMER_WINDOWS + +/* Enable various video drivers */ +#undef SDL_VIDEO_DRIVER_HAIKU +#undef SDL_VIDEO_DRIVER_COCOA +#undef SDL_VIDEO_DRIVER_DIRECTFB +#undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC +#undef SDL_VIDEO_DRIVER_DUMMY +#undef SDL_VIDEO_DRIVER_WINDOWS +#undef SDL_VIDEO_DRIVER_WAYLAND +#undef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH +#undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC +#undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL +#undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR +#undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON +#undef SDL_VIDEO_DRIVER_MIR +#undef SDL_VIDEO_DRIVER_MIR_DYNAMIC +#undef SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON +#undef SDL_VIDEO_DRIVER_X11 +#undef SDL_VIDEO_DRIVER_RPI +#undef SDL_VIDEO_DRIVER_KMSDRM +#undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC +#undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM +#undef SDL_VIDEO_DRIVER_ANDROID +#undef SDL_VIDEO_DRIVER_EMSCRIPTEN +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS +#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE +#undef SDL_VIDEO_DRIVER_X11_XCURSOR +#undef SDL_VIDEO_DRIVER_X11_XDBE +#undef SDL_VIDEO_DRIVER_X11_XINERAMA +#undef SDL_VIDEO_DRIVER_X11_XINPUT2 +#undef SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH +#undef SDL_VIDEO_DRIVER_X11_XRANDR +#undef SDL_VIDEO_DRIVER_X11_XSCRNSAVER +#undef SDL_VIDEO_DRIVER_X11_XSHAPE +#undef SDL_VIDEO_DRIVER_X11_XVIDMODE +#undef SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS +#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY +#undef SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM +#undef SDL_VIDEO_DRIVER_NACL +#undef SDL_VIDEO_DRIVER_VIVANTE +#undef SDL_VIDEO_DRIVER_VIVANTE_VDK +#undef SDL_VIDEO_DRIVER_QNX + +#undef SDL_VIDEO_RENDER_D3D +#undef SDL_VIDEO_RENDER_D3D11 +#undef SDL_VIDEO_RENDER_OGL +#undef SDL_VIDEO_RENDER_OGL_ES +#undef SDL_VIDEO_RENDER_OGL_ES2 +#undef SDL_VIDEO_RENDER_DIRECTFB + +/* Enable OpenGL support */ +#undef SDL_VIDEO_OPENGL +#undef SDL_VIDEO_OPENGL_ES +#undef SDL_VIDEO_OPENGL_ES2 +#undef SDL_VIDEO_OPENGL_BGL +#undef SDL_VIDEO_OPENGL_CGL +#undef SDL_VIDEO_OPENGL_EGL +#undef SDL_VIDEO_OPENGL_GLX +#undef SDL_VIDEO_OPENGL_WGL +#undef SDL_VIDEO_OPENGL_OSMESA +#undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC + +/* Enable Vulkan support */ +#undef SDL_VIDEO_VULKAN + +/* Enable system power support */ +#undef SDL_POWER_LINUX +#undef SDL_POWER_WINDOWS +#undef SDL_POWER_MACOSX +#undef SDL_POWER_HAIKU +#undef SDL_POWER_ANDROID +#undef SDL_POWER_EMSCRIPTEN +#undef SDL_POWER_HARDWIRED + +/* Enable system filesystem support */ +#undef SDL_FILESYSTEM_HAIKU +#undef SDL_FILESYSTEM_COCOA +#undef SDL_FILESYSTEM_DUMMY +#undef SDL_FILESYSTEM_UNIX +#undef SDL_FILESYSTEM_WINDOWS +#undef SDL_FILESYSTEM_NACL +#undef SDL_FILESYSTEM_ANDROID +#undef SDL_FILESYSTEM_EMSCRIPTEN + +/* Enable assembly routines */ +#undef SDL_ASSEMBLY_ROUTINES +#undef SDL_ALTIVEC_BLITTERS + +/* Enable ime support */ +#undef SDL_USE_IME + +/* Enable dynamic udev support */ +#undef SDL_UDEV_DYNAMIC + +/* Enable dynamic libsamplerate support */ +#undef SDL_LIBSAMPLERATE_DYNAMIC + +#endif /* SDL_config_h_ */ diff --git a/lib/SDL2/include/SDL_config_android.h b/lib/SDL2/include/SDL_config_android.h new file mode 100644 index 0000000000..361bad8b77 --- /dev/null +++ b/lib/SDL2/include/SDL_config_android.h @@ -0,0 +1,157 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_android_h_ +#define SDL_config_android_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +/** + * \file SDL_config_android.h + * + * This is a configuration that can be used to build SDL for Android + */ + +#include + +#define HAVE_GCC_ATOMICS 1 + +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_SETENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRLCAT 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_ACOS 1 +#define HAVE_ASIN 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +#define HAVE_SYSCONF 1 +#define HAVE_CLOCK_GETTIME 1 + +#define SIZEOF_VOIDP 4 + +/* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_ANDROID 1 +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable various input drivers */ +#define SDL_JOYSTICK_ANDROID 1 +#define SDL_HAPTIC_ANDROID 1 + +/* Enable various shared object loading systems */ +#define SDL_LOADSO_DLOPEN 1 + +/* Enable various threading systems */ +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 + +/* Enable various timer systems */ +#define SDL_TIMER_UNIX 1 + +/* Enable various video drivers */ +#define SDL_VIDEO_DRIVER_ANDROID 1 + +/* Enable OpenGL ES */ +#define SDL_VIDEO_OPENGL_ES 1 +#define SDL_VIDEO_OPENGL_ES2 1 +#define SDL_VIDEO_OPENGL_EGL 1 +#define SDL_VIDEO_RENDER_OGL_ES 1 +#define SDL_VIDEO_RENDER_OGL_ES2 1 + +/* Enable Vulkan support */ +/* Android does not support Vulkan in native code using the "armeabi" ABI. */ +#if defined(__ARM_ARCH) && __ARM_ARCH < 7 +#define SDL_VIDEO_VULKAN 0 +#else +#define SDL_VIDEO_VULKAN 1 +#endif + +/* Enable system power support */ +#define SDL_POWER_ANDROID 1 + +/* Enable the filesystem driver */ +#define SDL_FILESYSTEM_ANDROID 1 + +#endif /* SDL_config_android_h_ */ diff --git a/lib/SDL2/include/SDL_config_iphoneos.h b/lib/SDL2/include/SDL_config_iphoneos.h new file mode 100644 index 0000000000..deea030466 --- /dev/null +++ b/lib/SDL2/include/SDL_config_iphoneos.h @@ -0,0 +1,166 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_iphoneos_h_ +#define SDL_config_iphoneos_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +#ifdef __LP64__ +#define SIZEOF_VOIDP 8 +#else +#define SIZEOF_VOIDP 4 +#endif + +#define HAVE_GCC_ATOMICS 1 + +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_SETENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRLCAT 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_ACOS 1 +#define HAVE_ASIN 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +#define HAVE_SYSCONF 1 +#define HAVE_SYSCTLBYNAME 1 + +/* enable iPhone version of Core Audio driver */ +#define SDL_AUDIO_DRIVER_COREAUDIO 1 +/* Enable the dummy audio driver (src/audio/dummy/\*.c) */ +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable the stub haptic driver (src/haptic/dummy/\*.c) */ +#define SDL_HAPTIC_DUMMY 1 + +/* Enable MFi joystick support */ +#define SDL_JOYSTICK_MFI 1 + +/* Enable Unix style SO loading */ +#define SDL_LOADSO_DLOPEN 1 + +/* Enable various threading systems */ +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 + +/* Enable various timer systems */ +#define SDL_TIMER_UNIX 1 + +/* Supported video drivers */ +#define SDL_VIDEO_DRIVER_UIKIT 1 +#define SDL_VIDEO_DRIVER_DUMMY 1 + +/* enable OpenGL ES */ +#define SDL_VIDEO_OPENGL_ES2 1 +#define SDL_VIDEO_OPENGL_ES 1 +#define SDL_VIDEO_RENDER_OGL_ES 1 +#define SDL_VIDEO_RENDER_OGL_ES2 1 + +/* Enable Vulkan support */ +#if !TARGET_OS_SIMULATOR && !TARGET_CPU_ARM // Only 64-bit devices have Metal +#define SDL_VIDEO_VULKAN 1 +#else +#define SDL_VIDEO_VULKAN 0 +#endif + +/* Enable system power support */ +#define SDL_POWER_UIKIT 1 + +/* enable iPhone keyboard support */ +#define SDL_IPHONE_KEYBOARD 1 + +/* enable iOS extended launch screen */ +#define SDL_IPHONE_LAUNCHSCREEN 1 + +/* Set max recognized G-force from accelerometer + See src/joystick/uikit/SDL_sysjoystick.m for notes on why this is needed + */ +#define SDL_IPHONE_MAX_GFORCE 5.0 + +/* enable filesystem support */ +#define SDL_FILESYSTEM_COCOA 1 + +#endif /* SDL_config_iphoneos_h_ */ diff --git a/lib/SDL2/include/SDL_config_macosx.h b/lib/SDL2/include/SDL_config_macosx.h new file mode 100644 index 0000000000..9b09899529 --- /dev/null +++ b/lib/SDL2/include/SDL_config_macosx.h @@ -0,0 +1,197 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_macosx_h_ +#define SDL_config_macosx_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +/* This gets us MAC_OS_X_VERSION_MIN_REQUIRED... */ +#include + +/* This is a set of defines to configure the SDL features */ + +#ifdef __LP64__ + #define SIZEOF_VOIDP 8 +#else + #define SIZEOF_VOIDP 4 +#endif + +/* Useful headers */ +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRLCAT 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +#define HAVE_SYSCONF 1 +#define HAVE_SYSCTLBYNAME 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_ACOS 1 +#define HAVE_ASIN 1 + +/* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_COREAUDIO 1 +#define SDL_AUDIO_DRIVER_DISK 1 +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable various input drivers */ +#define SDL_JOYSTICK_IOKIT 1 +#define SDL_HAPTIC_IOKIT 1 + +/* Enable various shared object loading systems */ +#define SDL_LOADSO_DLOPEN 1 + +/* Enable various threading systems */ +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 + +/* Enable various timer systems */ +#define SDL_TIMER_UNIX 1 + +/* Enable various video drivers */ +#define SDL_VIDEO_DRIVER_COCOA 1 +#define SDL_VIDEO_DRIVER_DUMMY 1 +#undef SDL_VIDEO_DRIVER_X11 +#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/usr/X11R6/lib/libX11.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/usr/X11R6/lib/libXext.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/usr/X11R6/lib/libXinerama.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/usr/X11R6/lib/libXi.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/usr/X11R6/lib/libXrandr.2.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/usr/X11R6/lib/libXss.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/usr/X11R6/lib/libXxf86vm.1.dylib" +#define SDL_VIDEO_DRIVER_X11_XDBE 1 +#define SDL_VIDEO_DRIVER_X11_XINERAMA 1 +#define SDL_VIDEO_DRIVER_X11_XRANDR 1 +#define SDL_VIDEO_DRIVER_X11_XSCRNSAVER 1 +#define SDL_VIDEO_DRIVER_X11_XSHAPE 1 +#define SDL_VIDEO_DRIVER_X11_XVIDMODE 1 +#define SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM 1 + +#ifdef MAC_OS_X_VERSION_10_8 +/* + * No matter the versions targeted, this is the 10.8 or later SDK, so you have + * to use the external Xquartz, which is a more modern Xlib. Previous SDKs + * used an older Xlib. + */ +#define SDL_VIDEO_DRIVER_X11_XINPUT2 1 +#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1 +#define SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY 1 +#endif + +#ifndef SDL_VIDEO_RENDER_OGL +#define SDL_VIDEO_RENDER_OGL 1 +#endif + +/* Enable OpenGL support */ +#ifndef SDL_VIDEO_OPENGL +#define SDL_VIDEO_OPENGL 1 +#endif +#ifndef SDL_VIDEO_OPENGL_CGL +#define SDL_VIDEO_OPENGL_CGL 1 +#endif +#ifndef SDL_VIDEO_OPENGL_GLX +#define SDL_VIDEO_OPENGL_GLX 1 +#endif + +/* Enable Vulkan support */ +/* Metal/MoltenVK/Vulkan only supported on 64-bit architectures with 10.11+ */ +#if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) +#define SDL_VIDEO_VULKAN 1 +#else +#define SDL_VIDEO_VULKAN 0 +#endif + +/* Enable system power support */ +#define SDL_POWER_MACOSX 1 + +/* enable filesystem support */ +#define SDL_FILESYSTEM_COCOA 1 + +/* Enable assembly routines */ +#define SDL_ASSEMBLY_ROUTINES 1 +#ifdef __ppc__ +#define SDL_ALTIVEC_BLITTERS 1 +#endif + +#endif /* SDL_config_macosx_h_ */ diff --git a/lib/SDL2/include/SDL_config_macosx.h.orig b/lib/SDL2/include/SDL_config_macosx.h.orig new file mode 100644 index 0000000000..f03f1ae3dd --- /dev/null +++ b/lib/SDL2/include/SDL_config_macosx.h.orig @@ -0,0 +1,197 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_macosx_h_ +#define SDL_config_macosx_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +/* This gets us MAC_OS_X_VERSION_MIN_REQUIRED... */ +#include + +/* This is a set of defines to configure the SDL features */ + +#ifdef __LP64__ + #define SIZEOF_VOIDP 8 +#else + #define SIZEOF_VOIDP 4 +#endif + +/* Useful headers */ +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRLCAT 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +#define HAVE_SYSCONF 1 +#define HAVE_SYSCTLBYNAME 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_ACOS 1 +#define HAVE_ASIN 1 + +/* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_COREAUDIO 1 +#define SDL_AUDIO_DRIVER_DISK 1 +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable various input drivers */ +#define SDL_JOYSTICK_IOKIT 1 +#define SDL_HAPTIC_IOKIT 1 + +/* Enable various shared object loading systems */ +#define SDL_LOADSO_DLOPEN 1 + +/* Enable various threading systems */ +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 1 + +/* Enable various timer systems */ +#define SDL_TIMER_UNIX 1 + +/* Enable various video drivers */ +#define SDL_VIDEO_DRIVER_COCOA 1 +#define SDL_VIDEO_DRIVER_DUMMY 1 +#undef SDL_VIDEO_DRIVER_X11 +#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/usr/X11R6/lib/libX11.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/usr/X11R6/lib/libXext.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/usr/X11R6/lib/libXinerama.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/usr/X11R6/lib/libXi.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/usr/X11R6/lib/libXrandr.2.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/usr/X11R6/lib/libXss.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/usr/X11R6/lib/libXxf86vm.1.dylib" +#define SDL_VIDEO_DRIVER_X11_XDBE 1 +#define SDL_VIDEO_DRIVER_X11_XINERAMA 1 +#define SDL_VIDEO_DRIVER_X11_XRANDR 1 +#define SDL_VIDEO_DRIVER_X11_XSCRNSAVER 1 +#define SDL_VIDEO_DRIVER_X11_XSHAPE 1 +#define SDL_VIDEO_DRIVER_X11_XVIDMODE 1 +#define SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM 1 + +#ifdef MAC_OS_X_VERSION_10_8 +/* + * No matter the versions targeted, this is the 10.8 or later SDK, so you have + * to use the external Xquartz, which is a more modern Xlib. Previous SDKs + * used an older Xlib. + */ +#define SDL_VIDEO_DRIVER_X11_XINPUT2 1 +#define SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 1 +#define SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY 1 +#endif + +#ifndef SDL_VIDEO_RENDER_OGL +#define SDL_VIDEO_RENDER_OGL 1 +#endif + +/* Enable OpenGL support */ +#ifndef SDL_VIDEO_OPENGL +#define SDL_VIDEO_OPENGL 1 +#endif +#ifndef SDL_VIDEO_OPENGL_CGL +#define SDL_VIDEO_OPENGL_CGL 1 +#endif +#ifndef SDL_VIDEO_OPENGL_GLX +#define SDL_VIDEO_OPENGL_GLX 1 +#endif + +/* Enable Vulkan support */ +/* Metal/MoltenVK/Vulkan only supported on 64-bit architectures and 10.11+ */ +#if TARGET_CPU_X86_64 +#define SDL_VIDEO_VULKAN 1 +#else +#define SDL_VIDEO_VULKAN 0 +#endif + +/* Enable system power support */ +#define SDL_POWER_MACOSX 1 + +/* enable filesystem support */ +#define SDL_FILESYSTEM_COCOA 1 + +/* Enable assembly routines */ +#define SDL_ASSEMBLY_ROUTINES 1 +#ifdef __ppc__ +#define SDL_ALTIVEC_BLITTERS 1 +#endif + +#endif /* SDL_config_macosx_h_ */ diff --git a/lib/SDL2/include/SDL_config_minimal.h b/lib/SDL2/include/SDL_config_minimal.h new file mode 100644 index 0000000000..31127006c5 --- /dev/null +++ b/lib/SDL2/include/SDL_config_minimal.h @@ -0,0 +1,82 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_minimal_h_ +#define SDL_config_minimal_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +/** + * \file SDL_config_minimal.h + * + * This is the minimal configuration that can be used to build SDL. + */ + +#define HAVE_STDARG_H 1 +#define HAVE_STDDEF_H 1 + +/* Most everything except Visual Studio 2008 and earlier has stdint.h now */ +#if defined(_MSC_VER) && (_MSC_VER < 1600) +/* Here are some reasonable defaults */ +typedef unsigned int size_t; +typedef signed char int8_t; +typedef unsigned char uint8_t; +typedef signed short int16_t; +typedef unsigned short uint16_t; +typedef signed int int32_t; +typedef unsigned int uint32_t; +typedef signed long long int64_t; +typedef unsigned long long uint64_t; +typedef unsigned long uintptr_t; +#else +#define HAVE_STDINT_H 1 +#endif /* Visual Studio 2008 */ + +#ifdef __GNUC__ +#define HAVE_GCC_SYNC_LOCK_TEST_AND_SET 1 +#endif + +/* Enable the dummy audio driver (src/audio/dummy/\*.c) */ +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable the stub joystick driver (src/joystick/dummy/\*.c) */ +#define SDL_JOYSTICK_DISABLED 1 + +/* Enable the stub haptic driver (src/haptic/dummy/\*.c) */ +#define SDL_HAPTIC_DISABLED 1 + +/* Enable the stub shared object loader (src/loadso/dummy/\*.c) */ +#define SDL_LOADSO_DISABLED 1 + +/* Enable the stub thread support (src/thread/generic/\*.c) */ +#define SDL_THREADS_DISABLED 1 + +/* Enable the stub timer support (src/timer/dummy/\*.c) */ +#define SDL_TIMERS_DISABLED 1 + +/* Enable the dummy video driver (src/video/dummy/\*.c) */ +#define SDL_VIDEO_DRIVER_DUMMY 1 + +/* Enable the dummy filesystem driver (src/filesystem/dummy/\*.c) */ +#define SDL_FILESYSTEM_DUMMY 1 + +#endif /* SDL_config_minimal_h_ */ diff --git a/lib/SDL2/include/SDL_config_pandora.h b/lib/SDL2/include/SDL_config_pandora.h new file mode 100644 index 0000000000..ea62fe59ac --- /dev/null +++ b/lib/SDL2/include/SDL_config_pandora.h @@ -0,0 +1,128 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_pandora_h_ +#define SDL_config_pandora_h_ +#define SDL_config_h_ + +/* This is a set of defines to configure the SDL features */ + +/* General platform specific identifiers */ +#include "SDL_platform.h" + +#ifdef __LP64__ +#define SIZEOF_VOIDP 8 +#else +#define SIZEOF_VOIDP 4 +#endif + +#define SDL_BYTEORDER 1234 + +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STDARG_H 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MEMORY_H 1 +#define HAVE_STRING_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_ICONV_H 1 +#define HAVE_SIGNAL_H 1 +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_STRLEN 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 + +#define SDL_AUDIO_DRIVER_DUMMY 1 +#define SDL_AUDIO_DRIVER_OSS 1 + +#define SDL_INPUT_LINUXEV 1 +#define SDL_INPUT_TSLIB 1 +#define SDL_JOYSTICK_LINUX 1 +#define SDL_HAPTIC_LINUX 1 + +#define SDL_LOADSO_DLOPEN 1 + +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP 1 + +#define SDL_TIMER_UNIX 1 +#define SDL_FILESYSTEM_UNIX 1 + +#define SDL_VIDEO_DRIVER_DUMMY 1 +#define SDL_VIDEO_DRIVER_X11 1 +#define SDL_VIDEO_DRIVER_PANDORA 1 +#define SDL_VIDEO_RENDER_OGL_ES 1 +#define SDL_VIDEO_OPENGL_ES 1 + +#endif /* SDL_config_pandora_h_ */ diff --git a/lib/SDL2/include/SDL_config_psp.h b/lib/SDL2/include/SDL_config_psp.h new file mode 100644 index 0000000000..28efb4c5c0 --- /dev/null +++ b/lib/SDL2/include/SDL_config_psp.h @@ -0,0 +1,144 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_psp_h_ +#define SDL_config_psp_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + + + +#ifdef __GNUC__ +#define HAVE_GCC_SYNC_LOCK_TEST_AND_SET 1 +#endif + +#define HAVE_GCC_ATOMICS 1 + +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_SETENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRLCAT 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_ACOS 1 +#define HAVE_ASIN 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +/* #define HAVE_SYSCONF 1 */ +/* #define HAVE_SIGACTION 1 */ + + +/* PSP isn't that sophisticated */ +#define LACKS_SYS_MMAN_H 1 + +/* Enable the stub thread support (src/thread/psp/\*.c) */ +#define SDL_THREAD_PSP 1 + +/* Enable the stub timer support (src/timer/psp/\*.c) */ +#define SDL_TIMERS_PSP 1 + +/* Enable the stub joystick driver (src/joystick/psp/\*.c) */ +#define SDL_JOYSTICK_PSP 1 + +/* Enable the stub audio driver (src/audio/psp/\*.c) */ +#define SDL_AUDIO_DRIVER_PSP 1 + +/* PSP video dirver */ +#define SDL_VIDEO_DRIVER_PSP 1 + +/* PSP render dirver */ +#define SDL_VIDEO_RENDER_PSP 1 + +#define SDL_POWER_PSP 1 + +/* !!! FIXME: what does PSP do for filesystem stuff? */ +#define SDL_FILESYSTEM_DUMMY 1 + +/* PSP doesn't have haptic device (src/haptic/dummy/\*.c) */ +#define SDL_HAPTIC_DISABLED 1 + +/* PSP can't load shared object (src/loadso/dummy/\*.c) */ +#define SDL_LOADSO_DISABLED 1 + + +#endif /* SDL_config_psp_h_ */ diff --git a/lib/SDL2/include/SDL_config_windows.h b/lib/SDL2/include/SDL_config_windows.h new file mode 100644 index 0000000000..2456c843fe --- /dev/null +++ b/lib/SDL2/include/SDL_config_windows.h @@ -0,0 +1,225 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_windows_h_ +#define SDL_config_windows_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +/* This is a set of defines to configure the SDL features */ + +#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H) +#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__) +#define HAVE_STDINT_H 1 +#elif defined(_MSC_VER) +typedef signed __int8 int8_t; +typedef unsigned __int8 uint8_t; +typedef signed __int16 int16_t; +typedef unsigned __int16 uint16_t; +typedef signed __int32 int32_t; +typedef unsigned __int32 uint32_t; +typedef signed __int64 int64_t; +typedef unsigned __int64 uint64_t; +#ifndef _UINTPTR_T_DEFINED +#ifdef _WIN64 +typedef unsigned __int64 uintptr_t; +#else +typedef unsigned int uintptr_t; +#endif +#define _UINTPTR_T_DEFINED +#endif +/* Older Visual C++ headers don't have the Win64-compatible typedefs... */ +#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR))) +#define DWORD_PTR DWORD +#endif +#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR))) +#define LONG_PTR LONG +#endif +#else /* !__GNUC__ && !_MSC_VER */ +typedef signed char int8_t; +typedef unsigned char uint8_t; +typedef signed short int16_t; +typedef unsigned short uint16_t; +typedef signed int int32_t; +typedef unsigned int uint32_t; +typedef signed long long int64_t; +typedef unsigned long long uint64_t; +#ifndef _SIZE_T_DEFINED_ +#define _SIZE_T_DEFINED_ +typedef unsigned int size_t; +#endif +typedef unsigned int uintptr_t; +#endif /* __GNUC__ || _MSC_VER */ +#endif /* !_STDINT_H_ && !HAVE_STDINT_H */ + +#ifdef _WIN64 +# define SIZEOF_VOIDP 8 +#else +# define SIZEOF_VOIDP 4 +#endif + +#define HAVE_DDRAW_H 1 +#define HAVE_DINPUT_H 1 +#define HAVE_DSOUND_H 1 +#define HAVE_DXGI_H 1 +#define HAVE_XINPUT_H 1 + +/* This is disabled by default to avoid C runtime dependencies and manifest requirements */ +#ifdef HAVE_LIBC +/* Useful headers */ +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE__STRREV 1 +#define HAVE__STRUPR 1 +#define HAVE__STRLWR 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE__LTOA 1 +#define HAVE__ULTOA 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE__STRICMP 1 +#define HAVE__STRNICMP 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_ACOS 1 +#define HAVE_ASIN 1 +#define HAVE_CEIL 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#if _MSC_VER >= 1800 +#define HAVE_STRTOLL 1 +#define HAVE_VSSCANF 1 +#define HAVE_COPYSIGN 1 +#define HAVE_SCALBN 1 +#endif +#if !defined(_MSC_VER) || defined(_USE_MATH_DEFINES) +#define HAVE_M_PI 1 +#endif +#else +#define HAVE_STDARG_H 1 +#define HAVE_STDDEF_H 1 +#endif + +/* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_WASAPI 1 +#define SDL_AUDIO_DRIVER_DSOUND 1 +#define SDL_AUDIO_DRIVER_XAUDIO2 0 +#define SDL_AUDIO_DRIVER_WINMM 1 +#define SDL_AUDIO_DRIVER_DISK 1 +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable various input drivers */ +#define SDL_JOYSTICK_DINPUT 1 +#define SDL_JOYSTICK_XINPUT 1 +#define SDL_HAPTIC_DINPUT 1 +#define SDL_HAPTIC_XINPUT 1 + +/* Enable various shared object loading systems */ +#define SDL_LOADSO_WINDOWS 1 + +/* Enable various threading systems */ +#define SDL_THREAD_WINDOWS 1 + +/* Enable various timer systems */ +#define SDL_TIMER_WINDOWS 1 + +/* Enable various video drivers */ +#define SDL_VIDEO_DRIVER_DUMMY 1 +#define SDL_VIDEO_DRIVER_WINDOWS 1 + +#ifndef SDL_VIDEO_RENDER_D3D +#define SDL_VIDEO_RENDER_D3D 1 +#endif +#ifndef SDL_VIDEO_RENDER_D3D11 +#define SDL_VIDEO_RENDER_D3D11 0 +#endif + +/* Enable OpenGL support */ +#ifndef SDL_VIDEO_OPENGL +#define SDL_VIDEO_OPENGL 1 +#endif +#ifndef SDL_VIDEO_OPENGL_WGL +#define SDL_VIDEO_OPENGL_WGL 1 +#endif +#ifndef SDL_VIDEO_RENDER_OGL +#define SDL_VIDEO_RENDER_OGL 1 +#endif +#ifndef SDL_VIDEO_RENDER_OGL_ES2 +#define SDL_VIDEO_RENDER_OGL_ES2 1 +#endif +#ifndef SDL_VIDEO_OPENGL_ES2 +#define SDL_VIDEO_OPENGL_ES2 1 +#endif +#ifndef SDL_VIDEO_OPENGL_EGL +#define SDL_VIDEO_OPENGL_EGL 1 +#endif + +/* Enable Vulkan support */ +#define SDL_VIDEO_VULKAN 1 + +/* Enable system power support */ +#define SDL_POWER_WINDOWS 1 + +/* Enable filesystem support */ +#define SDL_FILESYSTEM_WINDOWS 1 + +/* Enable assembly routines (Win64 doesn't have inline asm) */ +#ifndef _WIN64 +#define SDL_ASSEMBLY_ROUTINES 1 +#endif + +#endif /* SDL_config_windows_h_ */ diff --git a/lib/SDL2/include/SDL_config_winrt.h b/lib/SDL2/include/SDL_config_winrt.h new file mode 100644 index 0000000000..24f9e17f20 --- /dev/null +++ b/lib/SDL2/include/SDL_config_winrt.h @@ -0,0 +1,215 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_winrt_h_ +#define SDL_config_winrt_h_ +#define SDL_config_h_ + +#include "SDL_platform.h" + +/* Make sure the Windows SDK's NTDDI_VERSION macro gets defined. This is used + by SDL to determine which version of the Windows SDK is being used. +*/ +#include + +/* Define possibly-undefined NTDDI values (used when compiling SDL against + older versions of the Windows SDK. +*/ +#ifndef NTDDI_WINBLUE +#define NTDDI_WINBLUE 0x06030000 +#endif +#ifndef NTDDI_WIN10 +#define NTDDI_WIN10 0x0A000000 +#endif + +/* This is a set of defines to configure the SDL features */ + +#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H) +#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__) +#define HAVE_STDINT_H 1 +#elif defined(_MSC_VER) +typedef signed __int8 int8_t; +typedef unsigned __int8 uint8_t; +typedef signed __int16 int16_t; +typedef unsigned __int16 uint16_t; +typedef signed __int32 int32_t; +typedef unsigned __int32 uint32_t; +typedef signed __int64 int64_t; +typedef unsigned __int64 uint64_t; +#ifndef _UINTPTR_T_DEFINED +#ifdef _WIN64 +typedef unsigned __int64 uintptr_t; +#else +typedef unsigned int uintptr_t; +#endif +#define _UINTPTR_T_DEFINED +#endif +/* Older Visual C++ headers don't have the Win64-compatible typedefs... */ +#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR))) +#define DWORD_PTR DWORD +#endif +#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR))) +#define LONG_PTR LONG +#endif +#else /* !__GNUC__ && !_MSC_VER */ +typedef signed char int8_t; +typedef unsigned char uint8_t; +typedef signed short int16_t; +typedef unsigned short uint16_t; +typedef signed int int32_t; +typedef unsigned int uint32_t; +typedef signed long long int64_t; +typedef unsigned long long uint64_t; +#ifndef _SIZE_T_DEFINED_ +#define _SIZE_T_DEFINED_ +typedef unsigned int size_t; +#endif +typedef unsigned int uintptr_t; +#endif /* __GNUC__ || _MSC_VER */ +#endif /* !_STDINT_H_ && !HAVE_STDINT_H */ + +#ifdef _WIN64 +# define SIZEOF_VOIDP 8 +#else +# define SIZEOF_VOIDP 4 +#endif + +/* Useful headers */ +#define HAVE_DXGI_H 1 +#if WINAPI_FAMILY != WINAPI_FAMILY_PHONE_APP +#define HAVE_XINPUT_H 1 +#endif +#define HAVE_LIBC 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STRING_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_SIGNAL_H 1 + +/* C library functions */ +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMCMP 1 +#define HAVE_STRLEN 1 +#define HAVE__STRREV 1 +#define HAVE__STRUPR 1 +//#define HAVE__STRLWR 1 // TODO, WinRT: consider using _strlwr_s instead +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +//#define HAVE_ITOA 1 // TODO, WinRT: consider using _itoa_s instead +//#define HAVE__LTOA 1 // TODO, WinRT: consider using _ltoa_s instead +//#define HAVE__ULTOA 1 // TODO, WinRT: consider using _ultoa_s instead +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +//#define HAVE_STRTOLL 1 +#define HAVE_STRTOD 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE__STRICMP 1 +#define HAVE__STRNICMP 1 +#define HAVE_VSNPRINTF 1 +//#define HAVE_SSCANF 1 // TODO, WinRT: consider using sscanf_s instead +#define HAVE_M_PI 1 +#define HAVE_ATAN 1 +#define HAVE_ATAN2 1 +#define HAVE_CEIL 1 +#define HAVE__COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_POW 1 +//#define HAVE_SCALBN 1 +#define HAVE__SCALB 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE__FSEEKI64 1 + +/* Enable various audio drivers */ +#define SDL_AUDIO_DRIVER_XAUDIO2 1 +#define SDL_AUDIO_DRIVER_DISK 1 +#define SDL_AUDIO_DRIVER_DUMMY 1 + +/* Enable various input drivers */ +#if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP +#define SDL_JOYSTICK_DISABLED 1 +#define SDL_HAPTIC_DISABLED 1 +#else +#define SDL_JOYSTICK_XINPUT 1 +#define SDL_HAPTIC_XINPUT 1 +#endif + +/* Enable various shared object loading systems */ +#define SDL_LOADSO_WINDOWS 1 + +/* Enable various threading systems */ +#if (NTDDI_VERSION >= NTDDI_WINBLUE) +#define SDL_THREAD_WINDOWS 1 +#else +/* WinRT on Windows 8.0 and Windows Phone 8.0 don't support CreateThread() */ +#define SDL_THREAD_STDCPP 1 +#endif + +/* Enable various timer systems */ +#define SDL_TIMER_WINDOWS 1 + +/* Enable various video drivers */ +#define SDL_VIDEO_DRIVER_WINRT 1 +#define SDL_VIDEO_DRIVER_DUMMY 1 + +/* Enable OpenGL ES 2.0 (via a modified ANGLE library) */ +#define SDL_VIDEO_OPENGL_ES2 1 +#define SDL_VIDEO_OPENGL_EGL 1 + +/* Enable appropriate renderer(s) */ +#define SDL_VIDEO_RENDER_D3D11 1 + +#if SDL_VIDEO_OPENGL_ES2 +#define SDL_VIDEO_RENDER_OGL_ES2 1 +#endif + +/* Enable system power support */ +#define SDL_POWER_WINRT 1 + +/* Enable assembly routines (Win64 doesn't have inline asm) */ +#ifndef _WIN64 +#define SDL_ASSEMBLY_ROUTINES 1 +#endif + +#endif /* SDL_config_winrt_h_ */ diff --git a/lib/SDL2/include/SDL_config_wiz.h b/lib/SDL2/include/SDL_config_wiz.h new file mode 100644 index 0000000000..5bb845a0cc --- /dev/null +++ b/lib/SDL2/include/SDL_config_wiz.h @@ -0,0 +1,121 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef SDL_config_wiz_h_ +#define SDL_config_wiz_h_ +#define SDL_config_h_ + +/* This is a set of defines to configure the SDL features */ + +/* General platform specific identifiers */ +#include "SDL_platform.h" + +#define SDL_BYTEORDER 1234 + +#define HAVE_ALLOCA_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_STDIO_H 1 +#define STDC_HEADERS 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STDARG_H 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MEMORY_H 1 +#define HAVE_STRING_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_MATH_H 1 +#define HAVE_ICONV_H 1 +#define HAVE_SIGNAL_H 1 +#define HAVE_MALLOC 1 +#define HAVE_CALLOC 1 +#define HAVE_REALLOC 1 +#define HAVE_FREE 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETENV 1 +#define HAVE_SETENV 1 +#define HAVE_PUTENV 1 +#define HAVE_UNSETENV 1 +#define HAVE_QSORT 1 +#define HAVE_ABS 1 +#define HAVE_BCOPY 1 +#define HAVE_MEMSET 1 +#define HAVE_MEMCPY 1 +#define HAVE_MEMMOVE 1 +#define HAVE_STRLEN 1 +#define HAVE_STRDUP 1 +#define HAVE_STRCHR 1 +#define HAVE_STRRCHR 1 +#define HAVE_STRSTR 1 +#define HAVE_STRTOL 1 +#define HAVE_STRTOUL 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_ATOI 1 +#define HAVE_ATOF 1 +#define HAVE_STRCMP 1 +#define HAVE_STRNCMP 1 +#define HAVE_STRCASECMP 1 +#define HAVE_STRNCASECMP 1 +#define HAVE_VSSCANF 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_CEIL 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_FABS 1 +#define HAVE_FLOOR 1 +#define HAVE_LOG 1 +#define HAVE_SCALBN 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#define HAVE_SIGACTION 1 +#define HAVE_SETJMP 1 +#define HAVE_NANOSLEEP 1 +#define HAVE_POW 1 + +#define SDL_AUDIO_DRIVER_DUMMY 1 +#define SDL_AUDIO_DRIVER_OSS 1 + +#define SDL_INPUT_LINUXEV 1 +#define SDL_INPUT_TSLIB 1 +#define SDL_JOYSTICK_LINUX 1 +#define SDL_HAPTIC_LINUX 1 + +#define SDL_LOADSO_DLOPEN 1 + +#define SDL_THREAD_PTHREAD 1 +#define SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP 1 + +#define SDL_TIMER_UNIX 1 + +#define SDL_VIDEO_DRIVER_DUMMY 1 +#define SDL_VIDEO_DRIVER_PANDORA 1 +#define SDL_VIDEO_RENDER_OGL_ES 1 +#define SDL_VIDEO_OPENGL_ES 1 + +#endif /* SDL_config_wiz_h_ */ diff --git a/lib/SDL2/include/SDL_copying.h b/lib/SDL2/include/SDL_copying.h new file mode 100644 index 0000000000..8f60af6b4f --- /dev/null +++ b/lib/SDL2/include/SDL_copying.h @@ -0,0 +1,20 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ diff --git a/lib/SDL2/include/SDL_cpuinfo.h b/lib/SDL2/include/SDL_cpuinfo.h index d0ba47bf7f..94b64b03bc 100644 --- a/lib/SDL2/include/SDL_cpuinfo.h +++ b/lib/SDL2/include/SDL_cpuinfo.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,14 +25,20 @@ * CPU feature detection for SDL. */ -#ifndef _SDL_cpuinfo_h -#define _SDL_cpuinfo_h +#ifndef SDL_cpuinfo_h_ +#define SDL_cpuinfo_h_ #include "SDL_stdinc.h" /* Need to do this here because intrin.h has C++ code in it */ /* Visual Studio 2005 has a bug where intrin.h conflicts with winnt.h */ #if defined(_MSC_VER) && (_MSC_VER >= 1500) && (defined(_M_IX86) || defined(_M_X64)) +#ifdef __clang__ +/* Many of the intrinsics SDL uses are not implemented by clang with Visual Studio */ +#undef __MMX__ +#undef __SSE__ +#undef __SSE2__ +#else #include #ifndef _WIN64 #define __MMX__ @@ -40,6 +46,7 @@ #endif #define __SSE__ #define __SSE2__ +#endif /* __clang__ */ #elif defined(__MINGW64_VERSION_MAJOR) #include #else @@ -61,6 +68,9 @@ #ifdef __SSE2__ #include #endif +#ifdef __SSE3__ +#include +#endif #endif #include "begin_code.h" @@ -144,6 +154,11 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX(void); */ extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void); +/** + * This function returns true if the CPU has NEON (ARM SIMD) features. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void); + /** * This function returns the amount of RAM configured in the system, in MB. */ @@ -156,6 +171,6 @@ extern DECLSPEC int SDLCALL SDL_GetSystemRAM(void); #endif #include "close_code.h" -#endif /* _SDL_cpuinfo_h */ +#endif /* SDL_cpuinfo_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_egl.h b/lib/SDL2/include/SDL_egl.h index bea2a6c0ec..e47fbe8624 100644 --- a/lib/SDL2/include/SDL_egl.h +++ b/lib/SDL2/include/SDL_egl.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -132,7 +132,7 @@ *------------------------------------------------------------------------- * This precedes the return type of the function in the function prototype. */ -#if defined(_WIN32) && !defined(__SCITECH_SNAP__) +#if defined(_WIN32) && !defined(__SCITECH_SNAP__) && !defined(SDL_VIDEO_STATIC_ANGLE) # define KHRONOS_APICALL __declspec(dllimport) #elif defined (__SYMBIAN32__) # define KHRONOS_APICALL IMPORT_C diff --git a/lib/SDL2/include/SDL_endian.h b/lib/SDL2/include/SDL_endian.h index 9100b103db..3eda7f2871 100644 --- a/lib/SDL2/include/SDL_endian.h +++ b/lib/SDL2/include/SDL_endian.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Functions for reading and writing endian-specific values */ -#ifndef _SDL_endian_h -#define _SDL_endian_h +#ifndef SDL_endian_h_ +#define SDL_endian_h_ #include "SDL_stdinc.h" @@ -96,6 +96,12 @@ SDL_Swap16(Uint16 x) __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc"); return x; } +#elif defined(__WATCOMC__) && defined(__386__) +extern _inline Uint16 SDL_Swap16(Uint16); +#pragma aux SDL_Swap16 = \ + "xchg al, ah" \ + parm [ax] \ + modify [ax]; #else SDL_FORCE_INLINE Uint16 SDL_Swap16(Uint16 x) @@ -136,6 +142,21 @@ SDL_Swap32(Uint32 x) __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc"); return x; } +#elif defined(__WATCOMC__) && defined(__386__) +extern _inline Uint32 SDL_Swap32(Uint32); +#ifndef __SW_3 /* 486+ */ +#pragma aux SDL_Swap32 = \ + "bswap eax" \ + parm [eax] \ + modify [eax]; +#else /* 386-only */ +#pragma aux SDL_Swap32 = \ + "xchg al, ah" \ + "ror eax, 16" \ + "xchg al, ah" \ + parm [eax] \ + modify [eax]; +#endif #else SDL_FORCE_INLINE Uint32 SDL_Swap32(Uint32 x) @@ -234,6 +255,6 @@ SDL_SwapFloat(float x) #endif #include "close_code.h" -#endif /* _SDL_endian_h */ +#endif /* SDL_endian_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_error.h b/lib/SDL2/include/SDL_error.h index 2f3b4b5008..49be9827e1 100644 --- a/lib/SDL2/include/SDL_error.h +++ b/lib/SDL2/include/SDL_error.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Simple error message routines for SDL. */ -#ifndef _SDL_error_h -#define _SDL_error_h +#ifndef SDL_error_h_ +#define SDL_error_h_ #include "SDL_stdinc.h" @@ -71,6 +71,6 @@ extern DECLSPEC int SDLCALL SDL_Error(SDL_errorcode code); #endif #include "close_code.h" -#endif /* _SDL_error_h */ +#endif /* SDL_error_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_events.h b/lib/SDL2/include/SDL_events.h index 1437f4c705..0fc09bc37d 100644 --- a/lib/SDL2/include/SDL_events.h +++ b/lib/SDL2/include/SDL_events.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL event handling. */ -#ifndef _SDL_events_h -#define _SDL_events_h +#ifndef SDL_events_h_ +#define SDL_events_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -136,6 +136,9 @@ typedef enum /* Drag and drop events */ SDL_DROPFILE = 0x1000, /**< The system requests a file open */ + SDL_DROPTEXT, /**< text/plain drag-and-drop event */ + SDL_DROPBEGIN, /**< A new set of drops is beginning (NULL filename) */ + SDL_DROPCOMPLETE, /**< Current set of drops is now complete (NULL filename) */ /* Audio hotplug events */ SDL_AUDIODEVICEADDED = 0x1100, /**< A new audio device is available */ @@ -162,7 +165,7 @@ typedef enum typedef struct SDL_CommonEvent { Uint32 type; - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ } SDL_CommonEvent; /** @@ -171,7 +174,7 @@ typedef struct SDL_CommonEvent typedef struct SDL_WindowEvent { Uint32 type; /**< ::SDL_WINDOWEVENT */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The associated window */ Uint8 event; /**< ::SDL_WindowEventID */ Uint8 padding1; @@ -187,7 +190,7 @@ typedef struct SDL_WindowEvent typedef struct SDL_KeyboardEvent { Uint32 type; /**< ::SDL_KEYDOWN or ::SDL_KEYUP */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The window with keyboard focus, if any */ Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ Uint8 repeat; /**< Non-zero if this is a key repeat */ @@ -203,7 +206,7 @@ typedef struct SDL_KeyboardEvent typedef struct SDL_TextEditingEvent { Uint32 type; /**< ::SDL_TEXTEDITING */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The window with keyboard focus, if any */ char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE]; /**< The editing text */ Sint32 start; /**< The start cursor of selected editing text */ @@ -218,7 +221,7 @@ typedef struct SDL_TextEditingEvent typedef struct SDL_TextInputEvent { Uint32 type; /**< ::SDL_TEXTINPUT */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The window with keyboard focus, if any */ char text[SDL_TEXTINPUTEVENT_TEXT_SIZE]; /**< The input text */ } SDL_TextInputEvent; @@ -229,7 +232,7 @@ typedef struct SDL_TextInputEvent typedef struct SDL_MouseMotionEvent { Uint32 type; /**< ::SDL_MOUSEMOTION */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The window with mouse focus, if any */ Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ Uint32 state; /**< The current button state */ @@ -245,7 +248,7 @@ typedef struct SDL_MouseMotionEvent typedef struct SDL_MouseButtonEvent { Uint32 type; /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The window with mouse focus, if any */ Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ Uint8 button; /**< The mouse button index */ @@ -262,7 +265,7 @@ typedef struct SDL_MouseButtonEvent typedef struct SDL_MouseWheelEvent { Uint32 type; /**< ::SDL_MOUSEWHEEL */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The window with mouse focus, if any */ Uint32 which; /**< The mouse instance id, or SDL_TOUCH_MOUSEID */ Sint32 x; /**< The amount scrolled horizontally, positive to the right and negative to the left */ @@ -276,7 +279,7 @@ typedef struct SDL_MouseWheelEvent typedef struct SDL_JoyAxisEvent { Uint32 type; /**< ::SDL_JOYAXISMOTION */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_JoystickID which; /**< The joystick instance id */ Uint8 axis; /**< The joystick axis index */ Uint8 padding1; @@ -292,7 +295,7 @@ typedef struct SDL_JoyAxisEvent typedef struct SDL_JoyBallEvent { Uint32 type; /**< ::SDL_JOYBALLMOTION */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_JoystickID which; /**< The joystick instance id */ Uint8 ball; /**< The joystick trackball index */ Uint8 padding1; @@ -308,7 +311,7 @@ typedef struct SDL_JoyBallEvent typedef struct SDL_JoyHatEvent { Uint32 type; /**< ::SDL_JOYHATMOTION */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_JoystickID which; /**< The joystick instance id */ Uint8 hat; /**< The joystick hat index */ Uint8 value; /**< The hat position value. @@ -328,7 +331,7 @@ typedef struct SDL_JoyHatEvent typedef struct SDL_JoyButtonEvent { Uint32 type; /**< ::SDL_JOYBUTTONDOWN or ::SDL_JOYBUTTONUP */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_JoystickID which; /**< The joystick instance id */ Uint8 button; /**< The joystick button index */ Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ @@ -342,7 +345,7 @@ typedef struct SDL_JoyButtonEvent typedef struct SDL_JoyDeviceEvent { Uint32 type; /**< ::SDL_JOYDEVICEADDED or ::SDL_JOYDEVICEREMOVED */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED event */ } SDL_JoyDeviceEvent; @@ -353,7 +356,7 @@ typedef struct SDL_JoyDeviceEvent typedef struct SDL_ControllerAxisEvent { Uint32 type; /**< ::SDL_CONTROLLERAXISMOTION */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_JoystickID which; /**< The joystick instance id */ Uint8 axis; /**< The controller axis (SDL_GameControllerAxis) */ Uint8 padding1; @@ -370,7 +373,7 @@ typedef struct SDL_ControllerAxisEvent typedef struct SDL_ControllerButtonEvent { Uint32 type; /**< ::SDL_CONTROLLERBUTTONDOWN or ::SDL_CONTROLLERBUTTONUP */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_JoystickID which; /**< The joystick instance id */ Uint8 button; /**< The controller button (SDL_GameControllerButton) */ Uint8 state; /**< ::SDL_PRESSED or ::SDL_RELEASED */ @@ -385,7 +388,7 @@ typedef struct SDL_ControllerButtonEvent typedef struct SDL_ControllerDeviceEvent { Uint32 type; /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */ } SDL_ControllerDeviceEvent; @@ -395,7 +398,7 @@ typedef struct SDL_ControllerDeviceEvent typedef struct SDL_AudioDeviceEvent { Uint32 type; /**< ::SDL_AUDIODEVICEADDED, or ::SDL_AUDIODEVICEREMOVED */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 which; /**< The audio device index for the ADDED event (valid until next SDL_GetNumAudioDevices() call), SDL_AudioDeviceID for the REMOVED event */ Uint8 iscapture; /**< zero if an output device, non-zero if a capture device. */ Uint8 padding1; @@ -410,7 +413,7 @@ typedef struct SDL_AudioDeviceEvent typedef struct SDL_TouchFingerEvent { Uint32 type; /**< ::SDL_FINGERMOTION or ::SDL_FINGERDOWN or ::SDL_FINGERUP */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_TouchID touchId; /**< The touch device id */ SDL_FingerID fingerId; float x; /**< Normalized in the range 0...1 */ @@ -427,8 +430,8 @@ typedef struct SDL_TouchFingerEvent typedef struct SDL_MultiGestureEvent { Uint32 type; /**< ::SDL_MULTIGESTURE */ - Uint32 timestamp; - SDL_TouchID touchId; /**< The touch device index */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_TouchID touchId; /**< The touch device id */ float dTheta; float dDist; float x; @@ -444,7 +447,7 @@ typedef struct SDL_MultiGestureEvent typedef struct SDL_DollarGestureEvent { Uint32 type; /**< ::SDL_DOLLARGESTURE or ::SDL_DOLLARRECORD */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_TouchID touchId; /**< The touch device id */ SDL_GestureID gestureId; Uint32 numFingers; @@ -461,9 +464,10 @@ typedef struct SDL_DollarGestureEvent */ typedef struct SDL_DropEvent { - Uint32 type; /**< ::SDL_DROPFILE */ - Uint32 timestamp; - char *file; /**< The file name, which should be freed with SDL_free() */ + Uint32 type; /**< ::SDL_DROPBEGIN or ::SDL_DROPFILE or ::SDL_DROPTEXT or ::SDL_DROPCOMPLETE */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + char *file; /**< The file name, which should be freed with SDL_free(), is NULL on begin/complete */ + Uint32 windowID; /**< The window that was dropped on, if any */ } SDL_DropEvent; @@ -473,7 +477,7 @@ typedef struct SDL_DropEvent typedef struct SDL_QuitEvent { Uint32 type; /**< ::SDL_QUIT */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ } SDL_QuitEvent; /** @@ -482,7 +486,7 @@ typedef struct SDL_QuitEvent typedef struct SDL_OSEvent { Uint32 type; /**< ::SDL_QUIT */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ } SDL_OSEvent; /** @@ -491,7 +495,7 @@ typedef struct SDL_OSEvent typedef struct SDL_UserEvent { Uint32 type; /**< ::SDL_USEREVENT through ::SDL_LASTEVENT-1 */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ Uint32 windowID; /**< The associated window if any */ Sint32 code; /**< User defined event code */ void *data1; /**< User defined data pointer */ @@ -511,7 +515,7 @@ typedef struct SDL_SysWMmsg SDL_SysWMmsg; typedef struct SDL_SysWMEvent { Uint32 type; /**< ::SDL_SYSWMEVENT */ - Uint32 timestamp; + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ SDL_SysWMmsg *msg; /**< driver dependent data, defined in SDL_syswm.h */ } SDL_SysWMEvent; @@ -720,7 +724,7 @@ extern DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter, /** * This function allows you to set the state of processing certain events. * - If \c state is set to ::SDL_IGNORE, that event will be automatically - * dropped from the event queue and will not event be filtered. + * dropped from the event queue and will not be filtered. * - If \c state is set to ::SDL_ENABLE, that event will be processed * normally. * - If \c state is set to ::SDL_QUERY, SDL_EventState() will return the @@ -745,6 +749,6 @@ extern DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents); #endif #include "close_code.h" -#endif /* _SDL_events_h */ +#endif /* SDL_events_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_filesystem.h b/lib/SDL2/include/SDL_filesystem.h index 02999ed270..a1c846ad0f 100644 --- a/lib/SDL2/include/SDL_filesystem.h +++ b/lib/SDL2/include/SDL_filesystem.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * \brief Include file for filesystem SDL API functions */ -#ifndef _SDL_filesystem_h -#define _SDL_filesystem_h +#ifndef SDL_filesystem_h_ +#define SDL_filesystem_h_ #include "SDL_stdinc.h" @@ -131,6 +131,6 @@ extern DECLSPEC char *SDLCALL SDL_GetPrefPath(const char *org, const char *app); #endif #include "close_code.h" -#endif /* _SDL_filesystem_h */ +#endif /* SDL_filesystem_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_gamecontroller.h b/lib/SDL2/include/SDL_gamecontroller.h index 42087eea16..c9215132ef 100644 --- a/lib/SDL2/include/SDL_gamecontroller.h +++ b/lib/SDL2/include/SDL_gamecontroller.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL game controller event handling */ -#ifndef _SDL_gamecontroller_h -#define _SDL_gamecontroller_h +#ifndef SDL_gamecontroller_h_ +#define SDL_gamecontroller_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -51,7 +51,9 @@ extern "C" { * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS */ -/* The gamecontroller structure used to identify an SDL game controller */ +/** + * The gamecontroller structure used to identify an SDL game controller + */ struct _SDL_GameController; typedef struct _SDL_GameController SDL_GameController; @@ -87,13 +89,13 @@ typedef struct SDL_GameControllerButtonBind * To count the number of game controllers in the system for the following: * int nJoysticks = SDL_NumJoysticks(); * int nGameControllers = 0; - * for ( int i = 0; i < nJoysticks; i++ ) { - * if ( SDL_IsGameController(i) ) { + * for (int i = 0; i < nJoysticks; i++) { + * if (SDL_IsGameController(i)) { * nGameControllers++; * } * } * - * Using the SDL_HINT_GAMECONTROLLERCONFIG hint or the SDL_GameControllerAddMapping you can add support for controllers SDL is unaware of or cause an existing controller to have a different binding. The format is: + * Using the SDL_HINT_GAMECONTROLLERCONFIG hint or the SDL_GameControllerAddMapping() you can add support for controllers SDL is unaware of or cause an existing controller to have a different binding. The format is: * guid,name,mappings * * Where GUID is the string value from SDL_JoystickGetGUIDString(), name is the human readable string for the device and mappings are controller mappings to joystick ones. @@ -105,7 +107,7 @@ typedef struct SDL_GameControllerButtonBind * Buttons can be used as a controller axis and vice versa. * * This string shows an example of a valid mapping for a controller - * "341a3608000000000000504944564944,Afterglow PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7", + * "03000000341a00003608000000000000,PS3 Controller,a:b1,b:b2,y:b3,x:b0,start:b9,guide:b12,back:b8,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7", * */ @@ -117,7 +119,7 @@ typedef struct SDL_GameControllerButtonBind * * \return number of mappings added, -1 on error */ -extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW( SDL_RWops * rw, int freerw ); +extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW(SDL_RWops * rw, int freerw); /** * Load a set of mappings from a file, filtered by the current SDL_GetPlatform() @@ -131,28 +133,41 @@ extern DECLSPEC int SDLCALL SDL_GameControllerAddMappingsFromRW( SDL_RWops * rw, * * \return 1 if mapping is added, 0 if updated, -1 on error */ -extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping( const char* mappingString ); +extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping(const char* mappingString); + +/** + * Get the number of mappings installed + * + * \return the number of mappings + */ +extern DECLSPEC int SDLCALL SDL_GameControllerNumMappings(void); + +/** + * Get the mapping at a particular index. + * + * \return the mapping string. Must be freed with SDL_free(). Returns NULL if the index is out of range. + */ +extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForIndex(int mapping_index); /** * Get a mapping string for a GUID * - * \return the mapping string. Must be freed with SDL_free. Returns NULL if no mapping is available + * \return the mapping string. Must be freed with SDL_free(). Returns NULL if no mapping is available */ -extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID( SDL_JoystickGUID guid ); +extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID(SDL_JoystickGUID guid); /** * Get a mapping string for an open GameController * - * \return the mapping string. Must be freed with SDL_free. Returns NULL if no mapping is available + * \return the mapping string. Must be freed with SDL_free(). Returns NULL if no mapping is available */ -extern DECLSPEC char * SDLCALL SDL_GameControllerMapping( SDL_GameController * gamecontroller ); +extern DECLSPEC char * SDLCALL SDL_GameControllerMapping(SDL_GameController * gamecontroller); /** * Is the joystick on this index supported by the game controller interface? */ extern DECLSPEC SDL_bool SDLCALL SDL_IsGameController(int joystick_index); - /** * Get the implementation dependent name of a game controller. * This can be called before any controllers are opened. @@ -181,6 +196,24 @@ extern DECLSPEC SDL_GameController *SDLCALL SDL_GameControllerFromInstanceID(SDL */ extern DECLSPEC const char *SDLCALL SDL_GameControllerName(SDL_GameController *gamecontroller); +/** + * Get the USB vendor ID of an opened controller, if available. + * If the vendor ID isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetVendor(SDL_GameController * gamecontroller); + +/** + * Get the USB product ID of an opened controller, if available. + * If the product ID isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProduct(SDL_GameController * gamecontroller); + +/** + * Get the product version of an opened controller, if available. + * If the product version isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProductVersion(SDL_GameController * gamecontroller); + /** * Returns SDL_TRUE if the controller has been opened and currently connected, * or SDL_FALSE if it has not. @@ -214,6 +247,12 @@ extern DECLSPEC void SDLCALL SDL_GameControllerUpdate(void); /** * The list of axes available from a controller + * + * Thumbstick axis values range from SDL_JOYSTICK_AXIS_MIN to SDL_JOYSTICK_AXIS_MAX, + * and are centered within ~8000 of zero, though advanced UI will allow users to set + * or autodetect the dead zone, which varies between controllers. + * + * Trigger axis values range from 0 to SDL_JOYSTICK_AXIS_MAX. */ typedef enum { @@ -318,6 +357,6 @@ extern DECLSPEC void SDLCALL SDL_GameControllerClose(SDL_GameController *gamecon #endif #include "close_code.h" -#endif /* _SDL_gamecontroller_h */ +#endif /* SDL_gamecontroller_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_gesture.h b/lib/SDL2/include/SDL_gesture.h index 3c29ca7ac8..2bba6a7294 100644 --- a/lib/SDL2/include/SDL_gesture.h +++ b/lib/SDL2/include/SDL_gesture.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL gesture event handling. */ -#ifndef _SDL_gesture_h -#define _SDL_gesture_h +#ifndef SDL_gesture_h_ +#define SDL_gesture_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -82,6 +82,6 @@ extern DECLSPEC int SDLCALL SDL_LoadDollarTemplates(SDL_TouchID touchId, SDL_RWo #endif #include "close_code.h" -#endif /* _SDL_gesture_h */ +#endif /* SDL_gesture_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_haptic.h b/lib/SDL2/include/SDL_haptic.h index b36d78b127..60daefaa70 100644 --- a/lib/SDL2/include/SDL_haptic.h +++ b/lib/SDL2/include/SDL_haptic.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -22,12 +22,12 @@ /** * \file SDL_haptic.h * - * \brief The SDL Haptic subsystem allows you to control haptic (force feedback) + * \brief The SDL haptic subsystem allows you to control haptic (force feedback) * devices. * * The basic usage is as follows: - * - Initialize the Subsystem (::SDL_INIT_HAPTIC). - * - Open a Haptic Device. + * - Initialize the subsystem (::SDL_INIT_HAPTIC). + * - Open a haptic device. * - SDL_HapticOpen() to open from index. * - SDL_HapticOpenFromJoystick() to open from an existing joystick. * - Create an effect (::SDL_HapticEffect). @@ -104,8 +104,8 @@ * \endcode */ -#ifndef _SDL_haptic_h -#define _SDL_haptic_h +#ifndef SDL_haptic_h_ +#define SDL_haptic_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -149,7 +149,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticCondition */ -#define SDL_HAPTIC_CONSTANT (1<<0) +#define SDL_HAPTIC_CONSTANT (1u<<0) /** * \brief Sine wave effect supported. @@ -158,7 +158,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticPeriodic */ -#define SDL_HAPTIC_SINE (1<<1) +#define SDL_HAPTIC_SINE (1u<<1) /** * \brief Left/Right effect supported. @@ -169,7 +169,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * \warning this value was SDL_HAPTIC_SQUARE right before 2.0.0 shipped. Sorry, * we ran out of bits, and this is important for XInput devices. */ -#define SDL_HAPTIC_LEFTRIGHT (1<<2) +#define SDL_HAPTIC_LEFTRIGHT (1u<<2) /* !!! FIXME: put this back when we have more bits in 2.1 */ /* #define SDL_HAPTIC_SQUARE (1<<2) */ @@ -181,7 +181,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticPeriodic */ -#define SDL_HAPTIC_TRIANGLE (1<<3) +#define SDL_HAPTIC_TRIANGLE (1u<<3) /** * \brief Sawtoothup wave effect supported. @@ -190,7 +190,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticPeriodic */ -#define SDL_HAPTIC_SAWTOOTHUP (1<<4) +#define SDL_HAPTIC_SAWTOOTHUP (1u<<4) /** * \brief Sawtoothdown wave effect supported. @@ -199,7 +199,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticPeriodic */ -#define SDL_HAPTIC_SAWTOOTHDOWN (1<<5) +#define SDL_HAPTIC_SAWTOOTHDOWN (1u<<5) /** * \brief Ramp effect supported. @@ -208,7 +208,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticRamp */ -#define SDL_HAPTIC_RAMP (1<<6) +#define SDL_HAPTIC_RAMP (1u<<6) /** * \brief Spring effect supported - uses axes position. @@ -218,7 +218,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticCondition */ -#define SDL_HAPTIC_SPRING (1<<7) +#define SDL_HAPTIC_SPRING (1u<<7) /** * \brief Damper effect supported - uses axes velocity. @@ -228,7 +228,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticCondition */ -#define SDL_HAPTIC_DAMPER (1<<8) +#define SDL_HAPTIC_DAMPER (1u<<8) /** * \brief Inertia effect supported - uses axes acceleration. @@ -238,7 +238,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticCondition */ -#define SDL_HAPTIC_INERTIA (1<<9) +#define SDL_HAPTIC_INERTIA (1u<<9) /** * \brief Friction effect supported - uses axes movement. @@ -248,14 +248,14 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticCondition */ -#define SDL_HAPTIC_FRICTION (1<<10) +#define SDL_HAPTIC_FRICTION (1u<<10) /** * \brief Custom effect is supported. * * User defined custom haptic effect. */ -#define SDL_HAPTIC_CUSTOM (1<<11) +#define SDL_HAPTIC_CUSTOM (1u<<11) /* @} *//* Haptic effects */ @@ -268,7 +268,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticSetGain */ -#define SDL_HAPTIC_GAIN (1<<12) +#define SDL_HAPTIC_GAIN (1u<<12) /** * \brief Device can set autocenter. @@ -277,24 +277,26 @@ typedef struct _SDL_Haptic SDL_Haptic; * * \sa SDL_HapticSetAutocenter */ -#define SDL_HAPTIC_AUTOCENTER (1<<13) +#define SDL_HAPTIC_AUTOCENTER (1u<<13) /** * \brief Device can be queried for effect status. * - * Device can be queried for effect status. + * Device supports querying effect status. * * \sa SDL_HapticGetEffectStatus */ -#define SDL_HAPTIC_STATUS (1<<14) +#define SDL_HAPTIC_STATUS (1u<<14) /** * \brief Device can be paused. * + * Devices supports being paused. + * * \sa SDL_HapticPause * \sa SDL_HapticUnpause */ -#define SDL_HAPTIC_PAUSE (1<<15) +#define SDL_HAPTIC_PAUSE (1u<<15) /** @@ -444,7 +446,7 @@ typedef struct SDL_HapticDirection /** * \brief A structure containing a template for a Constant effect. * - * The struct is exclusive to the ::SDL_HAPTIC_CONSTANT effect. + * This struct is exclusively for the ::SDL_HAPTIC_CONSTANT effect. * * A constant effect applies a constant force in the specified direction * to the joystick. @@ -676,6 +678,8 @@ typedef struct SDL_HapticLeftRight /** * \brief A structure containing a template for the ::SDL_HAPTIC_CUSTOM effect. * + * This struct is exclusively for the ::SDL_HAPTIC_CUSTOM effect. + * * A custom force feedback effect is much like a periodic effect, where the * application can define its exact shape. You will have to allocate the * data yourself. Data should consist of channels * samples Uint16 samples. @@ -804,7 +808,7 @@ typedef union SDL_HapticEffect extern DECLSPEC int SDLCALL SDL_NumHaptics(void); /** - * \brief Get the implementation dependent name of a Haptic device. + * \brief Get the implementation dependent name of a haptic device. * * This can be called before any joysticks are opened. * If no name can be found, this function returns NULL. @@ -817,9 +821,9 @@ extern DECLSPEC int SDLCALL SDL_NumHaptics(void); extern DECLSPEC const char *SDLCALL SDL_HapticName(int device_index); /** - * \brief Opens a Haptic device for usage. + * \brief Opens a haptic device for use. * - * The index passed as an argument refers to the N'th Haptic device on this + * The index passed as an argument refers to the N'th haptic device on this * system. * * When opening a haptic device, its gain will be set to maximum and @@ -885,15 +889,15 @@ extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpenFromMouse(void); * \brief Checks to see if a joystick has haptic features. * * \param joystick Joystick to test for haptic capabilities. - * \return 1 if the joystick is haptic, 0 if it isn't - * or -1 if an error ocurred. + * \return SDL_TRUE if the joystick is haptic, SDL_FALSE if it isn't + * or -1 if an error occurred. * * \sa SDL_HapticOpenFromJoystick */ extern DECLSPEC int SDLCALL SDL_JoystickIsHaptic(SDL_Joystick * joystick); /** - * \brief Opens a Haptic device for usage from a Joystick device. + * \brief Opens a haptic device for use from a joystick device. * * You must still close the haptic device separately. It will not be closed * with the joystick. @@ -913,7 +917,7 @@ extern DECLSPEC SDL_Haptic *SDLCALL SDL_HapticOpenFromJoystick(SDL_Joystick * joystick); /** - * \brief Closes a Haptic device previously opened with SDL_HapticOpen(). + * \brief Closes a haptic device previously opened with SDL_HapticOpen(). * * \param haptic Haptic device to close. */ @@ -957,7 +961,7 @@ extern DECLSPEC int SDLCALL SDL_HapticNumEffectsPlaying(SDL_Haptic * haptic); * Example: * \code * if (SDL_HapticQuery(haptic) & SDL_HAPTIC_CONSTANT) { - * printf("We have constant haptic effect!"); + * printf("We have constant haptic effect!\n"); * } * \endcode * @@ -996,7 +1000,7 @@ extern DECLSPEC int SDLCALL SDL_HapticEffectSupported(SDL_Haptic * haptic, * * \param haptic Haptic device to create the effect on. * \param effect Properties of the effect to create. - * \return The id of the effect on success or -1 on error. + * \return The identifier of the effect on success or -1 on error. * * \sa SDL_HapticUpdateEffect * \sa SDL_HapticRunEffect @@ -1008,13 +1012,13 @@ extern DECLSPEC int SDLCALL SDL_HapticNewEffect(SDL_Haptic * haptic, /** * \brief Updates the properties of an effect. * - * Can be used dynamically, although behaviour when dynamically changing + * Can be used dynamically, although behavior when dynamically changing * direction may be strange. Specifically the effect may reupload itself * and start playing from the start. You cannot change the type either when * running SDL_HapticUpdateEffect(). * * \param haptic Haptic device that has the effect. - * \param effect Effect to update. + * \param effect Identifier of the effect to update. * \param data New effect properties to use. * \return 0 on success or -1 on error. * @@ -1218,6 +1222,6 @@ extern DECLSPEC int SDLCALL SDL_HapticRumbleStop(SDL_Haptic * haptic); #endif #include "close_code.h" -#endif /* _SDL_haptic_h */ +#endif /* SDL_haptic_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_hints.h b/lib/SDL2/include/SDL_hints.h index 3bd5435fb0..007a4bee05 100644 --- a/lib/SDL2/include/SDL_hints.h +++ b/lib/SDL2/include/SDL_hints.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -36,8 +36,8 @@ * to how they would like the library to work. */ -#ifndef _SDL_hints_h -#define _SDL_hints_h +#ifndef SDL_hints_h_ +#define SDL_hints_h_ #include "SDL_stdinc.h" @@ -118,6 +118,17 @@ extern "C" { */ #define SDL_HINT_RENDER_DIRECT3D11_DEBUG "SDL_RENDER_DIRECT3D11_DEBUG" +/** + * \brief A variable controlling the scaling policy for SDL_RenderSetLogicalSize. + * + * This variable can be set to the following values: + * "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen + * "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen + * + * By default letterbox is used + */ +#define SDL_HINT_RENDER_LOGICAL_SIZE_MODE "SDL_RENDER_LOGICAL_SIZE_MODE" + /** * \brief A variable controlling the scaling quality * @@ -210,6 +221,12 @@ extern "C" { */ #define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN" +/** + * \brief A variable to specify custom icon resource id from RC file on Windows platform + */ +#define SDL_HINT_WINDOWS_INTRESOURCE_ICON "SDL_WINDOWS_INTRESOURCE_ICON" +#define SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL "SDL_WINDOWS_INTRESOURCE_ICON_SMALL" + /** * \brief A variable controlling whether the windows message loop is processed by SDL * @@ -233,16 +250,48 @@ extern "C" { #define SDL_HINT_GRAB_KEYBOARD "SDL_GRAB_KEYBOARD" /** -* \brief A variable controlling whether relative mouse mode is implemented using mouse warping -* -* This variable can be set to the following values: -* "0" - Relative mouse mode uses raw input -* "1" - Relative mouse mode uses mouse warping -* -* By default SDL will use raw input for relative mouse mode -*/ + * \brief A variable setting the speed scale for mouse motion, in floating point, when the mouse is not in relative mode + */ +#define SDL_HINT_MOUSE_NORMAL_SPEED_SCALE "SDL_MOUSE_NORMAL_SPEED_SCALE" + +/** + * \brief A variable setting the scale for mouse motion, in floating point, when the mouse is in relative mode + */ +#define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" + +/** + * \brief A variable controlling whether relative mouse mode is implemented using mouse warping + * + * This variable can be set to the following values: + * "0" - Relative mouse mode uses raw input + * "1" - Relative mouse mode uses mouse warping + * + * By default SDL will use raw input for relative mouse mode + */ #define SDL_HINT_MOUSE_RELATIVE_MODE_WARP "SDL_MOUSE_RELATIVE_MODE_WARP" +/** + * \brief Allow mouse click events when clicking to focus an SDL window + * + * This variable can be set to the following values: + * "0" - Ignore mouse clicks that activate a window + * "1" - Generate events for mouse clicks that activate a window + * + * By default SDL will ignore mouse clicks that activate a window + */ +#define SDL_HINT_MOUSE_FOCUS_CLICKTHROUGH "SDL_MOUSE_FOCUS_CLICKTHROUGH" + +/** + * \brief A variable controlling whether touch events should generate synthetic mouse events + * + * This variable can be set to the following values: + * "0" - Touch events will not generate mouse events + * "1" - Touch events will generate mouse events + * + * By default SDL will generate mouse events for touch events + */ +#define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" + /** * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to true. * @@ -257,8 +306,8 @@ extern "C" { * this is problematic. This functionality can be disabled by setting this * hint. * - * As of SDL 2.0.4, SDL_EnableScreenSaver and SDL_DisableScreenSaver accomplish - * the same thing on iOS. They should be preferred over this hint. + * As of SDL 2.0.4, SDL_EnableScreenSaver() and SDL_DisableScreenSaver() + * accomplish the same thing on iOS. They should be preferred over this hint. * * This variable can be set to the following values: * "0" - Enable idle timer @@ -276,7 +325,35 @@ extern "C" { * "LandscapeLeft", "LandscapeRight", "Portrait" "PortraitUpsideDown" */ #define SDL_HINT_ORIENTATIONS "SDL_IOS_ORIENTATIONS" - + +/** + * \brief A variable controlling whether controllers used with the Apple TV + * generate UI events. + * + * When UI events are generated by controller input, the app will be + * backgrounded when the Apple TV remote's menu button is pressed, and when the + * pause or B buttons on gamepads are pressed. + * + * More information about properly making use of controllers for the Apple TV + * can be found here: + * https://developer.apple.com/tvos/human-interface-guidelines/remote-and-controllers/ + * + * This variable can be set to the following values: + * "0" - Controller input does not generate UI events (the default). + * "1" - Controller input generates UI events. + */ +#define SDL_HINT_APPLE_TV_CONTROLLER_UI_EVENTS "SDL_APPLE_TV_CONTROLLER_UI_EVENTS" + +/** + * \brief A variable controlling whether the Apple TV remote's joystick axes + * will automatically match the rotation of the remote. + * + * This variable can be set to the following values: + * "0" - Remote orientation does not affect joystick axes (the default). + * "1" - Joystick axes are based on the orientation of the remote. + */ +#define SDL_HINT_APPLE_TV_REMOTE_ALLOW_ROTATION "SDL_APPLE_TV_REMOTE_ALLOW_ROTATION" + /** * \brief A variable controlling whether the Android / iOS built-in * accelerometer should be listed as a joystick device, rather than listing @@ -288,7 +365,6 @@ extern "C" { */ #define SDL_HINT_ACCELEROMETER_AS_JOYSTICK "SDL_ACCELEROMETER_AS_JOYSTICK" - /** * \brief A variable that lets you disable the detection and use of Xinput gamepad devices * @@ -298,7 +374,6 @@ extern "C" { */ #define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED" - /** * \brief A variable that causes SDL to use the old axis and button mapping for XInput devices. * @@ -308,9 +383,8 @@ extern "C" { */ #define SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING "SDL_XINPUT_USE_OLD_JOYSTICK_MAPPING" - /** - * \brief A variable that lets you manually hint extra gamecontroller db entries + * \brief A variable that lets you manually hint extra gamecontroller db entries. * * The variable should be newline delimited rows of gamecontroller config data, see SDL_gamecontroller.h * @@ -319,6 +393,31 @@ extern "C" { */ #define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG" +/** + * \brief A variable containing a list of devices to skip when scanning for game controllers. + * + * The format of the string is a comma separated list of USB VID/PID pairs + * in hexadecimal form, e.g. + * + * 0xAAAA/0xBBBB,0xCCCC/0xDDDD + * + * The variable can also take the form of @file, in which case the named + * file will be loaded and interpreted as the value of the variable. + */ +#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES "SDL_GAMECONTROLLER_IGNORE_DEVICES" + +/** + * \brief If set, all devices will be skipped when scanning for game controllers except for the ones listed in this variable. + * + * The format of the string is a comma separated list of USB VID/PID pairs + * in hexadecimal form, e.g. + * + * 0xAAAA/0xBBBB,0xCCCC/0xDDDD + * + * The variable can also take the form of @file, in which case the named + * file will be loaded and interpreted as the value of the variable. + */ +#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT" /** * \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background. @@ -333,7 +432,6 @@ extern "C" { */ #define SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS "SDL_JOYSTICK_ALLOW_BACKGROUND_EVENTS" - /** * \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it. * This is a debugging aid for developers and not expected to be used by end users. The default is "1" @@ -344,7 +442,6 @@ extern "C" { */ #define SDL_HINT_ALLOW_TOPMOST "SDL_ALLOW_TOPMOST" - /** * \brief A variable that controls the timer resolution, in milliseconds. * @@ -362,6 +459,33 @@ extern "C" { #define SDL_HINT_TIMER_RESOLUTION "SDL_TIMER_RESOLUTION" +/** + * \brief A variable describing the content orientation on QtWayland-based platforms. + * + * On QtWayland platforms, windows are rotated client-side to allow for custom + * transitions. In order to correctly position overlays (e.g. volume bar) and + * gestures (e.g. events view, close/minimize gestures), the system needs to + * know in which orientation the application is currently drawing its contents. + * + * This does not cause the window to be rotated or resized, the application + * needs to take care of drawing the content in the right orientation (the + * framebuffer is always in portrait mode). + * + * This variable can be one of the following values: + * "primary" (default), "portrait", "landscape", "inverted-portrait", "inverted-landscape" + */ +#define SDL_HINT_QTWAYLAND_CONTENT_ORIENTATION "SDL_QTWAYLAND_CONTENT_ORIENTATION" + +/** + * \brief Flags to set on QtWayland windows to integrate with the native window manager. + * + * On QtWayland platforms, this hint controls the flags to set on the windows. + * For example, on Sailfish OS "OverridesSystemGestures" disables swipe gestures. + * + * This variable is a space-separated list of the following values (empty = no flags): + * "OverridesSystemGestures", "StaysOnTop", "BypassWindowManager" + */ +#define SDL_HINT_QTWAYLAND_WINDOW_FLAGS "SDL_QTWAYLAND_WINDOW_FLAGS" /** * \brief A string specifying SDL's threads stack size in bytes or "0" for the backend's default size @@ -369,7 +493,7 @@ extern "C" { * Use this hint in case you need to set SDL's threads stack size to other than the default. * This is specially useful if you build SDL against a non glibc libc library (such as musl) which * provides a relatively small default thread stack size (a few kilobytes versus the default 8MB glibc uses). -* Support for this hint is currently available only in the pthread backend. +* Support for this hint is currently available only in the pthread, Windows, and PSP backend. */ #define SDL_HINT_THREAD_STACK_SIZE "SDL_THREAD_STACK_SIZE" @@ -431,7 +555,7 @@ extern "C" { * privacy policy. * * To setup a URL to an app's privacy policy, set SDL_HINT_WINRT_PRIVACY_POLICY_URL - * before calling any SDL_Init functions. The contents of the hint should + * before calling any SDL_Init() functions. The contents of the hint should * be a valid URL. For example, "http://www.example.com". * * The default value is "", which will prevent SDL from adding a privacy policy @@ -461,7 +585,7 @@ extern "C" { * The contents of this hint should be encoded as a UTF8 string. * * The default value is "Privacy Policy". This hint should only be set during app - * initialization, preferably before any calls to SDL_Init. + * initialization, preferably before any calls to SDL_Init(). * * For additional information on linking to a privacy policy, see the documentation for * SDL_HINT_WINRT_PRIVACY_POLICY_URL. @@ -630,6 +754,119 @@ extern "C" { */ #define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 "SDL_WINDOWS_NO_CLOSE_ON_ALT_F4" +/** + * \brief Prevent SDL from using version 4 of the bitmap header when saving BMPs. + * + * The bitmap header version 4 is required for proper alpha channel support and + * SDL will use it when required. Should this not be desired, this hint can + * force the use of the 40 byte header version which is supported everywhere. + * + * The variable can be set to the following values: + * "0" - Surfaces with a colorkey or an alpha channel are saved to a + * 32-bit BMP file with an alpha mask. SDL will use the bitmap + * header version 4 and set the alpha mask accordingly. + * "1" - Surfaces with a colorkey or an alpha channel are saved to a + * 32-bit BMP file without an alpha mask. The alpha channel data + * will be in the file, but applications are going to ignore it. + * + * The default value is "0". + */ +#define SDL_HINT_BMP_SAVE_LEGACY_FORMAT "SDL_BMP_SAVE_LEGACY_FORMAT" + +/** + * \brief Tell SDL not to name threads on Windows with the 0x406D1388 Exception. + * The 0x406D1388 Exception is a trick used to inform Visual Studio of a + * thread's name, but it tends to cause problems with other debuggers, + * and the .NET runtime. Note that SDL 2.0.6 and later will still use + * the (safer) SetThreadDescription API, introduced in the Windows 10 + * Creators Update, if available. + * + * The variable can be set to the following values: + * "0" - SDL will raise the 0x406D1388 Exception to name threads. + * This is the default behavior of SDL <= 2.0.4. + * "1" - SDL will not raise this exception, and threads will be unnamed. (default) + * This is necessary with .NET languages or debuggers that aren't Visual Studio. + */ +#define SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING "SDL_WINDOWS_DISABLE_THREAD_NAMING" + +/** + * \brief Tell SDL which Dispmanx layer to use on a Raspberry PI + * + * Also known as Z-order. The variable can take a negative or positive value. + * The default is 10000. + */ +#define SDL_HINT_RPI_VIDEO_LAYER "SDL_RPI_VIDEO_LAYER" + +/** + * \brief A variable controlling what driver to use for OpenGL ES contexts. + * + * On some platforms, currently Windows and X11, OpenGL drivers may support + * creating contexts with an OpenGL ES profile. By default SDL uses these + * profiles, when available, otherwise it attempts to load an OpenGL ES + * library, e.g. that provided by the ANGLE project. This variable controls + * whether SDL follows this default behaviour or will always load an + * OpenGL ES library. + * + * Circumstances where this is useful include + * - Testing an app with a particular OpenGL ES implementation, e.g ANGLE, + * or emulator, e.g. those from ARM, Imagination or Qualcomm. + * - Resolving OpenGL ES function addresses at link time by linking with + * the OpenGL ES library instead of querying them at run time with + * SDL_GL_GetProcAddress(). + * + * Caution: for an application to work with the default behaviour across + * different OpenGL drivers it must query the OpenGL ES function + * addresses at run time using SDL_GL_GetProcAddress(). + * + * This variable is ignored on most platforms because OpenGL ES is native + * or not supported. + * + * This variable can be set to the following values: + * "0" - Use ES profile of OpenGL, if available. (Default when not set.) + * "1" - Load OpenGL ES library using the default library names. + * + */ +#define SDL_HINT_OPENGL_ES_DRIVER "SDL_OPENGL_ES_DRIVER" + +/** + * \brief A variable controlling speed/quality tradeoff of audio resampling. + * + * If available, SDL can use libsamplerate ( http://www.mega-nerd.com/SRC/ ) + * to handle audio resampling. There are different resampling modes available + * that produce different levels of quality, using more CPU. + * + * If this hint isn't specified to a valid setting, or libsamplerate isn't + * available, SDL will use the default, internal resampling algorithm. + * + * Note that this is currently only applicable to resampling audio that is + * being written to a device for playback or audio being read from a device + * for capture. SDL_AudioCVT always uses the default resampler (although this + * might change for SDL 2.1). + * + * This hint is currently only checked at audio subsystem initialization. + * + * This variable can be set to the following values: + * + * "0" or "default" - Use SDL's internal resampling (Default when not set - low quality, fast) + * "1" or "fast" - Use fast, slightly higher quality resampling, if available + * "2" or "medium" - Use medium quality resampling, if available + * "3" or "best" - Use high quality resampling, if available + */ +#define SDL_HINT_AUDIO_RESAMPLING_MODE "SDL_AUDIO_RESAMPLING_MODE" + +/** + * \brief A variable controlling the audio category on iOS and Mac OS X + * + * This variable can be set to the following values: + * + * "ambient" - Use the AVAudioSessionCategoryAmbient audio category, will be muted by the phone mute switch (default) + * "playback" - Use the AVAudioSessionCategoryPlayback category + * + * For more information, see Apple's documentation: + * https://developer.apple.com/library/content/documentation/Audio/Conceptual/AudioSessionProgrammingGuide/AudioSessionCategoriesandModes/AudioSessionCategoriesandModes.html + */ +#define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" + /** * \brief An enumeration of hint priorities */ @@ -669,6 +906,18 @@ extern DECLSPEC SDL_bool SDLCALL SDL_SetHint(const char *name, */ extern DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); +/** + * \brief Get a hint + * + * \return The boolean value of a hint variable. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GetHintBoolean(const char *name, SDL_bool default_value); + +/** + * \brief type definition of the hint callback function. + */ +typedef void (SDLCALL *SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); + /** * \brief Add a function to watch a particular hint * @@ -676,7 +925,6 @@ extern DECLSPEC const char * SDLCALL SDL_GetHint(const char *name); * \param callback The function to call when the hint value changes * \param userdata A pointer to pass to the callback function */ -typedef void (*SDL_HintCallback)(void *userdata, const char *name, const char *oldValue, const char *newValue); extern DECLSPEC void SDLCALL SDL_AddHintCallback(const char *name, SDL_HintCallback callback, void *userdata); @@ -706,6 +954,6 @@ extern DECLSPEC void SDLCALL SDL_ClearHints(void); #endif #include "close_code.h" -#endif /* _SDL_hints_h */ +#endif /* SDL_hints_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_joystick.h b/lib/SDL2/include/SDL_joystick.h index 266f3b3871..f598dc828d 100644 --- a/lib/SDL2/include/SDL_joystick.h +++ b/lib/SDL2/include/SDL_joystick.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -24,7 +24,7 @@ * * Include file for SDL joystick event handling * - * The term "device_index" identifies currently plugged in joystick devices between 0 and SDL_NumJoysticks, with the exact joystick + * The term "device_index" identifies currently plugged in joystick devices between 0 and SDL_NumJoysticks(), with the exact joystick * behind a device_index changing as joysticks are plugged and unplugged. * * The term "instance_id" is the current instantiation of a joystick device in the system, if the joystick is removed and then re-inserted @@ -36,8 +36,8 @@ * */ -#ifndef _SDL_joystick_h -#define _SDL_joystick_h +#ifndef SDL_joystick_h_ +#define SDL_joystick_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -60,7 +60,9 @@ extern "C" { * SDL_Init(): SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS */ -/* The joystick structure used to identify an SDL joystick */ +/** + * The joystick structure used to identify an SDL joystick + */ struct _SDL_Joystick; typedef struct _SDL_Joystick SDL_Joystick; @@ -69,8 +71,29 @@ typedef struct { Uint8 data[16]; } SDL_JoystickGUID; +/** + * This is a unique ID for a joystick for the time it is connected to the system, + * and is never reused for the lifetime of the application. If the joystick is + * disconnected and reconnected, it will get a new ID. + * + * The ID value starts at 0 and increments from there. The value -1 is an invalid ID. + */ typedef Sint32 SDL_JoystickID; +typedef enum +{ + SDL_JOYSTICK_TYPE_UNKNOWN, + SDL_JOYSTICK_TYPE_GAMECONTROLLER, + SDL_JOYSTICK_TYPE_WHEEL, + SDL_JOYSTICK_TYPE_ARCADE_STICK, + SDL_JOYSTICK_TYPE_FLIGHT_STICK, + SDL_JOYSTICK_TYPE_DANCE_PAD, + SDL_JOYSTICK_TYPE_GUITAR, + SDL_JOYSTICK_TYPE_DRUM_KIT, + SDL_JOYSTICK_TYPE_ARCADE_PAD, + SDL_JOYSTICK_TYPE_THROTTLE +} SDL_JoystickType; + typedef enum { SDL_JOYSTICK_POWER_UNKNOWN = -1, @@ -83,6 +106,20 @@ typedef enum } SDL_JoystickPowerLevel; /* Function prototypes */ + +/** + * Locking for multi-threaded access to the joystick API + * + * If you are using the joystick API or handling events from multiple threads + * you should use these locking functions to protect access to the joysticks. + * + * In particular, you are guaranteed that the joystick list won't change, so + * the API functions that take a joystick index will be valid, and joystick + * and game controller events will not be delivered. + */ +extern DECLSPEC void SDLCALL SDL_LockJoysticks(void); +extern DECLSPEC void SDLCALL SDL_UnlockJoysticks(void); + /** * Count the number of joysticks attached to the system right now */ @@ -95,6 +132,46 @@ extern DECLSPEC int SDLCALL SDL_NumJoysticks(void); */ extern DECLSPEC const char *SDLCALL SDL_JoystickNameForIndex(int device_index); +/** + * Return the GUID for the joystick at this index + * This can be called before any joysticks are opened. + */ +extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetDeviceGUID(int device_index); + +/** + * Get the USB vendor ID of a joystick, if available. + * This can be called before any joysticks are opened. + * If the vendor ID isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceVendor(int device_index); + +/** + * Get the USB product ID of a joystick, if available. + * This can be called before any joysticks are opened. + * If the product ID isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProduct(int device_index); + +/** + * Get the product version of a joystick, if available. + * This can be called before any joysticks are opened. + * If the product version isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetDeviceProductVersion(int device_index); + +/** + * Get the type of a joystick, if available. + * This can be called before any joysticks are opened. + */ +extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetDeviceType(int device_index); + +/** + * Get the instance ID of a joystick. + * This can be called before any joysticks are opened. + * If the index is out of range, this function will return -1. + */ +extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickGetDeviceInstanceID(int device_index); + /** * Open a joystick for use. * The index passed as an argument refers to the N'th joystick on the system. @@ -118,14 +195,32 @@ extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromInstanceID(SDL_JoystickID extern DECLSPEC const char *SDLCALL SDL_JoystickName(SDL_Joystick * joystick); /** - * Return the GUID for the joystick at this index + * Return the GUID for this opened joystick */ -extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetDeviceGUID(int device_index); +extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick * joystick); /** - * Return the GUID for this opened joystick + * Get the USB vendor ID of an opened joystick, if available. + * If the vendor ID isn't available this function returns 0. */ -extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick * joystick); +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetVendor(SDL_Joystick * joystick); + +/** + * Get the USB product ID of an opened joystick, if available. + * If the product ID isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProduct(SDL_Joystick * joystick); + +/** + * Get the product version of an opened joystick, if available. + * If the product version isn't available this function returns 0. + */ +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProductVersion(SDL_Joystick * joystick); + +/** + * Get the type of an opened joystick. + */ +extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetType(SDL_Joystick * joystick); /** * Return a string representation for this guid. pszGUID must point to at least 33 bytes @@ -134,7 +229,7 @@ extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick * joys extern DECLSPEC void SDLCALL SDL_JoystickGetGUIDString(SDL_JoystickGUID guid, char *pszGUID, int cbGUID); /** - * convert a string into a joystick formatted guid + * Convert a string into a joystick guid */ extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUIDFromString(const char *pchGUID); @@ -190,6 +285,8 @@ extern DECLSPEC void SDLCALL SDL_JoystickUpdate(void); */ extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state); +#define SDL_JOYSTICK_AXIS_MAX 32767 +#define SDL_JOYSTICK_AXIS_MIN -32768 /** * Get the current state of an axis control on a joystick. * @@ -200,6 +297,18 @@ extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state); extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick * joystick, int axis); +/** + * Get the initial state of an axis control on a joystick. + * + * The state is a value ranging from -32768 to 32767. + * + * The axis indices start at index 0. + * + * \return SDL_TRUE if this axis has any initial value, or SDL_FALSE if not. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick * joystick, + int axis, Sint16 *state); + /** * \name Hat positions */ @@ -268,6 +377,6 @@ extern DECLSPEC SDL_JoystickPowerLevel SDLCALL SDL_JoystickCurrentPowerLevel(SDL #endif #include "close_code.h" -#endif /* _SDL_joystick_h */ +#endif /* SDL_joystick_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_keyboard.h b/lib/SDL2/include/SDL_keyboard.h index bbba0f07bc..e78ca46908 100644 --- a/lib/SDL2/include/SDL_keyboard.h +++ b/lib/SDL2/include/SDL_keyboard.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL keyboard event handling */ -#ifndef _SDL_keyboard_h -#define _SDL_keyboard_h +#ifndef SDL_keyboard_h_ +#define SDL_keyboard_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -136,7 +136,7 @@ extern DECLSPEC SDL_Scancode SDLCALL SDL_GetScancodeFromName(const char *name); * copy it. If the key doesn't have a name, this function returns an * empty string (""). * - * \sa SDL_Key + * \sa SDL_Keycode */ extern DECLSPEC const char *SDLCALL SDL_GetKeyName(SDL_Keycode key); @@ -212,6 +212,6 @@ extern DECLSPEC SDL_bool SDLCALL SDL_IsScreenKeyboardShown(SDL_Window *window); #endif #include "close_code.h" -#endif /* _SDL_keyboard_h */ +#endif /* SDL_keyboard_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_keycode.h b/lib/SDL2/include/SDL_keycode.h index 7be9635710..c41e45ff61 100644 --- a/lib/SDL2/include/SDL_keycode.h +++ b/lib/SDL2/include/SDL_keycode.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Defines constants which identify keyboard keys and modifiers. */ -#ifndef _SDL_keycode_h -#define _SDL_keycode_h +#ifndef SDL_keycode_h_ +#define SDL_keycode_h_ #include "SDL_stdinc.h" #include "SDL_scancode.h" @@ -38,6 +38,9 @@ * layout of the keyboard. These values include Unicode values representing * the unmodified character that would be generated by pressing the key, or * an SDLK_* constant for those keys that do not generate characters. + * + * A special exception is the number keys at the top of the keyboard which + * always map to SDLK_0...SDLK_9, regardless of layout. */ typedef Sint32 SDL_Keycode; @@ -308,7 +311,12 @@ enum SDLK_KBDILLUMDOWN = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMDOWN), SDLK_KBDILLUMUP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_KBDILLUMUP), SDLK_EJECT = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_EJECT), - SDLK_SLEEP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP) + SDLK_SLEEP = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_SLEEP), + SDLK_APP1 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP1), + SDLK_APP2 = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_APP2), + + SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND), + SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD) }; /** @@ -336,6 +344,6 @@ typedef enum #define KMOD_ALT (KMOD_LALT|KMOD_RALT) #define KMOD_GUI (KMOD_LGUI|KMOD_RGUI) -#endif /* _SDL_keycode_h */ +#endif /* SDL_keycode_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_loadso.h b/lib/SDL2/include/SDL_loadso.h index 3d540bd7dd..6ea256c6ae 100644 --- a/lib/SDL2/include/SDL_loadso.h +++ b/lib/SDL2/include/SDL_loadso.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -38,8 +38,8 @@ * the results you expect. :) */ -#ifndef _SDL_loadso_h -#define _SDL_loadso_h +#ifndef SDL_loadso_h_ +#define SDL_loadso_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -76,6 +76,6 @@ extern DECLSPEC void SDLCALL SDL_UnloadObject(void *handle); #endif #include "close_code.h" -#endif /* _SDL_loadso_h */ +#endif /* SDL_loadso_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_log.h b/lib/SDL2/include/SDL_log.h index 09be1104de..356d0e1cf7 100644 --- a/lib/SDL2/include/SDL_log.h +++ b/lib/SDL2/include/SDL_log.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -34,8 +34,8 @@ * Others: standard error output (stderr) */ -#ifndef _SDL_log_h -#define _SDL_log_h +#ifndef SDL_log_h_ +#define SDL_log_h_ #include "SDL_stdinc.h" @@ -186,7 +186,7 @@ extern DECLSPEC void SDLCALL SDL_LogMessageV(int category, /** * \brief The prototype for the log output function */ -typedef void (*SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message); +typedef void (SDLCALL *SDL_LogOutputFunction)(void *userdata, int category, SDL_LogPriority priority, const char *message); /** * \brief Get the current log output function. @@ -206,6 +206,6 @@ extern DECLSPEC void SDLCALL SDL_LogSetOutputFunction(SDL_LogOutputFunction call #endif #include "close_code.h" -#endif /* _SDL_log_h */ +#endif /* SDL_log_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_main.h b/lib/SDL2/include/SDL_main.h index 9ce3754e93..2af32360f7 100644 --- a/lib/SDL2/include/SDL_main.h +++ b/lib/SDL2/include/SDL_main.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_main_h -#define _SDL_main_h +#ifndef SDL_main_h_ +#define SDL_main_h_ #include "SDL_stdinc.h" @@ -63,7 +63,7 @@ /* On Android SDL provides a Java class in SDLActivity.java that is the main activity entry point. - See README-android.txt for more details on extending that class. + See README-android.md for more details on extending that class. */ #define SDL_MAIN_NEEDED @@ -107,7 +107,7 @@ /** * The prototype for the application's main() function */ -extern C_LINKAGE int SDL_main(int argc, char *argv[]); +extern C_LINKAGE DECLSPEC int SDL_main(int argc, char *argv[]); #include "begin_code.h" @@ -156,6 +156,6 @@ extern DECLSPEC int SDLCALL SDL_WinRTRunApp(int (*mainFunction)(int, char **), v #endif #include "close_code.h" -#endif /* _SDL_main_h */ +#endif /* SDL_main_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_messagebox.h b/lib/SDL2/include/SDL_messagebox.h index ec370dbbe0..c326d8f010 100644 --- a/lib/SDL2/include/SDL_messagebox.h +++ b/lib/SDL2/include/SDL_messagebox.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_messagebox_h -#define _SDL_messagebox_h +#ifndef SDL_messagebox_h_ +#define SDL_messagebox_h_ #include "SDL_stdinc.h" #include "SDL_video.h" /* For SDL_Window */ @@ -139,6 +139,6 @@ extern DECLSPEC int SDLCALL SDL_ShowSimpleMessageBox(Uint32 flags, const char *t #endif #include "close_code.h" -#endif /* _SDL_messagebox_h */ +#endif /* SDL_messagebox_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_mouse.h b/lib/SDL2/include/SDL_mouse.h index ea9622f0f7..6001bd46c1 100644 --- a/lib/SDL2/include/SDL_mouse.h +++ b/lib/SDL2/include/SDL_mouse.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL mouse event handling. */ -#ifndef _SDL_mouse_h -#define _SDL_mouse_h +#ifndef SDL_mouse_h_ +#define SDL_mouse_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -38,10 +38,10 @@ extern "C" { #endif -typedef struct SDL_Cursor SDL_Cursor; /* Implementation dependent */ +typedef struct SDL_Cursor SDL_Cursor; /**< Implementation dependent */ /** - * \brief Cursor types for SDL_CreateSystemCursor. + * \brief Cursor types for SDL_CreateSystemCursor(). */ typedef enum { @@ -254,9 +254,11 @@ extern DECLSPEC SDL_Cursor *SDLCALL SDL_GetCursor(void); extern DECLSPEC SDL_Cursor *SDLCALL SDL_GetDefaultCursor(void); /** - * \brief Frees a cursor created with SDL_CreateCursor(). + * \brief Frees a cursor created with SDL_CreateCursor() or similar functions. * * \sa SDL_CreateCursor() + * \sa SDL_CreateColorCursor() + * \sa SDL_CreateSystemCursor() */ extern DECLSPEC void SDLCALL SDL_FreeCursor(SDL_Cursor * cursor); @@ -295,6 +297,6 @@ extern DECLSPEC int SDLCALL SDL_ShowCursor(int toggle); #endif #include "close_code.h" -#endif /* _SDL_mouse_h */ +#endif /* SDL_mouse_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_mutex.h b/lib/SDL2/include/SDL_mutex.h index b7e39734e9..0272379e55 100644 --- a/lib/SDL2/include/SDL_mutex.h +++ b/lib/SDL2/include/SDL_mutex.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_mutex_h -#define _SDL_mutex_h +#ifndef SDL_mutex_h_ +#define SDL_mutex_h_ /** * \file SDL_mutex.h @@ -246,6 +246,6 @@ extern DECLSPEC int SDLCALL SDL_CondWaitTimeout(SDL_cond * cond, #endif #include "close_code.h" -#endif /* _SDL_mutex_h */ +#endif /* SDL_mutex_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_name.h b/lib/SDL2/include/SDL_name.h index 06cd4a5e25..8095ed3ffd 100644 --- a/lib/SDL2/include/SDL_name.h +++ b/lib/SDL2/include/SDL_name.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDLname_h_ -#define _SDLname_h_ +#ifndef SDLname_h_ +#define SDLname_h_ #if defined(__STDC__) || defined(__cplusplus) #define NeedFunctionPrototypes 1 @@ -28,6 +28,6 @@ #define SDL_NAME(X) SDL_##X -#endif /* _SDLname_h_ */ +#endif /* SDLname_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_opengl.h b/lib/SDL2/include/SDL_opengl.h index 780919bc48..314dd57eda 100644 --- a/lib/SDL2/include/SDL_opengl.h +++ b/lib/SDL2/include/SDL_opengl.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -32,8 +32,8 @@ * version included in SDL_opengl.h. */ -#ifndef _SDL_opengl_h -#define _SDL_opengl_h +#ifndef SDL_opengl_h_ +#define SDL_opengl_h_ #include "SDL_config.h" @@ -97,6 +97,13 @@ #elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native windows opengl32 */ # define GLAPI extern # define GLAPIENTRY __stdcall +#elif defined(__OS2__) || defined(__EMX__) /* native os/2 opengl */ +# define GLAPI extern +# define GLAPIENTRY _System +# define APIENTRY _System +# if defined(__GNUC__) && !defined(_System) +# define _System +# endif #elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) # define GLAPI __attribute__((visibility("default"))) # define GLAPIENTRY @@ -2171,6 +2178,6 @@ typedef void (APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum t #endif /* !__IPHONEOS__ */ -#endif /* _SDL_opengl_h */ +#endif /* SDL_opengl_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_opengles.h b/lib/SDL2/include/SDL_opengles.h index bcc127779d..800c593070 100644 --- a/lib/SDL2/include/SDL_opengles.h +++ b/lib/SDL2/include/SDL_opengles.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -24,6 +24,7 @@ * * This is a simple file to encapsulate the OpenGL ES 1.X API headers. */ +#include "SDL_config.h" #ifdef __IPHONEOS__ #include diff --git a/lib/SDL2/include/SDL_opengles2.h b/lib/SDL2/include/SDL_opengles2.h index edcd1a24ae..102f2f3fa7 100644 --- a/lib/SDL2/include/SDL_opengles2.h +++ b/lib/SDL2/include/SDL_opengles2.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -24,6 +24,8 @@ * * This is a simple file to encapsulate the OpenGL ES 2.0 API headers. */ +#include "SDL_config.h" + #ifndef _MSC_VER #ifdef __IPHONEOS__ diff --git a/lib/SDL2/include/SDL_pixels.h b/lib/SDL2/include/SDL_pixels.h index 8499c32896..04246689f5 100644 --- a/lib/SDL2/include/SDL_pixels.h +++ b/lib/SDL2/include/SDL_pixels.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,10 +25,11 @@ * Header for the enumerated pixel format definitions. */ -#ifndef _SDL_pixels_h -#define _SDL_pixels_h +#ifndef SDL_pixels_h_ +#define SDL_pixels_h_ #include "SDL_stdinc.h" +#include "SDL_endian.h" #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -260,6 +261,19 @@ enum SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_ARGB, SDL_PACKEDLAYOUT_2101010, 32, 4), + /* Aliases for RGBA byte arrays of color data, for the current platform */ +#if SDL_BYTEORDER == SDL_BIG_ENDIAN + SDL_PIXELFORMAT_RGBA32 = SDL_PIXELFORMAT_RGBA8888, + SDL_PIXELFORMAT_ARGB32 = SDL_PIXELFORMAT_ARGB8888, + SDL_PIXELFORMAT_BGRA32 = SDL_PIXELFORMAT_BGRA8888, + SDL_PIXELFORMAT_ABGR32 = SDL_PIXELFORMAT_ABGR8888, +#else + SDL_PIXELFORMAT_RGBA32 = SDL_PIXELFORMAT_ABGR8888, + SDL_PIXELFORMAT_ARGB32 = SDL_PIXELFORMAT_BGRA8888, + SDL_PIXELFORMAT_BGRA32 = SDL_PIXELFORMAT_ARGB8888, + SDL_PIXELFORMAT_ABGR32 = SDL_PIXELFORMAT_RGBA8888, +#endif + SDL_PIXELFORMAT_YV12 = /**< Planar mode: Y + V + U (3 planes) */ SDL_DEFINE_PIXELFOURCC('Y', 'V', '1', '2'), SDL_PIXELFORMAT_IYUV = /**< Planar mode: Y + U + V (3 planes) */ @@ -449,6 +463,6 @@ extern DECLSPEC void SDLCALL SDL_CalculateGammaRamp(float gamma, Uint16 * ramp); #endif #include "close_code.h" -#endif /* _SDL_pixels_h */ +#endif /* SDL_pixels_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_platform.h b/lib/SDL2/include/SDL_platform.h index c6c21398b2..9dde385fa6 100644 --- a/lib/SDL2/include/SDL_platform.h +++ b/lib/SDL2/include/SDL_platform.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Try to get a standard set of platform defines. */ -#ifndef _SDL_platform_h -#define _SDL_platform_h +#ifndef SDL_platform_h_ +#define SDL_platform_h_ #if defined(_AIX) #undef __AIX__ @@ -70,18 +70,22 @@ /* lets us know what version of Mac OS X we're compiling on */ #include "AvailabilityMacros.h" #include "TargetConditionals.h" +#if TARGET_OS_TV +#undef __TVOS__ +#define __TVOS__ 1 +#endif #if TARGET_OS_IPHONE -/* if compiling for iPhone */ +/* if compiling for iOS */ #undef __IPHONEOS__ #define __IPHONEOS__ 1 #undef __MACOSX__ #else -/* if not compiling for iPhone */ +/* if not compiling for iOS */ #undef __MACOSX__ #define __MACOSX__ 1 -#if MAC_OS_X_VERSION_MIN_REQUIRED < 1050 -# error SDL for Mac OS X only supports deploying on 10.5 and above. -#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1050 */ +#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060 +# error SDL for Mac OS X only supports deploying on 10.6 and above. +#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1060 */ #endif /* TARGET_OS_IPHONE */ #endif /* defined(__APPLE__) */ @@ -93,7 +97,7 @@ #undef __OPENBSD__ #define __OPENBSD__ 1 #endif -#if defined(__OS2__) +#if defined(__OS2__) || defined(__EMX__) #undef __OS2__ #define __OS2__ 1 #endif @@ -116,21 +120,29 @@ #if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__) /* Try to find out if we're compiling for WinRT or non-WinRT */ -/* If _USING_V110_SDK71_ is defined it means we are using the v110_xp or v120_xp toolset. */ -#if (defined(_MSC_VER) && (_MSC_VER >= 1700) && !_USING_V110_SDK71_) /* _MSC_VER==1700 for MSVC 2012 */ +#if defined(_MSC_VER) && defined(__has_include) +#define HAVE_WINAPIFAMILY_H __has_include() +/* If _USING_V110_SDK71_ is defined it means we are using the Windows XP toolset. */ +#elif defined(_MSC_VER) && (_MSC_VER >= 1700 && !_USING_V110_SDK71_) /* _MSC_VER == 1700 for Visual Studio 2012 */ +#define HAVE_WINAPIFAMILY_H 1 +#else +#define HAVE_WINAPIFAMILY_H 0 +#endif + +#if HAVE_WINAPIFAMILY_H #include -#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) -#undef __WINDOWS__ -#define __WINDOWS__ 1 -/* See if we're compiling for WinRT: */ -#elif WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) +#define WINAPI_FAMILY_WINRT (!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)) +#else +#define WINAPI_FAMILY_WINRT 0 +#endif /* HAVE_WINAPIFAMILY_H */ + +#if WINAPI_FAMILY_WINRT #undef __WINRT__ #define __WINRT__ 1 -#endif #else #undef __WINDOWS__ -#define __WINDOWS__ 1 -#endif /* _MSC_VER < 1700 */ +#define __WINDOWS__ 1 +#endif #endif /* defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) */ #if defined(__WINDOWS__) @@ -176,6 +188,6 @@ extern DECLSPEC const char * SDLCALL SDL_GetPlatform (void); #endif #include "close_code.h" -#endif /* _SDL_platform_h */ +#endif /* SDL_platform_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_power.h b/lib/SDL2/include/SDL_power.h index 24c0501149..d48e8a3795 100644 --- a/lib/SDL2/include/SDL_power.h +++ b/lib/SDL2/include/SDL_power.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_power_h -#define _SDL_power_h +#ifndef SDL_power_h_ +#define SDL_power_h_ /** * \file SDL_power.h @@ -70,6 +70,6 @@ extern DECLSPEC SDL_PowerState SDLCALL SDL_GetPowerInfo(int *secs, int *pct); #endif #include "close_code.h" -#endif /* _SDL_power_h */ +#endif /* SDL_power_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_quit.h b/lib/SDL2/include/SDL_quit.h index cc06f28d89..9283c38105 100644 --- a/lib/SDL2/include/SDL_quit.h +++ b/lib/SDL2/include/SDL_quit.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL quit event handling. */ -#ifndef _SDL_quit_h -#define _SDL_quit_h +#ifndef SDL_quit_h_ +#define SDL_quit_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -55,4 +55,4 @@ #define SDL_QuitRequested() \ (SDL_PumpEvents(), (SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUIT,SDL_QUIT) > 0)) -#endif /* _SDL_quit_h */ +#endif /* SDL_quit_h_ */ diff --git a/lib/SDL2/include/SDL_rect.h b/lib/SDL2/include/SDL_rect.h index bbcb9a3b8a..c4f6d74b33 100644 --- a/lib/SDL2/include/SDL_rect.h +++ b/lib/SDL2/include/SDL_rect.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Header file for SDL_rect definition and management functions. */ -#ifndef _SDL_rect_h -#define _SDL_rect_h +#ifndef SDL_rect_h_ +#define SDL_rect_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -143,6 +143,6 @@ extern DECLSPEC SDL_bool SDLCALL SDL_IntersectRectAndLine(const SDL_Rect * #endif #include "close_code.h" -#endif /* _SDL_rect_h */ +#endif /* SDL_rect_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_render.h b/lib/SDL2/include/SDL_render.h index e4ed2af693..ea6ef9ff64 100644 --- a/lib/SDL2/include/SDL_render.h +++ b/lib/SDL2/include/SDL_render.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -45,8 +45,8 @@ * See this bug for details: http://bugzilla.libsdl.org/show_bug.cgi?id=1995 */ -#ifndef _SDL_render_h -#define _SDL_render_h +#ifndef SDL_render_h_ +#define SDL_render_h_ #include "SDL_stdinc.h" #include "SDL_rect.h" @@ -233,6 +233,8 @@ extern DECLSPEC int SDLCALL SDL_GetRendererOutputSize(SDL_Renderer * renderer, * active, the format was unsupported, or the width or height were out * of range. * + * \note The contents of the texture are not defined at creation. + * * \sa SDL_QueryTexture() * \sa SDL_UpdateTexture() * \sa SDL_DestroyTexture() @@ -370,9 +372,12 @@ extern DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture * texture, * \param texture The texture to update * \param rect A pointer to the rectangle of pixels to update, or NULL to * update the entire texture. - * \param pixels The raw pixel data. + * \param pixels The raw pixel data in the format of the texture. * \param pitch The number of bytes in a row of pixel data, including padding between lines. * + * The pixel data must be in the format of the texture. The pixel format can be + * queried with SDL_QueryTexture. + * * \return 0 on success, or -1 if the texture is not valid. * * \note This is a fairly slow function. @@ -499,6 +504,30 @@ extern DECLSPEC int SDLCALL SDL_RenderSetLogicalSize(SDL_Renderer * renderer, in */ extern DECLSPEC void SDLCALL SDL_RenderGetLogicalSize(SDL_Renderer * renderer, int *w, int *h); +/** + * \brief Set whether to force integer scales for resolution-independent rendering + * + * \param renderer The renderer for which integer scaling should be set. + * \param enable Enable or disable integer scaling + * + * This function restricts the logical viewport to integer values - that is, when + * a resolution is between two multiples of a logical size, the viewport size is + * rounded down to the lower multiple. + * + * \sa SDL_RenderSetLogicalSize() + */ +extern DECLSPEC int SDLCALL SDL_RenderSetIntegerScale(SDL_Renderer * renderer, + SDL_bool enable); + +/** + * \brief Get whether integer scales are forced for resolution-independent rendering + * + * \param renderer The renderer from which integer scaling should be queried. + * + * \sa SDL_RenderSetIntegerScale() + */ +extern DECLSPEC SDL_bool SDLCALL SDL_RenderGetIntegerScale(SDL_Renderer * renderer); + /** * \brief Set the drawing area for rendering on the current target. * @@ -658,7 +687,8 @@ extern DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer * renderer, /** * \brief Clear the current rendering target with the drawing color * - * This function clears the entire rendering target, ignoring the viewport. + * This function clears the entire rendering target, ignoring the viewport and + * the clip rectangle. * * \return 0 on success, or -1 on error */ @@ -791,7 +821,7 @@ extern DECLSPEC int SDLCALL SDL_RenderCopy(SDL_Renderer * renderer, * texture. * \param dstrect A pointer to the destination rectangle, or NULL for the * entire rendering target. - * \param angle An angle in degrees that indicates the rotation that will be applied to dstrect + * \param angle An angle in degrees that indicates the rotation that will be applied to dstrect, rotating it in a clockwise direction * \param center A pointer to a point indicating the point around which dstrect will be rotated (if NULL, rotation will be done around dstrect.w/2, dstrect.h/2). * \param flip An SDL_RendererFlip value stating which flipping actions should be performed on the texture * @@ -875,6 +905,6 @@ extern DECLSPEC int SDLCALL SDL_GL_UnbindTexture(SDL_Texture *texture); #endif #include "close_code.h" -#endif /* _SDL_render_h */ +#endif /* SDL_render_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_revision.h b/lib/SDL2/include/SDL_revision.h index 6d7163d4d4..9376093ee7 100644 --- a/lib/SDL2/include/SDL_revision.h +++ b/lib/SDL2/include/SDL_revision.h @@ -1,2 +1,2 @@ -#define SDL_REVISION "hg-10001:e12c38730512" -#define SDL_REVISION_NUMBER 10001 +#define SDL_REVISION "hg-11645:2088cd828335" +#define SDL_REVISION_NUMBER 11645 diff --git a/lib/SDL2/include/SDL_rwops.h b/lib/SDL2/include/SDL_rwops.h index f460ae7d40..7f0cbdfd55 100644 --- a/lib/SDL2/include/SDL_rwops.h +++ b/lib/SDL2/include/SDL_rwops.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -26,8 +26,8 @@ * data streams. It can easily be extended to files, memory, etc. */ -#ifndef _SDL_rwops_h -#define _SDL_rwops_h +#ifndef SDL_rwops_h_ +#define SDL_rwops_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -39,12 +39,12 @@ extern "C" { #endif /* RWops Types */ -#define SDL_RWOPS_UNKNOWN 0 /* Unknown stream type */ -#define SDL_RWOPS_WINFILE 1 /* Win32 file */ -#define SDL_RWOPS_STDFILE 2 /* Stdio file */ -#define SDL_RWOPS_JNIFILE 3 /* Android asset */ -#define SDL_RWOPS_MEMORY 4 /* Memory stream */ -#define SDL_RWOPS_MEMORY_RO 5 /* Read-Only memory stream */ +#define SDL_RWOPS_UNKNOWN 0U /**< Unknown stream type */ +#define SDL_RWOPS_WINFILE 1U /**< Win32 file */ +#define SDL_RWOPS_STDFILE 2U /**< Stdio file */ +#define SDL_RWOPS_JNIFILE 3U /**< Android asset */ +#define SDL_RWOPS_MEMORY 4U /**< Memory stream */ +#define SDL_RWOPS_MEMORY_RO 5U /**< Read-Only memory stream */ /** * This is the read/write operation structure -- very basic. @@ -190,6 +190,29 @@ extern DECLSPEC void SDLCALL SDL_FreeRW(SDL_RWops * area); /* @} *//* Read/write macros */ +/** + * Load all the data from an SDL data stream. + * + * The data is allocated with a zero byte at the end (null terminated) + * + * If \c datasize is not NULL, it is filled with the size of the data read. + * + * If \c freesrc is non-zero, the stream will be closed after being read. + * + * The data should be freed with SDL_free(). + * + * \return the data, or NULL if there was an error. + */ +extern DECLSPEC void *SDLCALL SDL_LoadFile_RW(SDL_RWops * src, size_t *datasize, + int freesrc); + +/** + * Load an entire file. + * + * Convenience macro. + */ +#define SDL_LoadFile(file, datasize) SDL_LoadFile_RW(SDL_RWFromFile(file, "rb"), datasize, 1) + /** * \name Read endian functions * @@ -226,6 +249,6 @@ extern DECLSPEC size_t SDLCALL SDL_WriteBE64(SDL_RWops * dst, Uint64 value); #endif #include "close_code.h" -#endif /* _SDL_rwops_h */ +#endif /* SDL_rwops_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_scancode.h b/lib/SDL2/include/SDL_scancode.h index 0af1dd59f8..1d55212048 100644 --- a/lib/SDL2/include/SDL_scancode.h +++ b/lib/SDL2/include/SDL_scancode.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Defines keyboard scancodes. */ -#ifndef _SDL_scancode_h -#define _SDL_scancode_h +#ifndef SDL_scancode_h_ +#define SDL_scancode_h_ #include "SDL_stdinc.h" @@ -38,7 +38,7 @@ * SDL_Event structure. * * The values in this enumeration are based on the USB usage page standard: - * http://www.usb.org/developers/devclass_docs/Hut1_12v2.pdf + * http://www.usb.org/developers/hidpage/Hut1_12v2.pdf */ typedef enum { @@ -390,12 +390,24 @@ typedef enum /* @} *//* Walther keys */ + /** + * \name Usage page 0x0C (additional media keys) + * + * These values are mapped from usage page 0x0C (USB consumer page). + */ + /* @{ */ + + SDL_SCANCODE_AUDIOREWIND = 285, + SDL_SCANCODE_AUDIOFASTFORWARD = 286, + + /* @} *//* Usage page 0x0C (additional media keys) */ + /* Add any other keys here. */ SDL_NUM_SCANCODES = 512 /**< not a key, just marks the number of scancodes for array bounds */ } SDL_Scancode; -#endif /* _SDL_scancode_h */ +#endif /* SDL_scancode_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_shape.h b/lib/SDL2/include/SDL_shape.h index db10a8f010..9e492d93a4 100644 --- a/lib/SDL2/include/SDL_shape.h +++ b/lib/SDL2/include/SDL_shape.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_shape_h -#define _SDL_shape_h +#ifndef SDL_shape_h_ +#define SDL_shape_h_ #include "SDL_stdinc.h" #include "SDL_pixels.h" @@ -71,6 +71,7 @@ extern DECLSPEC SDL_Window * SDLCALL SDL_CreateShapedWindow(const char *title,un * \param window The window to query for being shaped. * * \return SDL_TRUE if the window is a window that can be shaped, SDL_FALSE if the window is unshaped or NULL. + * * \sa SDL_CreateShapedWindow */ extern DECLSPEC SDL_bool SDLCALL SDL_IsShapedWindow(const SDL_Window *window); @@ -91,7 +92,7 @@ typedef enum { /** \brief A union containing parameters for shaped windows. */ typedef union { - /** \brief a cutoff alpha value for binarization of the window shape's alpha channel. */ + /** \brief A cutoff alpha value for binarization of the window shape's alpha channel. */ Uint8 binarizationCutoff; SDL_Color colorKey; } SDL_WindowShapeParams; @@ -111,8 +112,8 @@ typedef struct SDL_WindowShapeMode { * \param shape A surface encoding the desired shape for the window. * \param shape_mode The parameters to set for the shaped window. * - * \return 0 on success, SDL_INVALID_SHAPE_ARGUMENT on invalid an invalid shape argument, or SDL_NONSHAPEABLE_WINDOW - * if the SDL_Window* given does not reference a valid shaped window. + * \return 0 on success, SDL_INVALID_SHAPE_ARGUMENT on an invalid shape argument, or SDL_NONSHAPEABLE_WINDOW + * if the SDL_Window given does not reference a valid shaped window. * * \sa SDL_WindowShapeMode * \sa SDL_GetShapedWindowMode. @@ -127,7 +128,7 @@ extern DECLSPEC int SDLCALL SDL_SetWindowShape(SDL_Window *window,SDL_Surface *s * * \return 0 if the window has a shape and, provided shape_mode was not NULL, shape_mode has been filled with the mode * data, SDL_NONSHAPEABLE_WINDOW if the SDL_Window given is not a shaped window, or SDL_WINDOW_LACKS_SHAPE if - * the SDL_Window* given is a shapeable window currently lacking a shape. + * the SDL_Window given is a shapeable window currently lacking a shape. * * \sa SDL_WindowShapeMode * \sa SDL_SetWindowShape @@ -140,4 +141,4 @@ extern DECLSPEC int SDLCALL SDL_GetShapedWindowMode(SDL_Window *window,SDL_Windo #endif #include "close_code.h" -#endif /* _SDL_shape_h */ +#endif /* SDL_shape_h_ */ diff --git a/lib/SDL2/include/SDL_stdinc.h b/lib/SDL2/include/SDL_stdinc.h index 887bcd2d46..72402299f2 100644 --- a/lib/SDL2/include/SDL_stdinc.h +++ b/lib/SDL2/include/SDL_stdinc.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * This is a general header that includes C language support. */ -#ifndef _SDL_stdinc_h -#define _SDL_stdinc_h +#ifndef SDL_stdinc_h_ +#define SDL_stdinc_h_ #include "SDL_config.h" @@ -62,6 +62,9 @@ #ifdef HAVE_STRINGS_H # include #endif +#ifdef HAVE_WCHAR_H +# include +#endif #if defined(HAVE_INTTYPES_H) # include #elif defined(HAVE_STDINT_H) @@ -83,9 +86,6 @@ #ifdef HAVE_FLOAT_H # include #endif -#if defined(HAVE_ICONV) && defined(HAVE_ICONV_H) -# include -#endif /** * The number of elements in an array. @@ -93,6 +93,13 @@ #define SDL_arraysize(array) (sizeof(array)/sizeof(array[0])) #define SDL_TABLESIZE(table) SDL_arraysize(table) +/** + * Macro useful for building other macros with strings in them + * + * e.g. #define LOG_ERROR(X) OutputDebugString(SDL_STRINGIFY_ARG(__FUNCTION__) ": " X "\n") + */ +#define SDL_STRINGIFY_ARG(arg) #arg + /** * \name Cast operators * @@ -123,44 +130,67 @@ */ /* @{ */ +#ifdef __CC_ARM +/* ARM's compiler throws warnings if we use an enum: like "SDL_bool x = a < b;" */ +#define SDL_FALSE 0 +#define SDL_TRUE 1 +typedef int SDL_bool; +#else typedef enum { SDL_FALSE = 0, SDL_TRUE = 1 } SDL_bool; +#endif /** * \brief A signed 8-bit integer type. */ +#define SDL_MAX_SINT8 ((Sint8)0x7F) /* 127 */ +#define SDL_MIN_SINT8 ((Sint8)(~0x7F)) /* -128 */ typedef int8_t Sint8; /** * \brief An unsigned 8-bit integer type. */ +#define SDL_MAX_UINT8 ((Uint8)0xFF) /* 255 */ +#define SDL_MIN_UINT8 ((Uint8)0x00) /* 0 */ typedef uint8_t Uint8; /** * \brief A signed 16-bit integer type. */ +#define SDL_MAX_SINT16 ((Sint16)0x7FFF) /* 32767 */ +#define SDL_MIN_SINT16 ((Sint16)(~0x7FFF)) /* -32768 */ typedef int16_t Sint16; /** * \brief An unsigned 16-bit integer type. */ +#define SDL_MAX_UINT16 ((Uint16)0xFFFF) /* 65535 */ +#define SDL_MIN_UINT16 ((Uint16)0x0000) /* 0 */ typedef uint16_t Uint16; /** * \brief A signed 32-bit integer type. */ +#define SDL_MAX_SINT32 ((Sint32)0x7FFFFFFF) /* 2147483647 */ +#define SDL_MIN_SINT32 ((Sint32)(~0x7FFFFFFF)) /* -2147483648 */ typedef int32_t Sint32; /** * \brief An unsigned 32-bit integer type. */ +#define SDL_MAX_UINT32 ((Uint32)0xFFFFFFFFu) /* 4294967295 */ +#define SDL_MIN_UINT32 ((Uint32)0x00000000) /* 0 */ typedef uint32_t Uint32; /** * \brief A signed 64-bit integer type. */ +#define SDL_MAX_SINT64 ((Sint64)0x7FFFFFFFFFFFFFFFll) /* 9223372036854775807 */ +#define SDL_MIN_SINT64 ((Sint64)(~0x7FFFFFFFFFFFFFFFll)) /* -9223372036854775808 */ typedef int64_t Sint64; /** * \brief An unsigned 64-bit integer type. */ +#define SDL_MAX_UINT64 ((Uint64)0xFFFFFFFFFFFFFFFFull) /* 18446744073709551615 */ +#define SDL_MIN_UINT64 ((Uint64)(0x0000000000000000ull)) /* 0 */ typedef uint64_t Uint64; /* @} *//* Basic data types */ @@ -258,7 +288,7 @@ typedef uint64_t Uint64; #endif /* SDL_DISABLE_ANALYZE_MACROS */ #define SDL_COMPILE_TIME_ASSERT(name, x) \ - typedef int SDL_dummy_ ## name[(x) * 2 - 1] + typedef int SDL_compile_time_assert_ ## name[(x) * 2 - 1] /** \cond */ #ifndef DOXYGEN_SHOULD_IGNORE_THIS SDL_COMPILE_TIME_ASSERT(uint8, sizeof(Uint8) == 1); @@ -333,6 +363,37 @@ extern DECLSPEC void *SDLCALL SDL_calloc(size_t nmemb, size_t size); extern DECLSPEC void *SDLCALL SDL_realloc(void *mem, size_t size); extern DECLSPEC void SDLCALL SDL_free(void *mem); +typedef void *(SDLCALL *SDL_malloc_func)(size_t size); +typedef void *(SDLCALL *SDL_calloc_func)(size_t nmemb, size_t size); +typedef void *(SDLCALL *SDL_realloc_func)(void *mem, size_t size); +typedef void (SDLCALL *SDL_free_func)(void *mem); + +/** + * \brief Get the current set of SDL memory functions + */ +extern DECLSPEC void SDLCALL SDL_GetMemoryFunctions(SDL_malloc_func *malloc_func, + SDL_calloc_func *calloc_func, + SDL_realloc_func *realloc_func, + SDL_free_func *free_func); + +/** + * \brief Replace SDL's memory allocation functions with a custom set + * + * \note If you are replacing SDL's memory functions, you should call + * SDL_GetNumAllocations() and be very careful if it returns non-zero. + * That means that your free function will be called with memory + * allocated by the previous memory allocation functions. + */ +extern DECLSPEC int SDLCALL SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, + SDL_calloc_func calloc_func, + SDL_realloc_func realloc_func, + SDL_free_func free_func); + +/** + * \brief Get the number of outstanding (unfreed) allocations + */ +extern DECLSPEC int SDLCALL SDL_GetNumAllocations(void); + extern DECLSPEC char *SDLCALL SDL_getenv(const char *name); extern DECLSPEC int SDLCALL SDL_setenv(const char *name, const char *value, int overwrite); @@ -375,10 +436,10 @@ SDL_FORCE_INLINE void SDL_memset4(void *dst, Uint32 val, size_t dwords) return; switch (dwords % 4) { - case 0: do { *_p++ = _val; - case 3: *_p++ = _val; - case 2: *_p++ = _val; - case 1: *_p++ = _val; + case 0: do { *_p++ = _val; /* fallthrough */ + case 3: *_p++ = _val; /* fallthrough */ + case 2: *_p++ = _val; /* fallthrough */ + case 1: *_p++ = _val; /* fallthrough */ } while ( --_n ); } #endif @@ -393,6 +454,7 @@ extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t le extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr); extern DECLSPEC size_t SDLCALL SDL_wcslcpy(SDL_OUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); extern DECLSPEC size_t SDLCALL SDL_wcslcat(SDL_INOUT_Z_CAP(maxlen) wchar_t *dst, const wchar_t *src, size_t maxlen); +extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2); extern DECLSPEC size_t SDLCALL SDL_strlen(const char *str); extern DECLSPEC size_t SDLCALL SDL_strlcpy(SDL_OUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen); @@ -405,6 +467,7 @@ extern DECLSPEC char *SDLCALL SDL_strlwr(char *str); extern DECLSPEC char *SDLCALL SDL_strchr(const char *str, int c); extern DECLSPEC char *SDLCALL SDL_strrchr(const char *str, int c); extern DECLSPEC char *SDLCALL SDL_strstr(const char *haystack, const char *needle); +extern DECLSPEC size_t SDLCALL SDL_utf8strlen(const char *str); extern DECLSPEC char *SDLCALL SDL_itoa(int value, char *str, int radix); extern DECLSPEC char *SDLCALL SDL_uitoa(unsigned int value, char *str, int radix); @@ -433,7 +496,7 @@ extern DECLSPEC int SDLCALL SDL_vsnprintf(SDL_OUT_Z_CAP(maxlen) char *text, size #ifndef HAVE_M_PI #ifndef M_PI -#define M_PI 3.14159265358979323846264338327950288 /* pi */ +#define M_PI 3.14159265358979323846264338327950288 /**< pi */ #endif #endif @@ -522,6 +585,6 @@ SDL_FORCE_INLINE void *SDL_memcpy4(SDL_OUT_BYTECAP(dwords*4) void *dst, SDL_IN_B #endif #include "close_code.h" -#endif /* _SDL_stdinc_h */ +#endif /* SDL_stdinc_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_surface.h b/lib/SDL2/include/SDL_surface.h index e63ca89038..510690c9cf 100644 --- a/lib/SDL2/include/SDL_surface.h +++ b/lib/SDL2/include/SDL_surface.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Header file for ::SDL_Surface definition and management functions. */ -#ifndef _SDL_surface_h -#define _SDL_surface_h +#ifndef SDL_surface_h_ +#define SDL_surface_h_ #include "SDL_stdinc.h" #include "SDL_pixels.h" @@ -94,8 +94,8 @@ typedef struct SDL_Surface /** * \brief The type of function used for surface blitting functions. */ -typedef int (*SDL_blit) (struct SDL_Surface * src, SDL_Rect * srcrect, - struct SDL_Surface * dst, SDL_Rect * dstrect); +typedef int (SDLCALL *SDL_blit) (struct SDL_Surface * src, SDL_Rect * srcrect, + struct SDL_Surface * dst, SDL_Rect * dstrect); /** * Allocate and free an RGB surface. @@ -118,6 +118,11 @@ typedef int (*SDL_blit) (struct SDL_Surface * src, SDL_Rect * srcrect, extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurface (Uint32 flags, int width, int height, int depth, Uint32 Rmask, Uint32 Gmask, Uint32 Bmask, Uint32 Amask); + +/* !!! FIXME for 2.1: why does this ask for depth? Format provides that. */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceWithFormat + (Uint32 flags, int width, int height, int depth, Uint32 format); + extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels, int width, int height, @@ -127,6 +132,8 @@ extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels, Uint32 Gmask, Uint32 Bmask, Uint32 Amask); +extern DECLSPEC SDL_Surface *SDLCALL SDL_CreateRGBSurfaceWithFormatFrom + (void *pixels, int width, int height, int depth, int pitch, Uint32 format); extern DECLSPEC void SDLCALL SDL_FreeSurface(SDL_Surface * surface); /** @@ -184,6 +191,12 @@ extern DECLSPEC SDL_Surface *SDLCALL SDL_LoadBMP_RW(SDL_RWops * src, /** * Save a surface to a seekable SDL data stream (memory or file). * + * Surfaces with a 24-bit, 32-bit and paletted 8-bit format get saved in the + * BMP directly. Other RGB formats with 8-bit or higher get converted to a + * 24-bit surface or, if they have an alpha mask or a colorkey, to a 32-bit + * surface before they are saved. YUV and paletted 1-bit and 4-bit formats are + * not supported. + * * If \c freedst is non-zero, the stream will be closed after being written. * * \return 0 if successful or -1 if there was an error. @@ -346,6 +359,11 @@ extern DECLSPEC SDL_bool SDLCALL SDL_SetClipRect(SDL_Surface * surface, extern DECLSPEC void SDLCALL SDL_GetClipRect(SDL_Surface * surface, SDL_Rect * rect); +/* + * Creates a new surface identical to the existing surface + */ +extern DECLSPEC SDL_Surface *SDLCALL SDL_DuplicateSurface(SDL_Surface * surface); + /** * Creates a new surface of the specified format, and then copies and maps * the given surface to it so the blit of the converted surface will be as @@ -498,6 +516,6 @@ extern DECLSPEC int SDLCALL SDL_LowerBlitScaled #endif #include "close_code.h" -#endif /* _SDL_surface_h */ +#endif /* SDL_surface_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_system.h b/lib/SDL2/include/SDL_system.h index 5da9adb459..eb069b33d8 100644 --- a/lib/SDL2/include/SDL_system.h +++ b/lib/SDL2/include/SDL_system.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for platform specific SDL API functions */ -#ifndef _SDL_system_h -#define _SDL_system_h +#ifndef SDL_system_h_ +#define SDL_system_h_ #include "SDL_stdinc.h" #include "SDL_keyboard.h" @@ -96,7 +96,7 @@ extern DECLSPEC void SDLCALL SDL_iPhoneSetEventPump(SDL_bool enabled); This returns JNIEnv*, but the prototype is void* so we don't need jni.h */ -extern DECLSPEC void * SDLCALL SDL_AndroidGetJNIEnv(); +extern DECLSPEC void * SDLCALL SDL_AndroidGetJNIEnv(void); /** \brief Get the SDL Activity object for the application @@ -106,7 +106,7 @@ extern DECLSPEC void * SDLCALL SDL_AndroidGetJNIEnv(); It is the caller's responsibility to properly release it (using env->Push/PopLocalFrame or manually with env->DeleteLocalRef) */ -extern DECLSPEC void * SDLCALL SDL_AndroidGetActivity(); +extern DECLSPEC void * SDLCALL SDL_AndroidGetActivity(void); /** See the official Android developer guide for more information: @@ -121,7 +121,7 @@ extern DECLSPEC void * SDLCALL SDL_AndroidGetActivity(); This path is unique to your application and cannot be written to by other applications. */ -extern DECLSPEC const char * SDLCALL SDL_AndroidGetInternalStoragePath(); +extern DECLSPEC const char * SDLCALL SDL_AndroidGetInternalStoragePath(void); /** \brief Get the current state of external storage, a bitmask of these values: @@ -130,7 +130,7 @@ extern DECLSPEC const char * SDLCALL SDL_AndroidGetInternalStoragePath(); If external storage is currently unavailable, this will return 0. */ -extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(); +extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(void); /** \brief Get the path used for external storage for this application. @@ -138,7 +138,7 @@ extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(); This path is unique to your application, but is public and can be written to by other applications. */ -extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath(); +extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath(void); #endif /* __ANDROID__ */ @@ -211,6 +211,6 @@ extern DECLSPEC const char * SDLCALL SDL_WinRTGetFSPathUTF8(SDL_WinRT_Path pathT #endif #include "close_code.h" -#endif /* _SDL_system_h */ +#endif /* SDL_system_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_syswm.h b/lib/SDL2/include/SDL_syswm.h index 1056e526bc..2d18afb6cf 100644 --- a/lib/SDL2/include/SDL_syswm.h +++ b/lib/SDL2/include/SDL_syswm.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL custom system window manager hooks. */ -#ifndef _SDL_syswm_h -#define _SDL_syswm_h +#ifndef SDL_syswm_h_ +#define SDL_syswm_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -106,6 +106,10 @@ typedef struct ANativeWindow ANativeWindow; typedef void *EGLSurface; #endif +#if defined(SDL_VIDEO_DRIVER_VIVANTE) +#include "SDL_egl.h" +#endif + /** * These are the various supported windowing subsystems */ @@ -120,7 +124,9 @@ typedef enum SDL_SYSWM_WAYLAND, SDL_SYSWM_MIR, SDL_SYSWM_WINRT, - SDL_SYSWM_ANDROID + SDL_SYSWM_ANDROID, + SDL_SYSWM_VIVANTE, + SDL_SYSWM_OS2 } SDL_SYSWM_TYPE; /** @@ -166,6 +172,13 @@ struct SDL_SysWMmsg int dummy; /* No UIKit window events yet */ } uikit; +#endif +#if defined(SDL_VIDEO_DRIVER_VIVANTE) + struct + { + int dummy; + /* No Vivante window events yet */ + } vivante; #endif /* Can't have an empty union */ int dummy; @@ -189,6 +202,7 @@ struct SDL_SysWMinfo { HWND window; /**< The window handle */ HDC hdc; /**< The window device context */ + HINSTANCE hinstance; /**< The instance handle */ } win; #endif #if defined(SDL_VIDEO_DRIVER_WINRT) @@ -216,9 +230,9 @@ struct SDL_SysWMinfo struct { #if defined(__OBJC__) && defined(__has_feature) && __has_feature(objc_arc) - NSWindow __unsafe_unretained *window; /* The Cocoa window */ + NSWindow __unsafe_unretained *window; /**< The Cocoa window */ #else - NSWindow *window; /* The Cocoa window */ + NSWindow *window; /**< The Cocoa window */ #endif } cocoa; #endif @@ -226,13 +240,13 @@ struct SDL_SysWMinfo struct { #if defined(__OBJC__) && defined(__has_feature) && __has_feature(objc_arc) - UIWindow __unsafe_unretained *window; /* The UIKit window */ + UIWindow __unsafe_unretained *window; /**< The UIKit window */ #else - UIWindow *window; /* The UIKit window */ + UIWindow *window; /**< The UIKit window */ #endif - GLuint framebuffer; /* The GL view's Framebuffer Object. It must be bound when rendering to the screen using GL. */ - GLuint colorbuffer; /* The GL view's color Renderbuffer Object. It must be bound when SDL_GL_SwapWindow is called. */ - GLuint resolveFramebuffer; /* The Framebuffer Object which holds the resolve color Renderbuffer, when MSAA is used. */ + GLuint framebuffer; /**< The GL view's Framebuffer Object. It must be bound when rendering to the screen using GL. */ + GLuint colorbuffer; /**< The GL view's color Renderbuffer Object. It must be bound when SDL_GL_SwapWindow is called. */ + GLuint resolveFramebuffer; /**< The Framebuffer Object which holds the resolve color Renderbuffer, when MSAA is used. */ } uikit; #endif #if defined(SDL_VIDEO_DRIVER_WAYLAND) @@ -259,8 +273,17 @@ struct SDL_SysWMinfo } android; #endif - /* Can't have an empty union */ - int dummy; +#if defined(SDL_VIDEO_DRIVER_VIVANTE) + struct + { + EGLNativeDisplayType display; + EGLNativeWindowType window; + } vivante; +#endif + + /* Make sure this union is always 64 bytes (8 64-bit pointers). */ + /* Be careful not to overflow this if you add a new target! */ + Uint8 dummy[64]; } info; }; @@ -296,6 +319,6 @@ extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowWMInfo(SDL_Window * window, #endif #include "close_code.h" -#endif /* _SDL_syswm_h */ +#endif /* SDL_syswm_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test.h b/lib/SDL2/include/SDL_test.h index 217847bfc9..f55afcb022 100644 --- a/lib/SDL2/include/SDL_test.h +++ b/lib/SDL2/include/SDL_test.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -27,21 +27,22 @@ * This code is a part of the SDL2_test library, not the main SDL library. */ -#ifndef _SDL_test_h -#define _SDL_test_h +#ifndef SDL_test_h_ +#define SDL_test_h_ #include "SDL.h" +#include "SDL_test_assert.h" #include "SDL_test_common.h" +#include "SDL_test_compare.h" +#include "SDL_test_crc32.h" #include "SDL_test_font.h" -#include "SDL_test_random.h" #include "SDL_test_fuzzer.h" -#include "SDL_test_crc32.h" -#include "SDL_test_md5.h" -#include "SDL_test_log.h" -#include "SDL_test_assert.h" #include "SDL_test_harness.h" #include "SDL_test_images.h" -#include "SDL_test_compare.h" +#include "SDL_test_log.h" +#include "SDL_test_md5.h" +#include "SDL_test_memory.h" +#include "SDL_test_random.h" #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -63,6 +64,6 @@ extern "C" { #endif #include "close_code.h" -#endif /* _SDL_test_h */ +#endif /* SDL_test_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_assert.h b/lib/SDL2/include/SDL_test_assert.h index 29277e1221..11d8363942 100644 --- a/lib/SDL2/include/SDL_test_assert.h +++ b/lib/SDL2/include/SDL_test_assert.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ * */ -#ifndef _SDL_test_assert_h -#define _SDL_test_assert_h +#ifndef SDL_test_assert_h_ +#define SDL_test_assert_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -80,12 +80,12 @@ void SDLTest_AssertPass(SDL_PRINTF_FORMAT_STRING const char *assertDescription, /** * \brief Resets the assert summary counters to zero. */ -void SDLTest_ResetAssertSummary(); +void SDLTest_ResetAssertSummary(void); /** * \brief Logs summary of all assertions (total, pass, fail) since last reset as INFO or ERROR. */ -void SDLTest_LogAssertSummary(); +void SDLTest_LogAssertSummary(void); /** @@ -93,13 +93,13 @@ void SDLTest_LogAssertSummary(); * * \returns TEST_RESULT_PASSED, TEST_RESULT_FAILED, or TEST_RESULT_NO_ASSERT */ -int SDLTest_AssertSummaryToTestResult(); +int SDLTest_AssertSummaryToTestResult(void); #ifdef __cplusplus } #endif #include "close_code.h" -#endif /* _SDL_test_assert_h */ +#endif /* SDL_test_assert_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_common.h b/lib/SDL2/include/SDL_test_common.h index 0ebf31cb67..24eeb32af1 100644 --- a/lib/SDL2/include/SDL_test_common.h +++ b/lib/SDL2/include/SDL_test_common.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -29,8 +29,8 @@ /* Ported from original test\common.h file. */ -#ifndef _SDL_test_common_h -#define _SDL_test_common_h +#ifndef SDL_test_common_h_ +#define SDL_test_common_h_ #include "SDL.h" @@ -183,6 +183,6 @@ void SDLTest_CommonQuit(SDLTest_CommonState * state); #endif #include "close_code.h" -#endif /* _SDL_test_common_h */ +#endif /* SDL_test_common_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_compare.h b/lib/SDL2/include/SDL_test_compare.h index 772cf9fbd7..9f4c4587ad 100644 --- a/lib/SDL2/include/SDL_test_compare.h +++ b/lib/SDL2/include/SDL_test_compare.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ */ -#ifndef _SDL_test_compare_h -#define _SDL_test_compare_h +#ifndef SDL_test_compare_h_ +#define SDL_test_compare_h_ #include "SDL.h" @@ -64,6 +64,6 @@ int SDLTest_CompareSurfaces(SDL_Surface *surface, SDL_Surface *referenceSurface, #endif #include "close_code.h" -#endif /* _SDL_test_compare_h */ +#endif /* SDL_test_compare_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_crc32.h b/lib/SDL2/include/SDL_test_crc32.h index 572a3d9551..add480c349 100644 --- a/lib/SDL2/include/SDL_test_crc32.h +++ b/lib/SDL2/include/SDL_test_crc32.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ */ -#ifndef _SDL_test_crc32_h -#define _SDL_test_crc32_h +#ifndef SDL_test_crc32_h_ +#define SDL_test_crc32_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -93,7 +93,7 @@ extern "C" { * \returns 0 for OK, -1 on error * */ -int SDLTest_crc32Calc(SDLTest_Crc32Context * crcContext, CrcUint8 *inBuf, CrcUint32 inLen, CrcUint32 *crc32); +int SDLTest_Crc32Calc(SDLTest_Crc32Context * crcContext, CrcUint8 *inBuf, CrcUint32 inLen, CrcUint32 *crc32); /* Same routine broken down into three steps */ int SDLTest_Crc32CalcStart(SDLTest_Crc32Context * crcContext, CrcUint32 *crc32); @@ -119,6 +119,6 @@ int SDLTest_Crc32Done(SDLTest_Crc32Context * crcContext); #endif #include "close_code.h" -#endif /* _SDL_test_crc32_h */ +#endif /* SDL_test_crc32_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_font.h b/lib/SDL2/include/SDL_test_font.h index 3378ea85b2..58c9f9d5e5 100644 --- a/lib/SDL2/include/SDL_test_font.h +++ b/lib/SDL2/include/SDL_test_font.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -27,8 +27,8 @@ * This code is a part of the SDL2_test library, not the main SDL library. */ -#ifndef _SDL_test_font_h -#define _SDL_test_font_h +#ifndef SDL_test_font_h_ +#define SDL_test_font_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -50,7 +50,7 @@ extern "C" { * * \returns Returns 0 on success, -1 on failure. */ -int SDLTest_DrawCharacter( SDL_Renderer *renderer, int x, int y, char c ); +int SDLTest_DrawCharacter(SDL_Renderer *renderer, int x, int y, char c); /** * \brief Draw a string in the currently set font. @@ -62,15 +62,20 @@ int SDLTest_DrawCharacter( SDL_Renderer *renderer, int x, int y, char c ); * * \returns Returns 0 on success, -1 on failure. */ -int SDLTest_DrawString( SDL_Renderer * renderer, int x, int y, const char *s ); +int SDLTest_DrawString(SDL_Renderer *renderer, int x, int y, const char *s); +/** + * \brief Cleanup textures used by font drawing functions. + */ +void SDLTest_CleanupTextDrawing(void); + /* Ends C function definitions when using C++ */ #ifdef __cplusplus } #endif #include "close_code.h" -#endif /* _SDL_test_font_h */ +#endif /* SDL_test_font_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_fuzzer.h b/lib/SDL2/include/SDL_test_fuzzer.h index 9603652b28..6cf05747ad 100644 --- a/lib/SDL2/include/SDL_test_fuzzer.h +++ b/lib/SDL2/include/SDL_test_fuzzer.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ */ -#ifndef _SDL_test_fuzzer_h -#define _SDL_test_fuzzer_h +#ifndef SDL_test_fuzzer_h_ +#define SDL_test_fuzzer_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -68,14 +68,14 @@ void SDLTest_FuzzerInit(Uint64 execKey); * * \returns Generated integer */ -Uint8 SDLTest_RandomUint8(); +Uint8 SDLTest_RandomUint8(void); /** * Returns a random Sint8 * * \returns Generated signed integer */ -Sint8 SDLTest_RandomSint8(); +Sint8 SDLTest_RandomSint8(void); /** @@ -83,14 +83,14 @@ Sint8 SDLTest_RandomSint8(); * * \returns Generated integer */ -Uint16 SDLTest_RandomUint16(); +Uint16 SDLTest_RandomUint16(void); /** * Returns a random Sint16 * * \returns Generated signed integer */ -Sint16 SDLTest_RandomSint16(); +Sint16 SDLTest_RandomSint16(void); /** @@ -98,7 +98,7 @@ Sint16 SDLTest_RandomSint16(); * * \returns Generated integer */ -Sint32 SDLTest_RandomSint32(); +Sint32 SDLTest_RandomSint32(void); /** @@ -106,14 +106,14 @@ Sint32 SDLTest_RandomSint32(); * * \returns Generated integer */ -Uint32 SDLTest_RandomUint32(); +Uint32 SDLTest_RandomUint32(void); /** * Returns random Uint64. * * \returns Generated integer */ -Uint64 SDLTest_RandomUint64(); +Uint64 SDLTest_RandomUint64(void); /** @@ -121,29 +121,29 @@ Uint64 SDLTest_RandomUint64(); * * \returns Generated signed integer */ -Sint64 SDLTest_RandomSint64(); +Sint64 SDLTest_RandomSint64(void); /** * \returns random float in range [0.0 - 1.0[ */ -float SDLTest_RandomUnitFloat(); +float SDLTest_RandomUnitFloat(void); /** * \returns random double in range [0.0 - 1.0[ */ -double SDLTest_RandomUnitDouble(); +double SDLTest_RandomUnitDouble(void); /** * \returns random float. * */ -float SDLTest_RandomFloat(); +float SDLTest_RandomFloat(void); /** * \returns random double. * */ -double SDLTest_RandomDouble(); +double SDLTest_RandomDouble(void); /** * Returns a random boundary value for Uint8 within the given boundaries. @@ -338,7 +338,7 @@ Sint32 SDLTest_RandomIntegerInRange(Sint32 min, Sint32 max); * * \returns Newly allocated random string; or NULL if length was invalid or string could not be allocated. */ -char * SDLTest_RandomAsciiString(); +char * SDLTest_RandomAsciiString(void); /** @@ -371,7 +371,7 @@ char * SDLTest_RandomAsciiStringOfSize(int size); /** * Returns the invocation count for the fuzzer since last ...FuzzerInit. */ -int SDLTest_GetFuzzerInvocationCount(); +int SDLTest_GetFuzzerInvocationCount(void); /* Ends C function definitions when using C++ */ #ifdef __cplusplus @@ -379,6 +379,6 @@ int SDLTest_GetFuzzerInvocationCount(); #endif #include "close_code.h" -#endif /* _SDL_test_fuzzer_h */ +#endif /* SDL_test_fuzzer_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_harness.h b/lib/SDL2/include/SDL_test_harness.h index 74c0950cda..68c4bcb7c4 100644 --- a/lib/SDL2/include/SDL_test_harness.h +++ b/lib/SDL2/include/SDL_test_harness.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ Based on original GSOC code by Markus Kauppila */ -#ifndef _SDL_test_harness_h -#define _SDL_test_harness_h +#ifndef SDL_test_h_arness_h +#define SDL_test_h_arness_h #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -98,6 +98,17 @@ typedef struct SDLTest_TestSuiteReference { } SDLTest_TestSuiteReference; +/** + * \brief Generates a random run seed string for the harness. The generated seed will contain alphanumeric characters (0-9A-Z). + * + * Note: The returned string needs to be deallocated by the caller. + * + * \param length The length of the seed string to generate + * + * \returns The generated seed string + */ +char *SDLTest_GenerateRunSeed(const int length); + /** * \brief Execute a test suite using the given run seed and execution key. * @@ -118,6 +129,6 @@ int SDLTest_RunSuites(SDLTest_TestSuiteReference *testSuites[], const char *user #endif #include "close_code.h" -#endif /* _SDL_test_harness_h */ +#endif /* SDL_test_h_arness_h */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_images.h b/lib/SDL2/include/SDL_test_images.h index 8c64b4feb4..683d2f8a68 100644 --- a/lib/SDL2/include/SDL_test_images.h +++ b/lib/SDL2/include/SDL_test_images.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ */ -#ifndef _SDL_test_images_h -#define _SDL_test_images_h +#ifndef SDL_test_images_h_ +#define SDL_test_images_h_ #include "SDL.h" @@ -55,17 +55,17 @@ typedef struct SDLTest_SurfaceImage_s { } SDLTest_SurfaceImage_t; /* Test images */ -SDL_Surface *SDLTest_ImageBlit(); -SDL_Surface *SDLTest_ImageBlitColor(); -SDL_Surface *SDLTest_ImageBlitAlpha(); -SDL_Surface *SDLTest_ImageBlitBlendAdd(); -SDL_Surface *SDLTest_ImageBlitBlend(); -SDL_Surface *SDLTest_ImageBlitBlendMod(); -SDL_Surface *SDLTest_ImageBlitBlendNone(); -SDL_Surface *SDLTest_ImageBlitBlendAll(); -SDL_Surface *SDLTest_ImageFace(); -SDL_Surface *SDLTest_ImagePrimitives(); -SDL_Surface *SDLTest_ImagePrimitivesBlend(); +SDL_Surface *SDLTest_ImageBlit(void); +SDL_Surface *SDLTest_ImageBlitColor(void); +SDL_Surface *SDLTest_ImageBlitAlpha(void); +SDL_Surface *SDLTest_ImageBlitBlendAdd(void); +SDL_Surface *SDLTest_ImageBlitBlend(void); +SDL_Surface *SDLTest_ImageBlitBlendMod(void); +SDL_Surface *SDLTest_ImageBlitBlendNone(void); +SDL_Surface *SDLTest_ImageBlitBlendAll(void); +SDL_Surface *SDLTest_ImageFace(void); +SDL_Surface *SDLTest_ImagePrimitives(void); +SDL_Surface *SDLTest_ImagePrimitivesBlend(void); /* Ends C function definitions when using C++ */ #ifdef __cplusplus @@ -73,6 +73,6 @@ SDL_Surface *SDLTest_ImagePrimitivesBlend(); #endif #include "close_code.h" -#endif /* _SDL_test_images_h */ +#endif /* SDL_test_images_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_log.h b/lib/SDL2/include/SDL_test_log.h index 73a5c016fb..9f993fbbc8 100644 --- a/lib/SDL2/include/SDL_test_log.h +++ b/lib/SDL2/include/SDL_test_log.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,8 +33,8 @@ * */ -#ifndef _SDL_test_log_h -#define _SDL_test_log_h +#ifndef SDL_test_log_h_ +#define SDL_test_log_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -62,6 +62,6 @@ void SDLTest_LogError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_ #endif #include "close_code.h" -#endif /* _SDL_test_log_h */ +#endif /* SDL_test_log_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_md5.h b/lib/SDL2/include/SDL_test_md5.h index f2d9a7d7e3..67ca7d1def 100644 --- a/lib/SDL2/include/SDL_test_md5.h +++ b/lib/SDL2/include/SDL_test_md5.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -53,8 +53,8 @@ *********************************************************************** */ -#ifndef _SDL_test_md5_h -#define _SDL_test_md5_h +#ifndef SDL_test_md5_h_ +#define SDL_test_md5_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -124,6 +124,6 @@ extern "C" { #endif #include "close_code.h" -#endif /* _SDL_test_md5_h */ +#endif /* SDL_test_md5_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_memory.h b/lib/SDL2/include/SDL_test_memory.h new file mode 100644 index 0000000000..43b67f521b --- /dev/null +++ b/lib/SDL2/include/SDL_test_memory.h @@ -0,0 +1,63 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2017 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_test_memory.h + * + * Include file for SDL test framework. + * + * This code is a part of the SDL2_test library, not the main SDL library. + */ + +#ifndef SDL_test_memory_h_ +#define SDL_test_memory_h_ + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + + +/** + * \brief Start tracking SDL memory allocations + * + * \note This should be called before any other SDL functions for complete tracking coverage + */ +int SDLTest_TrackAllocations(); + +/** + * \brief Print a log of any outstanding allocations + * + * \note This can be called after SDL_Quit() + */ +void SDLTest_LogAllocations(); + + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_test_memory_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_test_random.h b/lib/SDL2/include/SDL_test_random.h index 91c36526cb..2b01922c3e 100644 --- a/lib/SDL2/include/SDL_test_random.h +++ b/lib/SDL2/include/SDL_test_random.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -37,8 +37,8 @@ */ -#ifndef _SDL_test_random_h -#define _SDL_test_random_h +#ifndef SDL_test_random_h_ +#define SDL_test_random_h_ #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -110,6 +110,6 @@ extern "C" { #endif #include "close_code.h" -#endif /* _SDL_test_random_h */ +#endif /* SDL_test_random_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_thread.h b/lib/SDL2/include/SDL_thread.h index 377e6c73d1..d0f6575cd5 100644 --- a/lib/SDL2/include/SDL_thread.h +++ b/lib/SDL2/include/SDL_thread.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_thread_h -#define _SDL_thread_h +#ifndef SDL_thread_h_ +#define SDL_thread_h_ /** * \file SDL_thread.h @@ -74,15 +74,15 @@ typedef int (SDLCALL * SDL_ThreadFunction) (void *data); * * We compile SDL into a DLL. This means, that it's the DLL which * creates a new thread for the calling process with the SDL_CreateThread() - * API. There is a problem with this, that only the RTL of the SDL.DLL will + * API. There is a problem with this, that only the RTL of the SDL2.DLL will * be initialized for those threads, and not the RTL of the calling * application! * * To solve this, we make a little hack here. * * We'll always use the caller's _beginthread() and _endthread() APIs to - * start a new thread. This way, if it's the SDL.DLL which uses this API, - * then the RTL of SDL.DLL will be used to create the new thread, and if it's + * start a new thread. This way, if it's the SDL2.DLL which uses this API, + * then the RTL of SDL2.DLL will be used to create the new thread, and if it's * the application, then the RTL of the application will be used. * * So, in short: @@ -90,14 +90,11 @@ typedef int (SDLCALL * SDL_ThreadFunction) (void *data); * library! */ #define SDL_PASSED_BEGINTHREAD_ENDTHREAD -#include /* This has _beginthread() and _endthread() defined! */ - -typedef uintptr_t(__cdecl * pfnSDL_CurrentBeginThread) (void *, unsigned, - unsigned (__stdcall * - func) (void - *), - void *arg, unsigned, - unsigned *threadID); +#include /* _beginthreadex() and _endthreadex() */ + +typedef uintptr_t(__cdecl * pfnSDL_CurrentBeginThread) + (void *, unsigned, unsigned (__stdcall *func)(void *), + void * /*arg*/, unsigned, unsigned * /* threadID */); typedef void (__cdecl * pfnSDL_CurrentEndThread) (unsigned code); /** @@ -118,6 +115,30 @@ SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data, #define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthreadex, (pfnSDL_CurrentEndThread)_endthreadex) #endif +#elif defined(__OS2__) +/* + * just like the windows case above: We compile SDL2 + * into a dll with Watcom's runtime statically linked. + */ +#define SDL_PASSED_BEGINTHREAD_ENDTHREAD +#ifndef __EMX__ +#include +#else +#include +#endif +typedef int (*pfnSDL_CurrentBeginThread)(void (*func)(void *), void *, unsigned, void * /*arg*/); +typedef void (*pfnSDL_CurrentEndThread)(void); +extern DECLSPEC SDL_Thread *SDLCALL +SDL_CreateThread(SDL_ThreadFunction fn, const char *name, void *data, + pfnSDL_CurrentBeginThread pfnBeginThread, + pfnSDL_CurrentEndThread pfnEndThread); +#if defined(SDL_CreateThread) && SDL_DYNAMIC_API +#undef SDL_CreateThread +#define SDL_CreateThread(fn, name, data) SDL_CreateThread_REAL(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread) +#else +#define SDL_CreateThread(fn, name, data) SDL_CreateThread(fn, name, data, (pfnSDL_CurrentBeginThread)_beginthread, (pfnSDL_CurrentEndThread)_endthread) +#endif + #else /** @@ -273,7 +294,7 @@ extern DECLSPEC void * SDLCALL SDL_TLSGet(SDL_TLSID id); * \sa SDL_TLSCreate() * \sa SDL_TLSGet() */ -extern DECLSPEC int SDLCALL SDL_TLSSet(SDL_TLSID id, const void *value, void (*destructor)(void*)); +extern DECLSPEC int SDLCALL SDL_TLSSet(SDL_TLSID id, const void *value, void (SDLCALL *destructor)(void*)); /* Ends C function definitions when using C++ */ @@ -282,6 +303,6 @@ extern DECLSPEC int SDLCALL SDL_TLSSet(SDL_TLSID id, const void *value, void (*d #endif #include "close_code.h" -#endif /* _SDL_thread_h */ +#endif /* SDL_thread_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_timer.h b/lib/SDL2/include/SDL_timer.h index e0d3785ee8..282625d3f0 100644 --- a/lib/SDL2/include/SDL_timer.h +++ b/lib/SDL2/include/SDL_timer.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -19,8 +19,8 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef _SDL_timer_h -#define _SDL_timer_h +#ifndef SDL_timer_h_ +#define SDL_timer_h_ /** * \file SDL_timer.h @@ -110,6 +110,6 @@ extern DECLSPEC SDL_bool SDLCALL SDL_RemoveTimer(SDL_TimerID id); #endif #include "close_code.h" -#endif /* _SDL_timer_h */ +#endif /* SDL_timer_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_touch.h b/lib/SDL2/include/SDL_touch.h index 2643e36796..db9e25ebdc 100644 --- a/lib/SDL2/include/SDL_touch.h +++ b/lib/SDL2/include/SDL_touch.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Include file for SDL touch event handling. */ -#ifndef _SDL_touch_h -#define _SDL_touch_h +#ifndef SDL_touch_h_ +#define SDL_touch_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -81,6 +81,6 @@ extern DECLSPEC SDL_Finger * SDLCALL SDL_GetTouchFinger(SDL_TouchID touchID, int #endif #include "close_code.h" -#endif /* _SDL_touch_h */ +#endif /* SDL_touch_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_types.h b/lib/SDL2/include/SDL_types.h index 5118af2191..06ee80cb35 100644 --- a/lib/SDL2/include/SDL_types.h +++ b/lib/SDL2/include/SDL_types.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/lib/SDL2/include/SDL_version.h b/lib/SDL2/include/SDL_version.h index de1f160565..5b4c402486 100644 --- a/lib/SDL2/include/SDL_version.h +++ b/lib/SDL2/include/SDL_version.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * This header defines the current SDL version. */ -#ifndef _SDL_version_h -#define _SDL_version_h +#ifndef SDL_version_h_ +#define SDL_version_h_ #include "SDL_stdinc.h" @@ -59,7 +59,7 @@ typedef struct SDL_version */ #define SDL_MAJOR_VERSION 2 #define SDL_MINOR_VERSION 0 -#define SDL_PATCHLEVEL 4 +#define SDL_PATCHLEVEL 7 /** * \brief Macro to determine SDL version program was compiled against. @@ -157,6 +157,6 @@ extern DECLSPEC int SDLCALL SDL_GetRevisionNumber(void); #endif #include "close_code.h" -#endif /* _SDL_version_h */ +#endif /* SDL_version_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_video.h b/lib/SDL2/include/SDL_video.h index 52dbbc765d..6f6cda8b18 100644 --- a/lib/SDL2/include/SDL_video.h +++ b/lib/SDL2/include/SDL_video.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -25,8 +25,8 @@ * Header file for SDL video functions. */ -#ifndef _SDL_video_h -#define _SDL_video_h +#ifndef SDL_video_h_ +#define SDL_video_h_ #include "SDL_stdinc.h" #include "SDL_pixels.h" @@ -83,6 +83,7 @@ typedef struct * \sa SDL_SetWindowPosition() * \sa SDL_SetWindowSize() * \sa SDL_SetWindowBordered() + * \sa SDL_SetWindowResizable() * \sa SDL_SetWindowTitle() * \sa SDL_ShowWindow() */ @@ -95,6 +96,7 @@ typedef struct SDL_Window SDL_Window; */ typedef enum { + /* !!! FIXME: change this to name = (1<0. * \param h The height of the window, in screen coordinates. Must be >0. * - * \note You can't change the size of a fullscreen window, it automatically - * matches the size of the display mode. + * \note Fullscreen windows automatically match the size of the display mode, + * and you should use SDL_SetWindowDisplayMode() to change their size. * * The window size in screen coordinates may differ from the size in pixels, if * the window was created with SDL_WINDOW_ALLOW_HIGHDPI on a platform with @@ -563,6 +613,7 @@ extern DECLSPEC void SDLCALL SDL_GetWindowPosition(SDL_Window * window, * SDL_GetRendererOutputSize() to get the real client area size in pixels. * * \sa SDL_GetWindowSize() + * \sa SDL_SetWindowDisplayMode() */ extern DECLSPEC void SDLCALL SDL_SetWindowSize(SDL_Window * window, int w, int h); @@ -586,6 +637,25 @@ extern DECLSPEC void SDLCALL SDL_SetWindowSize(SDL_Window * window, int w, extern DECLSPEC void SDLCALL SDL_GetWindowSize(SDL_Window * window, int *w, int *h); +/** + * \brief Get the size of a window's borders (decorations) around the client area. + * + * \param window The window to query. + * \param top Pointer to variable for storing the size of the top border. NULL is permitted. + * \param left Pointer to variable for storing the size of the left border. NULL is permitted. + * \param bottom Pointer to variable for storing the size of the bottom border. NULL is permitted. + * \param right Pointer to variable for storing the size of the right border. NULL is permitted. + * + * \return 0 on success, or -1 if getting this information is not supported. + * + * \note if this function fails (returns -1), the size values will be + * initialized to 0, 0, 0, 0 (if a non-NULL pointer is provided), as + * if the window in question was borderless. + */ +extern DECLSPEC int SDLCALL SDL_GetWindowBordersSize(SDL_Window * window, + int *top, int *left, + int *bottom, int *right); + /** * \brief Set the minimum size of a window's client area. * @@ -661,6 +731,23 @@ extern DECLSPEC void SDLCALL SDL_GetWindowMaximumSize(SDL_Window * window, extern DECLSPEC void SDLCALL SDL_SetWindowBordered(SDL_Window * window, SDL_bool bordered); +/** + * \brief Set the user-resizable state of a window. + * + * This will add or remove the window's SDL_WINDOW_RESIZABLE flag and + * allow/disallow user resizing of the window. This is a no-op if the + * window's resizable state already matches the requested state. + * + * \param window The window of which to change the resizable state. + * \param resizable SDL_TRUE to allow resizing, SDL_FALSE to disallow. + * + * \note You can't change the resizable state of a fullscreen window. + * + * \sa SDL_GetWindowFlags() + */ +extern DECLSPEC void SDLCALL SDL_SetWindowResizable(SDL_Window * window, + SDL_bool resizable); + /** * \brief Show a window. * @@ -744,7 +831,7 @@ extern DECLSPEC int SDLCALL SDL_UpdateWindowSurface(SDL_Window * window); * \return 0 on success, or -1 on error. * * \sa SDL_GetWindowSurface() - * \sa SDL_UpdateWindowSurfaceRect() + * \sa SDL_UpdateWindowSurface() */ extern DECLSPEC int SDLCALL SDL_UpdateWindowSurfaceRects(SDL_Window * window, const SDL_Rect * rects, @@ -801,6 +888,58 @@ extern DECLSPEC int SDLCALL SDL_SetWindowBrightness(SDL_Window * window, float b */ extern DECLSPEC float SDLCALL SDL_GetWindowBrightness(SDL_Window * window); +/** + * \brief Set the opacity for a window + * + * \param window The window which will be made transparent or opaque + * \param opacity Opacity (0.0f - transparent, 1.0f - opaque) This will be + * clamped internally between 0.0f and 1.0f. + * + * \return 0 on success, or -1 if setting the opacity isn't supported. + * + * \sa SDL_GetWindowOpacity() + */ +extern DECLSPEC int SDLCALL SDL_SetWindowOpacity(SDL_Window * window, float opacity); + +/** + * \brief Get the opacity of a window. + * + * If transparency isn't supported on this platform, opacity will be reported + * as 1.0f without error. + * + * \param window The window in question. + * \param out_opacity Opacity (0.0f - transparent, 1.0f - opaque) + * + * \return 0 on success, or -1 on error (invalid window, etc). + * + * \sa SDL_SetWindowOpacity() + */ +extern DECLSPEC int SDLCALL SDL_GetWindowOpacity(SDL_Window * window, float * out_opacity); + +/** + * \brief Sets the window as a modal for another window (TODO: reconsider this function and/or its name) + * + * \param modal_window The window that should be modal + * \param parent_window The parent window + * + * \return 0 on success, or -1 otherwise. + */ +extern DECLSPEC int SDLCALL SDL_SetWindowModalFor(SDL_Window * modal_window, SDL_Window * parent_window); + +/** + * \brief Explicitly sets input focus to the window. + * + * You almost certainly want SDL_RaiseWindow() instead of this function. Use + * this with caution, as you might give focus to a window that's completely + * obscured by other windows. + * + * \param window The window that should get the input focus + * + * \return 0 on success, or -1 otherwise. + * \sa SDL_RaiseWindow() + */ +extern DECLSPEC int SDLCALL SDL_SetWindowInputFocus(SDL_Window * window); + /** * \brief Set the gamma ramp for a window. * @@ -920,7 +1059,7 @@ extern DECLSPEC void SDLCALL SDL_DestroyWindow(SDL_Window * window); /** - * \brief Returns whether the screensaver is currently enabled (default on). + * \brief Returns whether the screensaver is currently enabled (default off). * * \sa SDL_EnableScreenSaver() * \sa SDL_DisableScreenSaver() @@ -995,11 +1134,16 @@ extern DECLSPEC void SDLCALL SDL_GL_ResetAttributes(void); /** * \brief Set an OpenGL window attribute before window creation. + * + * \return 0 on success, or -1 if the attribute could not be set. */ extern DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value); /** * \brief Get the actual value for an attribute from the current context. + * + * \return 0 on success, or -1 if the attribute could not be retrieved. + * The integer at \c value will be modified in either case. */ extern DECLSPEC int SDLCALL SDL_GL_GetAttribute(SDL_GLattr attr, int *value); @@ -1098,6 +1242,6 @@ extern DECLSPEC void SDLCALL SDL_GL_DeleteContext(SDL_GLContext context); #endif #include "close_code.h" -#endif /* _SDL_video_h */ +#endif /* SDL_video_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/lib/SDL2/include/SDL_vulkan.h b/lib/SDL2/include/SDL_vulkan.h new file mode 100644 index 0000000000..803b5feef3 --- /dev/null +++ b/lib/SDL2/include/SDL_vulkan.h @@ -0,0 +1,257 @@ +/* + Simple DirectMedia Layer + Copyright (C) 2017, Mark Callow + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_vulkan.h + * + * Header file for functions to creating Vulkan surfaces on SDL windows. + */ + +#ifndef SDL_vulkan_h_ +#define SDL_vulkan_h_ + +#include "SDL_video.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/* Avoid including vulkan.h, don't define VkInstance if it's already included */ +#ifdef VULKAN_H_ +#define NO_SDL_VULKAN_TYPEDEFS +#endif +#ifndef NO_SDL_VULKAN_TYPEDEFS +#define VK_DEFINE_HANDLE(object) typedef struct object##_T* object; + +#if defined(__LP64__) || defined(_WIN64) || defined(__x86_64__) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) +#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef struct object##_T *object; +#else +#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object) typedef uint64_t object; +#endif + +VK_DEFINE_HANDLE(VkInstance) +VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSurfaceKHR) + +#endif /* !NO_SDL_VULKAN_TYPEDEFS */ + +typedef VkInstance SDL_vulkanInstance; +typedef VkSurfaceKHR SDL_vulkanSurface; /* for compatibility with Tizen */ + +/** + * \name Vulkan support functions + * + * \note SDL_Vulkan_GetInstanceExtensions & SDL_Vulkan_CreateSurface API + * is compatable with Tizen's implementation of Vulkan in SDL. + */ +/* @{ */ + +/** + * \brief Dynamically load a Vulkan loader library. + * + * \param [in] path The platform dependent Vulkan loader library name, or + * \c NULL to open the default Vulkan loader library. + * + * \return \c 0 on success, or \c -1 if the library couldn't be loaded. + * + * This should be done after initializing the video driver, but before + * creating any Vulkan windows. If no Vulkan loader library is loaded, the + * default library will be loaded upon creation of the first Vulkan window. + * + * \note If you specify a non-NULL \a path, you should retrieve all of the + * Vulkan functions used in your program from the dynamic library using + * \c SDL_Vulkan_GetVkGetInstanceProcAddr() unless you can guarantee + * \a path points to the same vulkan loader library that you linked to. + * + * \note On Apple devices, if \a path is NULL, SDL will attempt to find + * the vkGetInstanceProcAddr address within all the mach-o images of + * the current process. This is because the currently (v0.17.0) + * recommended MoltenVK (Vulkan on Metal) usage is as a static library. + * If it is not found then SDL will attempt to load \c libMoltenVK.dylib. + * Applications using the dylib alternative therefore do not need to do + * anything special when calling SDL. + * + * \note On non-Apple devices, SDL requires you to either not link to the + * Vulkan loader or link to a dynamic library version. This limitation + * may be removed in a future version of SDL. + * + * \note This function will fail if there are no working Vulkan drivers + * installed. + * + * \sa SDL_Vulkan_GetVkGetInstanceProcAddr() + * \sa SDL_Vulkan_UnloadLibrary() + */ +extern DECLSPEC int SDLCALL SDL_Vulkan_LoadLibrary(const char *path); + +/** + * \brief Get the address of the \c vkGetInstanceProcAddr function. + * + * \note This should be called after either calling SDL_Vulkan_LoadLibrary + * or creating an SDL_Window with the SDL_WINDOW_VULKAN flag. + */ +extern DECLSPEC void *SDLCALL SDL_Vulkan_GetVkGetInstanceProcAddr(void); + +/** + * \brief Unload the Vulkan loader library previously loaded by + * \c SDL_Vulkan_LoadLibrary(). + * + * \sa SDL_Vulkan_LoadLibrary() + */ +extern DECLSPEC void SDLCALL SDL_Vulkan_UnloadLibrary(void); + +/** + * \brief Get the names of the Vulkan instance extensions needed to create + * a surface with \c SDL_Vulkan_CreateSurface(). + * + * \param [in] window Window for which the required Vulkan instance + * extensions should be retrieved + * \param [in,out] count pointer to an \c unsigned related to the number of + * required Vulkan instance extensions + * \param [out] names \c NULL or a pointer to an array to be filled with the + * required Vulkan instance extensions + * + * \return \c SDL_TRUE on success, \c SDL_FALSE on error. + * + * If \a pNames is \c NULL, then the number of required Vulkan instance + * extensions is returned in pCount. Otherwise, \a pCount must point to a + * variable set to the number of elements in the \a pNames array, and on + * return the variable is overwritten with the number of names actually + * written to \a pNames. If \a pCount is less than the number of required + * extensions, at most \a pCount structures will be written. If \a pCount + * is smaller than the number of required extensions, \c SDL_FALSE will be + * returned instead of \c SDL_TRUE, to indicate that not all the required + * extensions were returned. + * + * \note The returned list of extensions will contain \c VK_KHR_surface + * and zero or more platform specific extensions + * + * \note The extension names queried here must be enabled when calling + * VkCreateInstance, otherwise surface creation will fail. + * + * \note \c window should have been created with the \c SDL_WINDOW_VULKAN flag. + * + * \code + * unsigned int count; + * // get count of required extensions + * if(!SDL_Vulkan_GetInstanceExtensions(window, &count, NULL)) + * handle_error(); + * + * static const char *const additionalExtensions[] = + * { + * VK_EXT_DEBUG_REPORT_EXTENSION_NAME, // example additional extension + * }; + * size_t additionalExtensionsCount = sizeof(additionalExtensions) / sizeof(additionalExtensions[0]); + * size_t extensionCount = count + additionalExtensionsCount; + * const char **names = malloc(sizeof(const char *) * extensionCount); + * if(!names) + * handle_error(); + * + * // get names of required extensions + * if(!SDL_Vulkan_GetInstanceExtensions(window, &count, names)) + * handle_error(); + * + * // copy additional extensions after required extensions + * for(size_t i = 0; i < additionalExtensionsCount; i++) + * names[i + count] = additionalExtensions[i]; + * + * VkInstanceCreateInfo instanceCreateInfo = {}; + * instanceCreateInfo.enabledExtensionCount = extensionCount; + * instanceCreateInfo.ppEnabledExtensionNames = names; + * // fill in rest of instanceCreateInfo + * + * VkInstance instance; + * // create the Vulkan instance + * VkResult result = vkCreateInstance(&instanceCreateInfo, NULL, &instance); + * free(names); + * \endcode + * + * \sa SDL_Vulkan_CreateSurface() + */ +extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions( + SDL_Window *window, + unsigned int *pCount, + const char **pNames); + +/** + * \brief Create a Vulkan rendering surface for a window. + * + * \param [in] window SDL_Window to which to attach the rendering surface. + * \param [in] instance handle to the Vulkan instance to use. + * \param [out] surface pointer to a VkSurfaceKHR handle to receive the + * handle of the newly created surface. + * + * \return \c SDL_TRUE on success, \c SDL_FALSE on error. + * + * \code + * VkInstance instance; + * SDL_Window *window; + * + * // create instance and window + * + * // create the Vulkan surface + * VkSurfaceKHR surface; + * if(!SDL_Vulkan_CreateSurface(window, instance, &surface)) + * handle_error(); + * \endcode + * + * \note \a window should have been created with the \c SDL_WINDOW_VULKAN flag. + * + * \note \a instance should have been created with the extensions returned + * by \c SDL_Vulkan_CreateSurface() enabled. + * + * \sa SDL_Vulkan_GetInstanceExtensions() + */ +extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface( + SDL_Window *window, + VkInstance instance, + VkSurfaceKHR* surface); + +/** + * \brief Get the size of a window's underlying drawable in pixels (for use + * with setting viewport, scissor & etc). + * + * \param window SDL_Window from which the drawable size should be queried + * \param w Pointer to variable for storing the width in pixels, + * may be NULL + * \param h Pointer to variable for storing the height in pixels, + * may be NULL + * + * This may differ from SDL_GetWindowSize() if we're rendering to a high-DPI + * drawable, i.e. the window was created with SDL_WINDOW_ALLOW_HIGHDPI on a + * platform with high-DPI support (Apple calls this "Retina"), and not disabled + * by the \c SDL_HINT_VIDEO_HIGHDPI_DISABLED hint. + * + * \sa SDL_GetWindowSize() + * \sa SDL_CreateWindow() + */ +extern DECLSPEC void SDLCALL SDL_Vulkan_GetDrawableSize(SDL_Window * window, + int *w, int *h); + +/* @} *//* Vulkan support functions */ + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_vulkan_h_ */ diff --git a/lib/SDL2/include/begin_code.h b/lib/SDL2/include/begin_code.h index 04e78c64d4..5372d6f04d 100644 --- a/lib/SDL2/include/begin_code.h +++ b/lib/SDL2/include/begin_code.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -61,6 +61,12 @@ # else # define DECLSPEC __declspec(dllexport) # endif +# elif defined(__OS2__) +# ifdef BUILD_SDL +# define DECLSPEC __declspec(dllexport) +# else +# define DECLSPEC +# endif # else # if defined(__GNUC__) && __GNUC__ >= 4 # define DECLSPEC __attribute__ ((visibility("default"))) @@ -74,6 +80,11 @@ #ifndef SDLCALL #if (defined(__WIN32__) || defined(__WINRT__)) && !defined(__GNUC__) #define SDLCALL __cdecl +#elif defined(__OS2__) || defined(__EMX__) +#define SDLCALL _System +# if defined (__GNUC__) && !defined(_System) +# define _System /* for old EMX/GCC compat. */ +# endif #else #define SDLCALL #endif @@ -111,7 +122,7 @@ #elif defined(_MSC_VER) || defined(__BORLANDC__) || \ defined(__DMC__) || defined(__SC__) || \ defined(__WATCOMC__) || defined(__LCC__) || \ - defined(__DECC) + defined(__DECC) || defined(__CC_ARM) #define SDL_INLINE __inline #ifndef __inline__ #define __inline__ __inline @@ -134,6 +145,16 @@ #endif #endif /* SDL_FORCE_INLINE not defined */ +#ifndef SDL_NORETURN +#if defined(__GNUC__) +#define SDL_NORETURN __attribute__((noreturn)) +#elif defined(_MSC_VER) +#define SDL_NORETURN __declspec(noreturn) +#else +#define SDL_NORETURN +#endif +#endif /* SDL_NORETURN not defined */ + /* Apparently this is needed by several Windows compilers */ #if !defined(__MACH__) #ifndef NULL diff --git a/lib/SDL2/include/close_code.h b/lib/SDL2/include/close_code.h index d908b00eb6..2a352dbb9e 100644 --- a/lib/SDL2/include/close_code.h +++ b/lib/SDL2/include/close_code.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2016 Sam Lantinga + Copyright (C) 1997-2017 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -29,7 +29,7 @@ #undef _begin_code_h /* Reset structure packing at previous byte alignment */ -#if defined(_MSC_VER) || defined(__MWERKS__) || defined(__WATCOMC__) || defined(__BORLANDC__) +#if defined(_MSC_VER) || defined(__MWERKS__) || defined(__BORLANDC__) #ifdef __BORLANDC__ #pragma nopackwarning #endif diff --git a/lib/SDL2/lib/x64/SDL2.lib b/lib/SDL2/lib/x64/SDL2.lib index fd67b32fd6769f519de04ee5db7f81c400a64697..42e5ee7d0d205716ff111f3142617a81a0e8979b 100644 GIT binary patch literal 130646 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 diff --git a/lib/SDL2/lib/x64/SDL2main.lib b/lib/SDL2/lib/x64/SDL2main.lib index a001767a42b98e7cf99b94d9ad4220446343eab8..1f409a2499d5306887d22041f9520cbb6c3a28f7 100644 GIT binary patch literal 45212 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 VGW1(f?pZ3T-wITQlvxvZ{||zK=;8nX literal 39358 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 diff --git a/lib/SDL2/lib/x64/SDL2test.lib b/lib/SDL2/lib/x64/SDL2test.lib index ef4eaad8cf90eb92197bb50e3c12a810cdffcd13..b54347ddc4cfbcdacf2110d9391ed9f60a47decf 100644 GIT binary patch literal 940792 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

Xr1GtU)WiV8> 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 diff --git a/lib/SDL2/lib/x86/SDL2.lib b/lib/SDL2/lib/x86/SDL2.lib index d24f27202cd84142790b407413ce70ad1ae46c08..a36fab5a3bed78ec4a6ad5903ab40c58054318b0 100644 GIT binary patch literal 133714 zcmeIb36xw#**;#?Ae)GYhzN)g5fKp~n*k9?G6@MJVVs#HfN1E7jcj0Yuyo z6%i3p5fK#;H{1{r5fKql5fM=l5m8YQ5&00&Pf_vzytlTumRp(5o&3)EpY!FMH`DiB z>Z$G4t?jLP?xFSe;JU-Md&xBa-$AnuoHOg7IR{Ta$mbuZA7@NI_`sRP?-RBYV#{v{ zDK8Roi))13@*yFgeY2t~t`d^yi;xlhdOtH3yx)XmvpSfGn0|<-g zGwT&ye}IrgH$qM{_Yy_dUkpBIdxS}}9q@^^A5*mLo6|AN0vx6ulquBHI4~MNb6|(KFU4x~x~of{?$Lf!=?Sq6=$668-WcitgP`NTQui z)btbl1%2ykMGJsWbULt!dOoM=Q2YhGeji1r&x0Iv2J(RDwL2(!{kf16J*MalkQHRrs!!1m*@qDDEicGLK1!QEJd%|L&$>8#9z=0do+Cxe?gyGqv-xy zg(UjJOhuobBP7wcPf)bvZNLL<1s>5f@QL=lOVJBZUx=>UQqlZ7P%fZju2VGgULlEI z{-CDy_zOC7FGa6FnurcxsOYf!gd}+`r zG=cOIoxG=_k0UNbjqjnTg>ofoBd>`%hbo%58{vT3Cny@5EhN#&k19It zVj+o6*+$W+Hwa18x=GR4r=brzwqG^ab(bLXTbUEG&qVo|yq6-dD^lrqN=mYyiO$_o z(K|21Gw5x=B|7g~MdzQ6aEKmM^d4XpbR7PIF1TFLTMreI=xy&)bncl57xZ?NTR{)u zFX*ge6dnC{A&Gj|D0<~0A&I^N8=|9kQ?%+3A&E{vxe~3qLebIZKn_}lXQH1YenfA1 zK+)a6A-Wa$M)XGH57C*Z4@B>~SrgLmKF}|b$3&ORQ}kif9iof(RrI0Tg)9j1{SfGb zS1G#WO6Y@bzFg5=2&14&@fY+;$cXw7ccSC&QuF}wl<2#6C^~Kke9$u=*E9`(L3@lT zx(RV7TC~5S#XAT|wBK2Zes+tHM7ttxL>Jzp=$;dVB)S**LbTVoqTP2BlIVHM6y3NL zzBiz6BK|}-4lB9=c}MikOB6j5aUj}jJ4HM1BP7w&uT``&WCi^Le?cpONA$@@6kQ4o zqODI;v>*6HTmMeccVC120Db3SMK3x|NTQD(qUj^}3p(~fO;6x2Xvam0R^AUh&@sJ= zUiT2%ThN5f z+T%V&&t8Up0qE0+BhhVpDH^;?NTMGcrfBsI_0>(>fNbjtyXj=vo71zopJ(KX0NqOTvR=&LsiN%XZd6@BGg^hZF~p?(m3^%zCp zyG}@=SKX-SdkgUldess|S3;NQDwHYFm)9t|Y7aaUovrB0cY+VPxM{Uy-Xke@`?ep1o%kWQk#eywPK=^JE9ler05IZ z6_V)l=PCLe(n<7r#GUAK$a|tMoS^9Q`+^Vp6VgxgAksth$38_5K8k11ACdP&e>zUl zgD793-QT9@EvKRV0o}QSq7%+Ry9N6DiHaV+Pe`JFqWp;da;c(6w-S=*pN}j0$1Oq< zJ%l(BJ+`B!_4vD9)Sh&vrakd@Pw3VZ{qJlc3%VG8L4Uu!pxU+%2}Nh&FVVDuYq z;`bopfV6>XTU}L<{M+GzsJ7Lzg5<+zAYX`fE2vgGMijKg-oOLZ5I3SN&Q>HTP82s_ zfokHog5U5&q>|5>Ez3j75n*G9)C?&w)vF z-%W}>ax3_t(T5ZbK}Pfoyo*FbyC}L1`AGDK%M|T>p^!v(BOIb%?62v3`~?jmJfamS z--3{?6`HWqSu@tWI?y!FKETCiq>2N zIq0|3HPLU-5!WbMemTMe9d)Rp#gF1U4eGyF(UG?aNwoM3MMw0&4zvI|MC*=IbbFtW zMC+hSGGzuJ|JI+${!~2CKTKlk~pCUhr zMi3^^ou?}rxfIW!AK#_uq`QSA`tgvWlh)uF^usL`{T$^-^d{5^qR%3HqDv7T(Z}vn z^o<=+UqQFutY~xx#1HhFnx=951^wvLicUNa=>z=`JfgJ-i|9vl6rH#yoML0ExJI_T*RH|IcF-m zb~e6;pa+mQME^qApxTyb7Yn);f3HQKN7Eg#>^|rxfu8ob zqNPY1(a%;WI&wAYCFrc16wSUK<2%q>Kd0y@ln2q;Z4~_k`9w6lOwk>PAJI>iDEiuC z_^yMl8B_FJ zYFodlAo<=$(B9&EvJLVbB%j`+==l$$et~{}zb54A??Lw;qv&@J30Y7Le~H#Bx)Aw7 zbnj`3dhf(I2=twu6!o2r@dD`M=PP>ZDCSFukY1u4rYU;L6_}?1?YFC<9nJ$Ebkjc+ z{Tt;=^sjvsT?9R%i~p_Y!xvzj1G?yUiY|U1_@ECzq3DB4FwOy8gm@A?=P{yHs}?Wq zJ-TmTRnLO{`F)Ff2afJr)!(yZx>&Vp+43bzVySpNiIs3*(eh3k zeY`QS4u6IaKyzelRf12NeJdBXTO$j5xt8M<8jZEh&Um9ecWlg4;%w4eKHBCi2O0=S zx2M@|435v}Irxai_}roT7=m9sI@CCY1C;BiSV6xH^B#oK(^%geY;fbgMnX(>i$|N| zTv0t6N&m#^{!@|Ikx+#RNcWW!&2h$ZX$=IVyRzO1K`qOK#o;IjRf>I$u~vJ0Zl}{| zk2hPRTqzP!Nd3r6qr9j-IyBs9bDN}??5GfooeG$nrKDul*XU&J(sHt#JKh>;4i2~ zFr5ydd&j-PQfh|pG!cQMrr|qHL?fwb_@s&7%O*zVP7F0$J?-ZDM!Un4lagvHW)fI< zk|H(~diVwuTJGH|9#zG6?-FBb)cF(bc4KthgK+wYZc2e{j~;7`7FIm6jH$!7c~P_{ zrFmhb+Db*IU@ohVc+C)^6iL1K#4VSNl@W22{_*R9E!AQ8a3c*OcjAF4eah?yD#S+4q8eRG%caC|<61#)V zNQZMtD^g$~^iGV7Em)6_i`TkxE``wBXr#0lm$Zk1TFrxw{=`0+c=&Xyv z;ap$K3(KkL(0W_L!%<+2Nnx$5H^(C##`JUsnj?+Yg!d9zRVyQl-c&LelXTD?6u=9c z!x#$idZjtp}n#`KDdqt9SBIbr=c<_(hUTptI&&}{j4w2VECk2 z{HD*W*Mx8`Y4z#Rld*KKW+)+Tq;y`r)99^_duj66TCca=Sd-9m>_QJc7knGX+o&fP z>kSPpt&fd0N7wQUJEBx44ndpa!+6B<#XaSrgnFeRZ8Qk=)-3M$vE*j4EJmXq93mZ! zM*UEItvD3w#BpTbT1jK8sQ2jQx01$IDDt`E%<`}9~%nZ5#QR#V@pcjDa{T|W%Q4?v(+}CnhZ~cgQ`FQmzO1i3pA6V z&1;ShO(rZ)FB#HCqoWj(w(};&$6KS5%%xa48KzCW(w|&T8Qo-vIuDFaSzSWT2b$^7 ziZo}VWsqX~qGwxftHos3*BETIhmL4;#wXfdGam>@x4*u=F?V>l2Tg6gJR6eEvGz@Q1j#a#k`;}$e7*;m6q6l>#EURL*BtcJIhVAQO4xpJuG0$JMy2K2MEC4B zXg=SC7d6#NQL{;JX$zy;#T~`xnH30Jm=qg&O$r5W;UdArWM^8&6ih6Ok&I3`nA339 zQT<(3!P%k@enh?Lb!e206?nRHC&pWY=$`u>d27MN z&aRj@ipxf`o!;`%F`A=_HLbwuQVyb>jdiWS>Gn;GtR8M;>Q+J;k{D#6Ok&2(}u zy*6>=l!cOo7!>g`3ne296w9LK==jR!_`2S9v(;{ndoW2cv*Q3-SM{w?MJQY@w=A;9 zsDb43>%+sV>wZr%5|KUzRb~2-i1dr`JXv_H80V4}S`^b%dU`&eG>w|yn|CipTFx!Q zZ<(=hUo*oAzl}bhhlwmz(`ezq$(RHRfo;Z0i4yv%568=uVUd+lNZ6)(lYu=~3c^T@ zU6{2KbGyZ(o$>nUV8b6-8Z$2CR*7$oF|ndRe;(?xSBsc|mIW4z>VEZP21*p@tIlUB zM$vnPlv|l`P+U`uglqFLS8Tzh+zOQ}9BG)8SW%#l28@{~QJ_yK85<{dX-cRgo?hs9c9t%a zT&kTma=blG3lED&$NYK9P(m?S+_9>22gk7#%CjdSBpdqTS}U#}2nyYXiwlN?-kX9V zw!tVFS%}b&5tIVi(tz;j)h7lq5$q zE3k;9+G=T|)2Xj*cE?G&l`e9~0Q^pT>+COtjWj}(1AX{reK zH%97X>stQoWF%rCCk=GyOhy)Xq{Tn}X|gOWM?w=Smdir1tB0;F(}7uu*6wX}LQKWd z@)h;riQxSk(LB;niN~s!w{XI_q@`0Fs(I`pG=$UNTsvC#y0v6xxJGMU8=u0#x*vB^ zWCEib<{7Ce9@nrLsS`q2v_3CY&(ip~41a`6{`dg8dtQd2_=)}lCYiYf6k~d;0 z(;(|Yd7u@j@TyX#LDuL8v<6jlxrxUnJ$l1qHO{r6_11?QFDyFi=*Pz1jcp+rRHhQfMv<-MoD^zrR(nOzk zF-^UP@?T5q>WHjAU*B+hN9u%nU#`~6~f3^rKAxSd+S^Vcz8@B z!elaM?cp*FvR2V8R*-lCJ+{-M%qTwlu`UxO^t~RS%OcZ-@GZhVg40)$Si2;6QisUb zPgh8azLLb+C83kL7drMs4yQwR5*NDRB|>K+r$4_n=FL^?)+T<& zFeYK?(ZIU;SYs%jj7>?&3d64LJ4Wp_mTx3_CJ$ivKy(>ga!}Y za7c*s@5z25$)uSv`|vZDYJKx}M7nhoqfIYB(f48S~0stEU+xtFQK& z&*G8z&CXDBtv?@VSxVj+3kE#Rj%Ja3yoC;{-yT|)k`L3Q08h|3rdkRX$wwL^NCFod zj+PGkUlT|Rj+TzJ{PjPG70X!rb01_)9FlGr>|i{?kqyU4185Rk?Bc;+Mz<`o$KJ0X zbi*;yAaoMj&?m;%%&`pDka=tyjvtG{j96Megu~ZZTL^K%(b9Iqt80)J94(y~^9l~q zf@6?3gwkQ+XzAd(P+D*dZY;(*mChPaL97c7SvSX9buLrSB!N4&FVYN>4F@9iTv&x7 ztYJ_vg;gjUcCrcmn-vd}*2h~-9!vF1VdB@CK!RtIAc=T4xXf^@bRrfL%gX(o8p@o@ z5$P!Wf@eeUW*v$Ez|qp;-ErxK)V@vlJsOJ@%UHt;CRV}hy5efBQOodv9GmpkcSgtH zJTUHMBx90JeX!*>dBt-f>G)eD>&0^+!CobvKlS3-NT!D(Fi1AoXnMJ-o(lSv(MKm71wt)2^ull@Oqr+6kwa}W-|t6G5{4(B?pVm_B=rc%>vs~2gga#G5u zslg^`pHHEvehQ}GOXvHzEM-9xfjk;vh)PbD)IUzZcx=)`-$tw1g$DPAB!px`(^84B zJvQm7NvVWpAW&h}hvqHqO?ZeKZV_8}H<)J@O~x&>Y?}I(Ea2JY(o+buZZW?RY>0xU zW0M{_bdKSmJ+_ZssK;}lIy;r1JoD+IXc1B^0X9i`Ny?a%LG% zEoc)XAYC)j!DHiiT*GV4jS85gvz&U$^M?K2He-^`66zXY$^2bOM`ch?Da5w;Fr7Tn7#;K``Fv}pLiTVG@ZBdg zgJf_wpnVTsZ{P7qqpv|Dx=6`m>sVqPcAzyexK8cL4|5}uYAa^K^Oy3^1*YC$@JuKR z(TPZ&!c!PoDaTOE6o!##?G*?(STF~&D5F<bMevwny(6NP&&TU$4N|aF?Cy$F>iem_CjBP?e+p3R>Hr0-!UYt`3WQ(TK6NPz{mZwldOJr0c zWY3cAPYSB0vh?I+sXi7;$Sr(+sF@yfs8HN^!^SuIZYoV;d$A|e5?v$m^@rt7ACpTG4TBf5hdB?20yNsbud+>~6BahueH_1=v?tkcNox^4hUVGDgmX!&uioq= z)I2un6%ohLR&j`-q|l~9OKS&`A`WPcvD-Kf8vYVoK)NUP~f9wC%yZDdSuyETZh3w9rP zT{><^j5f4#XG!~QiV6}Q zD_9h&FV$Aa%>E7av0}&Ydf&%DWwkGLSU%siRw{A6)L;Q9nH!{S1X>rPZY&?$GA(%uo6fhaB1G@ZE7W`JV5f7)inE>kEg)zsl1G+VRUN~^KhIXI@Fj|*WQC37 zb5|V0Ymea+VbUO`@Jh1BCMS+tMg=I<(xGg`JQkB(&oM_VM%ZctayUbl5R#4BMYOm$ zEHlwGCdFiD-Q12CZmsq!T_hrXT7U7%Rx?NzEP~lJF#PaL)H7Mk$H7ArZRNSg%fjcA zrv2(H!VDX_7hF4*kp*&4rK!{}Fcy=Yst4Yhon?_6JFq9>6LdLOqZcf7nr+w%M%*GP zSrz*fnS`e@mT4U7D6CHHnxP!ACreutM`JThe8`KkvN8|La=kbvEG$OhMIZU+CdFRdFtJf5e=}Ym ztd$dzjcSGmh?L5o!ZZdan1IFFu97L$^d z>ZZ80T{@U2v8IH*T;q+jRz4J}lRO^fcuJE(Lq^a^I`djB9G&Y8wn7PMo7xYVngw40 zp9{ZCOI4Eg=+q8P_@^L50a%?}2zL6~RphdOtZEQmHZ4XN*x0xwVXZW6Wh0U^wn`L+ z--4kOOtf4Gr7B5#8^cThRwoyNjpoJ!vZ@pwKAOuG9KDQJTg!^^Fg0!Zf!xARv!@h? zp##8+7tio|ACgFs!eW(*&c&fMh9>-0!b5$tYC$;aO&U0L%xgqg2wWks%~&ZB=`Y0^ zSNqg?^>(}2X!oI?j!jXiGbZwSQAl$KPoBX2EgKCf(hJg{lE)8ga&;)m1+GTnm`#iR zL=oqbR&fpq_N^zjm0%TJu}Ke`EQ38{hC|Z%t&uS-F3g|6ywwQXr{JPnra{&{6Jx{h zaT-r;$BAWRv0`HQr21&tOhHP@tf+A~3ICZ4!&_WTAMp1^2T`ud!V6{$T$*(tft*>g zNZ9!UZ}jD&VIs@*SV-!FmYA;7Ap~+}i8%P9=_vk@23gZqCQ}8yCLNSmql z`ll>~l0X~iJTgqXkObP1ix$(@vcO{Q`g(IX?4dC$CMQeU7{{bMYLO^FD$d&H1}q#c zBMX#KbOC|mkw!c-|z(us>{`D#e;-NYQ&4;taY7{Mv<5eB_r>YyhG6&_1u1VjiB4J41>cUMt19czz6Y+#9600krQMr5IQ(#k3{R zeVP=9yg-WEK83gge~;HmaVDteg$NI{2K-y^mty80q?q$*DNgvd6mNswoUQPCniO~K zi+q9omRCw~2hwugF;d(+Q;G*)j=TfybtbT0A;rSOrMT}fV7(OSI|R?OkuLD|nS*p4 zD#c~^dnIH$L-qzdPdgalf_^d!`HwO>{Tosoe}fcfyjKc=Jbc^9(C+|u0%d^T`+QuA z^T(yw|J_If{vOvtyxYhR=-dsR6YzWX7|IE{7oR4@Hm4vjPL<*&=zSXe2k^WeGzQ%R zAs>M3f(^)r^{6MHz43eI&B!OD|E{HoFVcT2(tqC5P!@>KHs>R47a(llAAdIL)H_ke z=b|p)@7`~d;@b0&2IxEpy7fJXALw%EANp1)-Us=a&^_brsB@rW&O*I88hPI<#iCb2 z_8lp9!}B4lkk%7W*7$o4p08Mj@P3ZCzXdjTBW|}MJ}BGsk>@wR4;Y}CzeHWQ1o`t} zl>5b~gC9b;psPNJ`~&}Tq-o||Qd|nU5?FioA$`Xot`DF*zl-{b-;X~NUrVI{WO5e0e&a@%JB~@s(0M@=4fSD#dAA<2Sk!9l zq&O11o4<;(`WoK1uOL6bKL*d&eNT!TUxoUPzf17rpeoU;+fhe3URM%xHl^gk$f(9Vw_-k`fd zhap{;A^dfS`vpkb36CR>KcGzL z#q&3$SbZzffp=ofLbO|u-&aRopl&>YyxalLV|ZTjE#$!h;O>IBfbMt(+KYW5108=K z-m#Cs_U9-^{Js^x9~#B;5X$iv_$J`*1-BtCe?Xnz8#;I6{R97e&_j@&y#iREL!K+e zPIy<^s9!e@p#5r~-Y>^*{5^0D()b#bA!t|VUWDiAzr|nBHAkQxL+{X|kezk48i6!AW89nyR|`1pJMFl_fk`ky1kzfVLxZQ`8+J#Z&%5bv|@!29?^l)+lW z^QX`qL0baZrTBZ-kCFc;A-(v!27kAN-Y!V@HgAIdXQ6i~^6z7)W60N=fwu#~tNjM; z0_f8}Lj4BbIBZTw*mLl_C!Y65o^16Nv=MmUPk%nbJ_z5#1Em<9iLyTc@6>d>gZR7d z#mINaE_n&c60{?9rp-Y5@b`TDy$kYzZE9l0ER;8F*1s0{z6jyZMO{Z)XX8EG;Q{FX z3w3eJnz)u|N5miL{reKU*U;boGpGy4;(d7<@Rmxk;%BHI$jh6~LcYyL`|(z!1NpoS z;(y&wP`{CvkHUTlen0j#)Q4*jzvrU@^-hr|N9eEyX&P6)k zh40|Yf%!7T4|KyBD4$m#Uk^jRz8z_R%{|argZz9D`Fi`=$QQgHkGvP}KhoLrbmTem z>;B&(uApP?M}7Jo@*A`sGr;UXnzjS#@>5Ws_CvYg z_djkzdhs6a^Dpo&LfyC+`S)S8jrjdO{C)zzmwXUm;`uS;=eM>LVnAFVzA7IQ4~yCI zSz;Hlo7h$CA$Ate6uXP3i)V=Eh-qSZZJ@TY)?e$Z?Jxc=o>5yU-Y0gi%@nglPwjs3 zd+`VHfOxU^nEa@`RNgLrD}E?`CeD@blKa7v(nMpK<{jw10~u#7c3Q{J2~pmWZWdMeV2J&*CrQ zrSd%aB7sU&+otv(`Cqw3tybHz_Aj|r?Qtn6}QO?<#WXk7kl&PF6kifoipBC`d5OG8_K5A}4stvBIeCTrvb;`SFTWwbC7)OO ztGq}4Q2t2%Ox`K~CjTOTDt{;Mlh3c+A@7yHmVcH%m!FZRi?hTV#aqP&F)rRD-XLBl z&JYvgwc=EpKV)39@CKicTif!bxYCDMS z#Vq+GF+csxK{2ZUnKXJ&zJki=gGb03*^4?g>pZ+ zyWCd1u=Y&(Z22s?W9V!4~#x3-JiL+&b{j=QmU5`U6o;=S@@@f-0gai6$X{95cN zJ}hU8_scu*73~w}i+78g#nH9Ti$}!&h#!b)a!G z{$4&Re<5#|56Q>mBXXD8-EyDWZ{=^~3u=4Uekos6TO@xa?~>21-6_5!zANsRpOjaN zYs8iEOY$oDS^0DEFLAw?E@p_OwY$Z8P(SuADCy$iwA4*&|;eUnx(Mua&3E*U6R~l}E`l^J~Y;SIOff8iN08!~U-g`@c5q|Jtzs-?m{}sJ;H!y;WQ

NZqDLJtGD_=BI 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 diff --git a/lib/SDL2/lib/x86/SDL2main.lib b/lib/SDL2/lib/x86/SDL2main.lib index 5993374cef6c4f11c239bc37bada917490e0cc2b..2080d5db5f3bec958f02a2c35c17ec69fad0dd6f 100644 GIT binary patch literal 43794 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 literal 37594 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


rmIY?Inmg1HJq!x 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
aJ_oi~WH0$L&In>q6M=B%Q0sBN69b=+afVdO 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 LQ4>7_c%T0TQI_Fz delta 215136 zcmeEP30zdw{y%qSm>Fh3W)uWL5frylL=nXmP{0ioRMgZ`gi%ozWpOK;F|8!?rHy(l zt+cGHEHzB5tfVY^t@^TFy?Um$xn)?ER+Rtm@7z1X40qhx-ur)^SBLNK{?2mGcF#HY z_xs)7{q=|LjwM}}H}mh7(4|NBu07+sJO4JKsl7|j#ID_<=$K?;OnQW|d*5*Xq^8T6 z`?n^MNj`p>h=a`idu2Y;C_n9trp*02p2f62fA$Ln)bsrutJ$S~`UeKF-}JNp)`Wjh zI{R-b^<`e%aPtIqiJ$#a5&qC{V|-gCepQ9cD1LSqA)|kcgL}z6&1k#C-mu+6yR$A|7QnaLVf=S1QfE%{5dU#KKz?m%Fvxk%^n~;6 zb^cO8)xBnimfK?Wp}bS9KFpc1E|9m3)i>fd#p(n3vnzFtoIf>^2|g)S?^hKbWYq9m z#~B*)!f}Qs&d_y1{HyNzpsH5Zha_`a^3e1_1Jlz}1|&Ocnl{lUB=vMgmxnq}6>M@A zHR;-RaPsg$!-ft>$r_ZLl#rA#%2rmMlrSK-%!ad=0qF&Ro=FMLV*iM$`^5Pg(GZb6@}&LC8b5V<$OjDW4Lox^Hzff7thWu zEXW_0TV#`i>QiNuOdVNKRFqpf&qoLqYh*=1xlM_}xAip!JMUlb-*QAnF$LD=GtyR0 zj8O$ewvvi+=ep)$JSo(_vD2|3)cI=jmHde+V+8u7(__YV&V6gIt(w>35skA)R2Qcs zDopC)To~1!HwyDN@&k|iH?I07>K8O&TIP_H^ua@ule+WHEdwK+b*&uE8^%OBpJ}}+ zD05imu#D7{!O3W?AxYhxePX_@8rbF zRYN*`r;SP-nldC~z|f&0xMWUoQi5%^tr%@jtsd8HZdIo)rIK^?^zP1|r}uEKk1x8r zaIdqVsE>1QLJ#Ns;_|8&x_==#BT5sUx0hBr-|2ax>Qt{mlC!YSd*+nn{=+jehY#sL zEZI4!Z*)*n&r(})zOB?&nv{@VTHsvRcc^pt+zMx-c}aX%hrs#HUi14n3vXQLoN-fc zXR`%K<{`IG%4NlG& zIxuxmW>$u?MOsUKJSxxv-msxVQnIoJ^#`xB)0lpv^XK$bL;8Rr=>vxj;``eLwsd|v zs43^xz+TR*+Xgyc9QZRI+$J!YABzr5s+v8xnPeK6JUDI0&;k8Z(wtA;9Tr+tGTWA) zlu%wGH(7pC9JO42)$Soi2{jm=nVFH9o|cyEoS4xn6z!Umm=rT8bENp2)1^C|^ z?an(g+EyLND3hFKKFqm*r#rvl#k_B1U@QK3^S~JA8*AEB1!Q%SoY~oX?jGT%mq(}5 zeDAd`vgN&CT)EC2PmK!4|?5lzB7i@j_8pDqozw{hKE+uI<<*cadV`X?#zDUIZHCg=#@E z`bxYY(b%ENF?qJ%B^Lso($|>ijGXrRg_d%@OdHtQc}>>}tmy~qSBoF7U}<;W-=v3g zMp19)!J_H3xHw_q#2gplIdS$xgygj^^^ZXqd&fAtgf4R#|k2@bS{D$Rbh~z9j9%{d*wWoop8a`#-MDucO2TSW0WJ&cWL+r=NNGPY3m zJXQPF_LU+pz7OM(y^RsHnguwA-xt*B%64WQ5{)h0J79~mnW3rE-eOf%(*4sk(U;h) zF=eYfZk(Zw*v8Uk_p&y@p}e-cUeEh1)itNhG;e-hYXTAMtX@BpHg?Y2H^`g2cHx~H zEY99*b6`S`IAz_QWQyg$uUaLDzCk7a7{=l~@)@ z*A}dOUG&k;$cIcaNgT>Ba9VC@v8}AEKF6?tDHZeQ+e$q+{A9SlzmmY5SDF{!)g#b( z{Gk9PjNgC4WOmW(dj^`Fy*66w#cBL+Vg8|EUAlMeE^0N&lp*QZxtJxR_s?UjF_&gb z5t{AHxqf3S>!@CgRbw||?u|b)2jJ3_RvAm*u#-F-Z6T!3Z(e%)yr}Ayf zbuD%2C3(G^HIH}HM|Dci7i4U7&$!r``IDnMjfs!ylo!=$T#u+uqXqyAqdFCr6qZaa z;nAl|p_*3mwStvv6%^+cR^;1SMRgjigh)Mk(ppUiUc6S*OzO_9S=uNMx=X**f>K*v z`PitDsY9dM52+}&MRkqq64znE;QE{f^qMfUv}8J>l}#wM725D*H9@%$KRn$K$lZwz1Dt5)n{}C>{D0m`@BG*D&UwT&@KYzZ))^hKM5> zh`x3V17ch_s3aI0j_-jn_~Ga;{!YMO8ZEfCIOaBDSlH$B)4%%N!n1~4YLun|^ zSZDI74qP`>3bo@bgqf|B(-aG1rN#LJN{Y*EbIZ{*X6w20=g*fTXtFq~Q_ga+m+EP4 z20k4#kc`e-$){|Va*o=Iqf9yPs+_yxiyOiD-KpkwDpnNgL50XrVxf`_Dry=KHDd#T zbcI1c%6Tx5au@^C=o?M=~)r| z5r^blaXg9|&7w3~6J#=x9*0F67?fz8kU)c`{ubwP3Xgy?ZLg6tj#2oxp~Q5d+kteQ zB|d8K2>8@GRARY?lWfg^s`vYBbQZ~v-+2dS{?$N+loR0yf1IGbr?2HFe@zBeTb-?Rc zD04gr;s!9#{H!E`u}EgHu6K5MBEl~k)H=RzrLL89Ki}UkFcL7UyNRI7Djh-ADqTy! z%vHK5zzP|xJxnd7jl4?_#N5bFBc`)@^Ev53=hi2iOAm7E4*%xTy?jF=g74+I968*} z7s{|fh8m9C@8yTY+3GdA$g0U(Vs%X#qdc3?FUf3V%EU}t`LvRJ=Ur7jn};ZTW&}Sg zw-iE`a$6}22m3~D-35ux(W*L493@|Y9B)&($N#OACsprj!FFSCrd$P_Z%M+F(SX5+XBPVOWV=7@u6Hbx(-&B=1~o zY~#$>Gd{ctlCDD1tWujhQ_K`b>m$z1d)jxQJgA_^IVCR-Yx1ahGi}T_*Mhi@IX~Ky z+m0HWQlONha!aS$%0-GbbeWQ}a`$zdLtnK?k2trz8ZE8o*-r;H;ag{Db6D<3QyVib&af-xi;C?h2Qaoq#J{nvKJd$$bN!qCd(N>Ly_TJ4>}A2Pp7QPS zvu|1&n`7s#om0EN9b-osv*QBSe!rmmiOjK2zqq*NztcDW{YAzCQ6h`<{Fe{2af?3f zUD~gC(aZT;af6H!{5DUm)~B%5+D*%6_`cUhw<9Q-1h_=F#?*T^CR3@Z@XnGPYXqH=Wqf{`hqXmV+y{p|bK9mhl& zfT_(QZJGSywA)*xb^6EZzddv^;cyuyE5ZL|&JzzE|NiTja{vB7mjC>lr!jVu;K$#! z;n0imYx{+aJCgp+h+!=l+aUORbT#F74#>0hyZiN5#+_@4spo{?m%X$4tGf<<@X|fE zZkYF7>NrfT_5@5<7Rj-5hP18G-J|!OU%0AQ`jeP)ZWjFfMtA>m_~^z-(?49;cx<=H z4>IPaRV7!C-{p8?)V@wuJ`1))x&RGe(ZD=W4i^v_u(W~zFVvQ=@^JbqcJ99izhtuU=UAQFxzb=aS}s9KObmrQoax zIP=S*!haO^zq7^SRUbe4{_|L*BXDbC58wRQIR38#<&ONFigO&9#>$E{})J6^ZK`1sC*$38glJfwPpA9Q=)HbWf`oqcEM=+svZ zj&H}MDdd>c>6c;eHT%ba+opFq_)!95ABzP2r+uDZvT0=0iJk*1YTxZJ6}Ju6 zR*TepapU>T?i1u$Ijge1qZs?^?Ce zPBhPbp;gJz;9ZP8Ao#hVQO7>Ee;RVji!b$fX=9^Vs~LM;1nfTZ?SYci!E=fNr7x1s z`sFbegay?i9r@b-OMTJsn)tPL-L?7u8jc;I;NN^?z%4y~999=o<^7CVJayx_l7 z@J&R&y4oFkwf%n1Yyl-b8!!0FpSO-ZF^%0AJJOaX`91Y5wsnG^e%tkv-j8Y@oVw-Y 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∓7n;xq?}vWK@Y1LTUxpXK*I_*T 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 diff --git a/shared/sdl/sdl_sound.cpp b/shared/sdl/sdl_sound.cpp index 0529ce1150..6a98a85f0a 100644 --- a/shared/sdl/sdl_sound.cpp +++ b/shared/sdl/sdl_sound.cpp @@ -30,6 +30,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include "client/snd_local.h" extern dma_t dma; +SDL_AudioDeviceID dev; qboolean snd_inited = qfalse; cvar_t *s_sdlBits; @@ -144,7 +145,7 @@ qboolean SNDDMA_Init(void) if (!s_sdlBits) { s_sdlBits = Cvar_Get("s_sdlBits", "16", CVAR_ARCHIVE_ND); - s_sdlSpeed = Cvar_Get("s_sdlSpeed", "44100", CVAR_ARCHIVE); + s_sdlSpeed = Cvar_Get("s_sdlSpeed", "0", CVAR_ARCHIVE); s_sdlChannels = Cvar_Get("s_sdlChannels", "2", CVAR_ARCHIVE_ND); s_sdlDevSamps = Cvar_Get("s_sdlDevSamps", "0", CVAR_ARCHIVE_ND); s_sdlMixSamps = Cvar_Get("s_sdlMixSamps", "0", CVAR_ARCHIVE_ND); @@ -196,9 +197,10 @@ qboolean SNDDMA_Init(void) desired.channels = (int) s_sdlChannels->value; desired.callback = SNDDMA_AudioCallback; - if (SDL_OpenAudio(&desired, &obtained) == -1) + dev = SDL_OpenAudioDevice( NULL, 0, &desired, &obtained, 0 ); + if ( !dev ) { - Com_Printf("SDL_OpenAudio() failed: %s\n", SDL_GetError()); + Com_Printf("SDL_OpenAudioDevice() failed: %s\n", SDL_GetError()); SDL_QuitSubSystem(SDL_INIT_AUDIO); return qfalse; } @@ -235,7 +237,7 @@ qboolean SNDDMA_Init(void) dma.buffer = (byte *)calloc(1, dmasize); Com_Printf("Starting SDL audio callback...\n"); - SDL_PauseAudio(0); // start callback. + SDL_PauseAudioDevice(dev, 0); // start callback. Com_Printf("SDL audio initialized.\n"); snd_inited = qtrue; @@ -260,8 +262,8 @@ SNDDMA_Shutdown void SNDDMA_Shutdown(void) { Com_Printf("Closing SDL audio device...\n"); - SDL_PauseAudio(1); - SDL_CloseAudio(); + SDL_PauseAudioDevice(dev, 1); + SDL_CloseAudioDevice(dev); SDL_QuitSubSystem(SDL_INIT_AUDIO); free(dma.buffer); dma.buffer = NULL; @@ -279,7 +281,7 @@ Send sound to device if buffer isn't really the dma buffer */ void SNDDMA_Submit(void) { - SDL_UnlockAudio(); + SDL_UnlockAudioDevice(dev); } /* @@ -289,7 +291,7 @@ SNDDMA_BeginPainting */ void SNDDMA_BeginPainting (void) { - SDL_LockAudio(); + SDL_LockAudioDevice(dev); } #ifdef USE_OPENAL @@ -311,5 +313,5 @@ void SNDDMA_Activate( qboolean activate ) S_ClearSoundBuffer(); } - SDL_PauseAudio( !activate ); + SDL_PauseAudioDevice( dev, !activate ); }

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«Vpe4eZqYEjG5hAObRW1Ox#WtQv$)L2(haYc z*@k23c2HCZw54aUEVH%Kk_{*=mYzMb@DUX~dryMZRZE`0Fq#@zqZjd|wQbFA+m;bJ zplzEsw0qmOY-V`Z(0Ef^JHq}5-{*g-<>i-N8)^{0Tb0V@myrNGx;hzW6V@`tPxo5po75H9)>d$L@I!DP z@MCZQ_&%6vn+Jk#W0txl@+|OOP~sqF;WH+(>zq*Ox`u0bXWG(q>*)3+$z!}2q+ENa zDrw5PclwxRWn-363FLoaKz?%r%cvysA2YwX0ksgVO}2fznqf-tMKj!6-CWBN2ji`M z&s8kXE-EUQ(&MEdEmNDzw0JEuC1{xzJk_EYs*)DVWu}ZS(*kSTvu$WeRvUKNj>g!j z3*Kek*jf;+8p^iol5Iz8m{)&INU3;UseMD|)i)`})Je4(t*PEwLuRWiT8q6imjsm& zTg%&-F)e|^v>OV?tPO}AC~Z`1+HPvRrRu&mKuXz-lG3K7iUvU2FJrLVH8n_Er$k&6 z^8aTp4etMIGxz^alVJHG8@6u>`S?Gq?Za*%Z`-!ikS7q?RA^fNk7%x}|CZhxJA7T) zJwqR*4(69HFnH2F8r}#fzS7{0ad<~SeWg6V!z+OLTzMr9FWReI3Wp`n_PzsiIsfIa znEz`tl$4)nufk1EGEgzMhRN+qJL+44W|NroEv`*s;_!j|cQ%R1W-{p%Ta_u>Y0RXK z_CQNuM*k#y(gXDd>ul!d^c+Hd0ZI?_3%H*!x|yEmC(MW1X6aj*kqD2r%@e?HG3VLl zAovw#iNDyF6z412?vaE_*ZFnBTW3po+_!OlXfemwA6*0-NJ zE$>ZwR?3Y%v8tV+aju)EZ1=^}G|=66tWjN-7bT6$86$9+FOUC`%Nf(7&NWA!Yr(l$ z|1;;h_n)+X(>QPwhWr4?FDg@}h=4)jN6*4STA0@*bX*QYJc+60tg@iaelb zJ9nCKPTrsNtdviTSk=zZI5(RI))ogt<7l0-rp_2XER@M8Yr7Td+qSJ&Ye8omiPaGY zXUv`+8Vey$*@ZG8Upsn#)2rX{O}V!i-gt;1`AVr~JRGzdm-85Hvl z@J?}fr$aF}0dI}NyA7&Dc~U!#-TR@K>p<^ehxa(tk;>cR@R+BQITQ3=b9lR8_A8Is zCfmKepqO((Z(oPU9Ffe=z&pg@4TBo5yipEM;yOlo%!1hNEren&2)p$Tk2wo#xbl`d zyfD;Z%3JC19)n`u3A;}@yyu|?D~~T*+mE-P4pJT?a+~)V)Pc(T+Tr!5ZhMtC0Lr9a zCKPjJ_%YbwWkdZzc_SU(1gJfg=W}?qQ2mtG;P6_Z`YP{4hbKD+`Y2Ckc#XfZg4j!W ze{y(tL75)%9)~A$y=kf^v%SWytSa_Uo~$Yw-m6gEl(*I4MSH``$nnEnz2UoP$)C&_ zchnok-XGZUHgoyVl1{EOouO=_?vJl_XJ|g&ojvJIc9?gB2f&Gle9=8$b(3iiYtw#_TS-7ueNo6iNs-J8LEz`JbzJ>XuLAF|Dx zK<4?wPuu3_!2K}4YMZx$;!ZkwaVRKdLBh8OI1rSwCguacVW5;{F%Ja~0Hv;oc^oM2 zNLw)!oNM!Iz(JUqCse%?K-L+;OKkJW;6%(TZ1ZYR++jY+nhZW^^O+~IiZQ=zo8JKQ zFu!M;KL#gZ{>nCg4~jdxlNX~w(n$T6T`Pr{36q+$K-M{Q?L*=*7V|g|w^SYg#hv+J zDOhjwWeubfv#hp@Jy~lf-@_|y^BLeQ%(6Bj@;`&(&Mn{q@Lx8619&v%jkfs-kX8Ng zzisnN;IWvc+>1Lh3fj(pGZ!Y583h@hw6lgMU4cluFp(*hBRu<{Ky*WNaP_iG zudh6K%BNo1m0+ZAF!EJ!%`PO6*+JuvOii=9*C2;Eym!;28cA~Qh|icJrT94y^4PS{vX$GH?~zbAWN{BugW-~rHFiK=Z ziJmsm?t)s`zVVrd^0znc-W{k$ULSjG@8y$&YnEqt_6tjx zf-7I`C~p2pPnTEQAJIb=8&k(O^j`Kzg2#~=B`cq8?J;&nc__mlnOq(lsKPZDXG#|3 zM~=?Oj~w4WKhomOkDN3pKk|-m&O-+gl2s&psvJ3y*?p){P;E*Dpu$QOLj6&xqoGV6 zBjXeq!l%lrt<976()3yFW0D8pnXkIdP~Y;OofrI?FE|;0e6GAt_%$v|9h0#@s`itH zCq3{Y38{=fSouJ2EWakCG7x5U1l|IEja_j|+)R~q2HTYjp^Pic?dxbH)wO(5-SSbASZCt>Lm zPXf;dPX@mLX?MetPon=b$k-(;qr+1{8BeVMCxW!g;Q%Od8Iv-y2~P)CfyaZZ!3Y=u zF9sR!gs%qA1|=QO1*Pq+hBj@lQ0dmi4)1cCG7AtA_voK!nso?6r6D*@c_{;WSp!0= ztpU}iTLa2hSp#xTV|2H|+GB%ddHE}j4f)$-O@D6Mlmu{L)bArSiLSSRIHZpfh zEP|0uY6zMGQklkJno^Fx6-G8FXT%1x*{{uECnwE<>TxMuo+wnO87-CMUkaTyC@2kZmn>5r`wb%ieXIAKhZQr(NJj! z{-nH=^i(UIrLgqjJ2mAsw$@cQ931k>!CNUJ{7<)<=UJ1=^bB6)mBKZCwsg|J1U2vd zk-Z}YslK-Vq@6sy?Z>o}_l#}eb+@Tx^wAG-dU8zLhHc|FEsNKXU>J=!i#t1PEC#XY zAOF&_BpyifwPO!h*-qv`4~N}R$Y{Q7i;3~-9wYO*;!K*__NW&c_kM65f}Ltf=CO_n zH4MrWhE3eGq)j-{&yyG0+8mRTk`;)`F3F=Pe-R|%ng}P07k2^fcD%OYb_cMo= ziunfR?aZ$Uix=uzuzkJ*2HreMca zP0p%j<7Tz?GAxrUNmGq~vo6;7lIf$(g|BF)=Ykg&p zjWvs~M*k%IQdtMVD75+4P|2kD-3&_qbt||x$lfNcytjiRG2a1>0~xP}CxLf@1t8zX z;h7+XU%&Z8J`eNVpfp*G|HCby@TFh77nHu7JyYQ`!23b=idlRggf9X`?+Wk%@Otn; za2?3^cKBXfF5i5QV162W6nxI+zXI|#9)1se43vD_41RCRrQduUa|&_i`$PA$Jqb!b zD*pBdp91AukZ*bY2HXP5H=xLKz-K|pe=$q>z5?3xlR~A-J}jH}l1-V$Nzy+0Cz_^l zGL*CmG7HIi{Z6#A!@FfOgsBMTmzM|1$}9Y(zA00DxrG6yd}G+WUzUGVpn_NClJawl z%gc+4l8W@Ogobwq_l+pg> zOLJ?xBhzl{ca56; zW3THCBeaW-z1AGLo2`{$Y^JZ@J*r8%S9KF!EeaXK$Jqrzu{Yl=?yugNuKfWmRQtvUipVdjz;QF-PP zTc+15$QYx1#IrWbA35ese*~u@f%7BN&#?pJ=XLpAMN`T3sZTjmEn%gte18P?3TeZ{@Gg=^+;a%IiRg=usT_&2C< z&6>GFuUW|emy=Bw$Of?>mqwV7h@B5fTuVYz=VxTGFjAgbEeeAoD^=GFp4)9)AP(_` zysLlg4dQg`&Jf~X$Zv;Q9gJKc!g!8o#c|3rCs8tb$MH<&_#<0s2>QlKK9YhI%b*De ztbEsVmK0)pB0%zCZsf(^D@7JcifC$NyHjHjlDf!?|JTxG`$pgRpFL;p%?yeiJ3A>N zTL^<+(_CU-B1OXQ6hs(gXk5;0f7Cbrd(WBQ|Ga%W)hRVJ+2mJZ!<*$wY}(sDP$_P< zn^r2z&1zNK()Xo~6kSLa>2KW2o7?tbT4;FNhdo1?OfBu%wk<8R^Txo1vRwJe0T8lY z^~qikva0t{RuCh3)xoNQg?FcsyQ>3h)lr8LT%FhC=CqxTreUsbI|sUO z?D0*W71OBkg=4Q1p=X63Lm={cU zkCSP3AEKRyli#0sf{`+>Zyh64<7p%>+aD>I;E&{uiInA_Hz<-f$#%=JB^P%@@|p@) z@3RwqO;h36A;UZ?&L?SdOY4y+B+$VAEtZAnRpiNS&W3&7r_Mm<2SeV7@s#OG!XlQOB!`c!nIu*SL**9TW|Hz6IP>u zN946!!eD~INx9RvPyvZ1JJ%*;x9(|F)OJ8VsBJ~qgXB)0fhH>=+k&h(_gCe}mKZJ5 zKO4Snm409aVezb#)f>`j307No`5`Zx1j_KN{0>>$)7!ZQmYxS3={Dw1x2~@}d(~%``1tCf_1bmdLt3 zo)uS$W?4CnSU-|=mMpIK!d@Q@-Y5OP@njUt@eFO!LgwTM$}cQ zUXFdIg84Y3+V*Ige|*bA&zZA-k$Rh!;aO2hD&Z28%=W3nk!_?{YplZ`$p~9zHaBJ{ zBcDtih|)V2eSw3qK9GPiY>63ZwGXoxp5+Ese%8Sl%@=u6y^paPH%Rksf5boji)Htb zDz0H#TeEptwY`IP@5g<6^HuRp?-C!K7`GL>Hvot z?odI8n&VK+p;|Ne&pbN6tWH5OnPsQO)lj9%yNTavO385Cq!r(t)>P&3WoQ*C^^U{) z0*ci*-0MasQlONa@;Oqe1E7p6AgX@8&cu7{eW)E!VqDD^zl z;Yz&$Wn4+2s~NAnouCYFH>fenliLjpZy?l2NRNRs?X#SWH7++mN!ylcErv3oS`PKH@=kN~E`WMLc^5;; z4xChLts}h^>RIKXZ?mIEb<-J7X)njPcKm;Z)?nl>f;8oS|tA7(J6CzdzDxzEhmQeGjO)?M?N3v~)qKIvmt<75i75C=m1 zmnlyq4TGd=yU)gfJ@+M(6JfHIR5m^E5#{` zxzsz5(WeZ-P_6t)R^LzXeVQ z-v*BZ=_U0<^ShuV@_XPJ;0NGM;76eN_bK=U_&K;0q)*io%U^*q&;JdWLJ9c+lwDoh zz%S489WyJ1#AF+1($={!LvZ7W5bt%Dd3GDJ$Lv%usiq^maL1x>ngTN<1P7{a8D{C-F+FFNz zq?t7YBZZwH7@Pv01?Gbff`#BuU=g?nWx5zV z0OT7zoCB7DlR-{Hho^!wK)LNg+^YeP0qekHLAmjw5RZqIlKloP8DgL{FGfP=wD!C~NL@Nn=cuo8S4o&f#`$_dq zKFBHku-vpkT@B0a8oj`?z+J%eL2jf8Uk&aG-VO3~5Pk~eewy&JAm0dK83*hI4#B%k zv~_0XOQ>`msT-b*@(m9)OZtrHUjq`e@?|KJU-uBR@-?`ZHF)89uv|Ej>5% zXiA;iJ-ZuyowH2e*i_Tt)pKfQrQW9x3!39`hU2Jmx-?WsW{h(frzmYFl7O&D+4yS=q&4%|zC?80iVE+&v3V zj@OzUHAB1$8bi^|H3M6qEGIFHH@0iCT_!eY@xpY=KWj?9*JnmPULAiBoocU_BxFF+ z&awO>{9_XpEwBCOt7}?V$^M^~(K?HXYy$&K5EiQJ+>qPwgCHW-8{3QcvA2_!wQ86P{J9)g7QdWk@ zMyy;NASd$u=Fl^0$k;qHwY7d8=lrNec14g)HQ1ja&nw1NLZ@=YR8^CDu@zd%^N{v3 z8mmBsjV+;ZqI7Hf18qOKo(Q?y?M?{0Uyv{_&UR zyd>mXQrj|B&g<{^5W+52?{?er-PX=b>2!rk*8_=CzIw?; zQkGEZdM%oij9z+?no#L-y_1%aUb;nCN=v$4NhhVHmt4lA2iIMmZe_S<2IEpR}RVcRrFr9sdOuqp@9i=noXr!M;vj4Rn9(=DS=Ym zO%gT8E)YvOvklC$gf&}#XIc4EXZQ;9{aUd-o>j7G=zphjceWAuExq4pBnba+{>dDX zX-N7*$=6$VONyUqNTfhK2QO7`WMHQfloU4k+Do;hm~B!@3fRL+NzvM%loYCal&Xee z_ZBwlpl(-6nu?p1S_XB!QY)aYR_aWswMv~2b-7X(LtU)YS}4;*T@UpFyzY7fK3J5g1SMe*PyOZ zYAcj{3wO8Pg}Oqi51}qmDi!K0{+~h79Or8MK7}uTf|o|yD;bJLpHa(g4TTyT{`=<7 z6W9C=8_lZ$vF#yusJIwBr4g@@<7SL-Glshv!`zH)S2H=*W&Yo9mSv($n&ld8mgi|| z#x%@h$dl-w;DgJUq4*yd>Ew2Q}V_s;RYeDWf(|!G-e*)%-;1XLd z`yg3K35RX-Dc}*9Pq)ph!AY3UvCZd#KFk-|=D&ium@l`@SAc%ZSKHG=NPSPYQd0OD zR=plJm9A$vrRMjNo7c1rNS8a*v<>Jbx27qTZViKy)}WW3auq6F&(BJ`(8~%S6)Iis z9n%(~mnEkpq^(GoyTY`s=w;Q|RJz>nrL9IUtJS7>^8(7G^IDtYyQswHuQ1)3lG>>$ zf9TtlU>xZcUklKihHlgu&kDJ{OU{hV<#@Je5Jk_b8~L56gg5d{@Y- z*ThsNpFOL-Ax}LkWbBzmHxGFxBzwk!{6A>>CeKPgbF*X@**`71Sx^q}#1w%YOUdmI zrQAe{GdLNfq(3qxBQi6M{U(tq{i4N6c1${Zwc34nsH^s)?#G8Y%hdEsOk@`j*(<na(PwCxZK)NFB(9sSB>KmCdGs9;ek!x3_4)|Ad{MKDk)J{_M z_Tr>{NT(Iq$?O}%Pktsp)4UY%4C&6ucT<0<=Iz;i)CTrDv+Ehv+57NQ**}`q9{-lF zJ$?O|llU#n9K&yUX13?3S3O6)3r!v7w>mLC6Rn-4ti6XHo)wSrn^?b4sGp_lJbkwdUciHB;3(W8EwM^Ro zK7T3Qx~Hc9UVlAy>Y28)4CVjpznR!DU;oEK$*S;6;q5_dYr-cd!TTWX zZViR%t$K1A*@R^Zl)M*|s<-JF-duR8%4>A=PJv=5irzU6@9$7Q)2XG(O|Q0lvb$-U z@??LDaql&#ZI z@S34sQ{E{KPj(N!q`bd5Jeek|&k-p2HhPKekzUlc0=V zF_i3{OO^F(n>QcoVdb$FtxuSy%IdTApz>HBw)I$9wDnlawe?tqwd5TpZUk`jSfRA; zQQo%>FB9{6Ecc2z4^)-|Um5f+hlqY*=3~xWEM&%84 zcw?ZBSKbtdHw|im^5#0cW+<6V6&+~L(jO;X+;9o}jvW>Bzup~Jfjidh(VH#)pKpqR;lCoBHOk0+pZ zB~Q9rTc8e6>N%)`lzItDc9C?qUW1Z-rroWrP=8SBT`1XW(%t$HY8RzGh1yxEFQIxU zCHn|cl-dR*_r-U&eunx{DH%G*UGl7aLw%)G8kCgy?pAN8kCe)QdQYi-P;V*KAL@0b z_JMj?DKFIXN@YSlqtqa%%as}e6;eueRW>P=19i1hW1!Y5H36zxsYy_Cm6F#(<|q|} zs#B^EYN1jkP|T|l=BuGDQcB(o`HNCFL!GVE?NH|_wGL{PQujbHM~B@FP!Xjbc6ghh z{;0espiWY1iz9u`pce|XH$-Qv(8d?->OYrW#5auuLUXZ{dR@QalN@n?z z{IP4%wQ$uHWBe2@cL=!{?m692?m692?m692?m692*)B&%^5kIL%<)JPDxTq{{naVChumC&=ECCmQqkEY90m?v`g&qg42E}|H$lm_2 z%sPwt8gLSLhi$$e%)=~8kRpE`oD9BYn?C`M#QcM8mic6QwD2IX92^abJs-%#iQbnZ z=A$q(rU}>D@)nT(G%V{xB0nFj#(bS^z5}eq{Df_m*(usiy|Yd9Wfwbre)v~gE^}DT znD+!lzCXAKbGB_B2QI~&Z=1`&lQGY;&2``@m`}3JE5Q|*Wy~b*T?*3bhGo`U%y)r| zX2Or!W?3m@oTGQGiToqXk{<`rmi`lzQz*jsgMY_7%Qmx9(z+BgI|^0)caXL}{F-fM zXPu1E!tA88MqvMQo6pWTb$>U?!oA2@dr|unK*o|`DLdj{19&@T8KH?;`m>ubZ??@_ zK@7GlvS<_p1e z%<`nJxc30)0k_&_*$v7VJ3Nm%Dsri-l8)zrLoi=y^KSt8*3@@NMDJ0|jGDsF+wwO- z#!2A`jC4ev`+ul=^T4`_vJd#&k}5$NpEW)0s0vjOfawfkC_v*G6MP4eHU z;d~>F?)$Zy>sv3P%*y%}ZL$&KT9gOb2tiw^+Wzo$1v?)cw8{Dw$|&f#zC~Lp-=D}@+~2yKjIE8Z7WqbzEYDc zQzLHLO4Yru)G5pOT948$OVvFuD06@{14dhEa2jl{D;QV0Xv6v-Y}7chKB#S_>Yh22 zcfhs)Mq8;Gng2q;*b35Cs!kD6A1&i+E=n^k4ZaH-HPbS6V-Ibm>QoZ7&@#TBqV!SR zmjc@j3dXrx+De1hVPoAd3*OMS(%|o~QR6IAXOUI0%`ntk%hXmG+Ddt+n$pC})W)2gf?WsLfTH7!0Bxme#ge*qnOe`Jt(5oP zD6PAUH{2*&Des(78he@A3DT|TUIUD}ds(nu+e(AK!FH;G{Y%?QgRy9XIrb^zxdde^ zUm2y|T8Y7hjoMq=|348ot<7lZY zI9c0DgO#vx^i{@v^~zStoy@xaepcH`1CG+DH<*vLT6PMH4QQSi0qlSP#=LQgaE2x) zR_F*9TRCiVkqX5D+YQP$Um@8{J<68P$OXHW=KCOW*)CDG`3lMX<0!+-wvh78S4j3> zM=5&?#J$(}Y!+0=I^-+YB+vvnIy zIiYSv`Q|Gmd-f=0Q;(y3^A(cKwswRb(WD9WZpt@bA=!HliSo@?NcN4Rl+AfA$~Rvj**A|;Hs{nR z-+YB+-!e+soWG-d^A(bP$0%iUu8{K0S4j4@QOf3+nexq7NcMxHl+8I%$~Rvj*^iD= zHs@O@-+YB+<5cme$~WhBDc^jBWIs1b*_=nFeDf8O{mW6x=A1RG|^6_SmU+M~)#&ihlo`3lMY`zU2|je+vbS4j3dqm-S3T*^0JA=yRH z14h$+a}9;^%~wcv$tY!Wo|N*uZ#6zCyBRj8gUt2&H`U6_S0Z$R1M^jCo)4ca%x_<|`yyX5`fU*;f_~ zV5vWyU6O5VTWHS6=Q;;h_2h=&#F2eoq@9QF##7i`JxO%?5Kc3z#ZDY!HZSyO0FJBA zJAB?IS6WqH@4$-w&cSZn3V?gsd%9g@P4Bu@Jodk~pRZ7-bN%bPRv$mTulvw6PV)mJ z_D#o6UwLSHv-;aDj&5-cAn-%$2YY~`*bW`T>i)jI&cXC5ob?AX-QAPx>B`~Mb)WKl z1ggQFuKq!u+4iX#*7xOlV^I<;b%MK4JaB)&|0xdZ2Ljwvu+9~2&(|TjaWMkV*wHrg zpy@*g9gIYMAH?r2n+Jg%$s0Ox*8q>IkLXmBt?vV9|?gc5}0BV=oOn`$6W)ipAG%% zhmb2aRwUr-FE9>H;{p%4kpqkcxNPasi5FjI0JhxfbXOm9qze}t@Ro!3F3sfH|4H1& z)jd6ZX*?*8%8MKm|2L&O*BSff^vprDJA)`5ES4k3c5%<$&e3pQ`narCy1LN|7Xd3aVg!?jcZ)i ztx6v_eds_h;Dtk@c+{)q@6MrbNI|OeI+XSD?%K$$x+P!Tn@i`=(7N7RY_4++E(7WB zT0c}6-__TjSKBQwP&p>M^d9dbWL0PHI+U1^NmZpu_w}sIy-W2-WBXgrAmnV6%VPW* zWP^n+C)W?U!Vy}l-#s4*jjKJ@;_jId(7MRV^)zg=cx6dpj}Q#XQ7zlZRDL^ASW?d> zJT5;{h*tM@clUT5l1+)B)p>o@N$XJ<;!Ad1-!cOOar)*~vq%i~tQzDED*03!d(i}{ ztVq8*p~)^%@mZPoByMEF!S(Cbv0nAzo*?wFa^q2c;7~x;_O9z>1;i_PKc09I59#t{ zq-I_ij%&Vu!N&*B*iOBSm)+Onw)onIZ~}z@n6r1n%-lW|e~W1(2`-?+Pte88dYlk75XH8GR6I!(;!xdBOhnsNhCxy%6haZX0gW>+=2`>Aa^UV2A z5vOpO+c<=&9sa2i4z7J%E&~UNfMd`9a{oSHJrz^pxQGRHtCjs^uC3nE6{_xv^vdel)iwx5BpKN~)f9t*iV0+g8}!aa#Wj$XJC{^`?}$ zkP6S3O`22zu-taJp|@uvpBTpiJy%uU!tXNt%*QZr$&cYVR|Ans5v@qoi0}@WX_zZv zE{C}aCJ(=?hPe^uCYT&%VEH5ZJj``4Ib0fm`3;yuFrR{%gZW#S>tX&CCi%E+2-}OW z6=Alvl?K~v;LUNDO zaxtTnlPwNLHhr}c#l|fTBAZn1@T-vQN|DXs*ZY#q@S0H2UP!itB8Ag66Rs?s9bfG< z)VZODN)8Gcn$O(fE7lG`nZY$tJ}lU{!rrxptJZL1nc@-JSQ=owg$+ZXm7QHw)*(o} zhRQSWvya?1{IB7ksOL%46C}DGKUa%;^-pAjm5%H7BMNsT?sr#hiE`OjXxNlZLsOPU zGow&mn31Tc95up}sL89Ts7r!wueSM*K05sytRLr&vSsgj1_?X|;ip@Ykn)DFvQ zIm2U*4}hI`5l?f}ZoO+7%u6u9B>b_foRy*GFI@yJ~~L$NoSKtv1Qa80;%40Cz7 zrey0F24lEp+}1Hnzu}tltz%e=hij&69WzB)rfwa>9&@;6pRHrq^$gdfw~k4}^2Wmu zH}MBGQ}2NTFZA3n?Xw8Njoa$C-ZG7w`-Y#Lc-4J37FQ4dBQx=;2UlKvFN9VP{}zr1 zj;{%ViiscNRpS#c+82MfY#+bnpKB*x+5?g11%=OMa7vn@gUs;d5zV^dhj+em@y{k+ zbOOlmj_`H@<$27B7jZWko(75ty5g$K6y{+?Q9Z1n!wQ%!-d4;GTVdY#8`6OSxlJ)& zAU6{h7AW!{!N8W^%7&G=tXqctyq`LQK)A<@C!W zZ(Ifx%3hMEKf%*vc-j;XGIlX6`F`=hgb5J*nw~<_bv*y9pQ!psiS8s&-9e~0i{NDR z{*A(zFYq_2yi2PAf%k3?x4fJ(HTuUulJQ;=>DqgRD$`1^z9^wyE~~i_S6Do!OH{+~ zy>-J+)(!u-eqwf8=I{5H)S@`mql7QeH3P7)7Pl76mL|#+#EIF5fhnp3`^4;hwYUcZ zPoV7%-vfa0w3AeS$VoR$%u28D=0V7l51MG1mQQ> zxD5Srr5iZuw{G+zRwx$79GGmOj?)qAJbkD;;iYMmRIf4n{X zyh`8;9>J*ci0a|{ho3ToIMqOHfydTQYJ(Fm>IbZFPg6a7I{M6uBcxa6g171U`m)TH z?cLQ|4eTTh+h$-=hCt0QuHSXb@4C0Djt>wheuUhoAv(+|xTcNP9jERdpTYY~(Rq05 z>Eah*i-XNDKLP-riCTT+&f%YC0r==00N_2Uf!bq>a^*Ykt=)28Nd^xN|M`vUiRjva zy!kkyQG3jBJ91O-F4PWP4zD4!ZtHP>F`1VjxGW~XJ6@LYlmT+RQ3>&;6ndqXa{u4? zCb?gVjv^OQJZVxmW~_zmVyz?EN_H&;u1w*_O&ULG(gav1;#WQ$Vdjcb7;sQO8Ol)@ ztd4EeLIrkqY}*psE{|;-@(Ue@{9^lRY#WQJCnwt3I8KBg#p+bY1ZCr$2{MkL8YgeJ zoC(`F6_)d3?DaABff&n9LwNrR+pdaZ5@J)LY~1xQM%fOJVJF0}M%ehIa45Svl!+mlP_8qV}?)OT+dnWjhKs!Pdbhp>K!nC56SQzu-k>I}5hwmF+y(exYnsHHDYw zR-RR`TVvRdVH0^cQ>I6PJbxn`JnbXcGVsYb@c`HadlYPfZH%#}#kRqi4&y0J_i5Ok z#xD%MkH0@tHl9o4nX@o>0Dm7>wkPoS5oOy2`OOhU7#s-OkCg2&*zQv{zC<9oPzRfY zsu{Ms6?Q3XcPbnA6yK(7pMi}dtuXj{Y`Ysa;e7x$sTGgJwx7qg7h(IJ;^mzLLiY}A zkt%<@o#5LFI~6vOcOq<@hzNuAG3;X4Zc?zzVOxT-8U}a5_Du!*5o{8p=U`i{U~j-C z^2$oE?yg|{u-&L^IoO0_D{R7X9c;q!d)U6B=*DA2$g_fYH3_yaD;rPEKLcBFz*F_xD>pkSB5_J*=u4%>6e_Ho#F;!(!RJJ4qR1Sxk+-b+A57+_BZ zj^^8wV37~&gKbzL=#ZCyvhksM>NEwuivM<~-aiMuApb1&g8Y-xiIen+L+|tQ&vehr z7dkIrX!5XmK1$C%TEQLLS0v7xck!(t>#YTzFRXu^7 zh-Uj?K9*t5V0{k&)?0p8Vy21Z8|`Rx0L;(8JQ(KZV4eo^$+0rQ{4^L`y6r48R~X)4ouYS z=n|M{JED)lL>-NIsuDd;^e{~HM$uz1(bGpihly4sdKo5kg@~smp;1JLHeYRuc87`c z4bgO%Q(?}6iMBPGtKpRzz6d6!t0KNjh{>U7Da`#~cEe1=TniI@L=?fC29qP~88CUi z9535MJgbPa$`SYZ9s%=dm z^TROz4D&pg|AKiw%oNK01u$_oJh%|%6quL5+!y9$FlWNt3Udz3kH92>0nQ*$(u{?bK!ms<^?cchdB)MH!ykbeml%-Vg3&0 zH(>q&=67Mf3G+6X(2~{bN^ik@5$?akd>!ULVg4EBzhM3gCbaWtA~ci#z&sr0PMGRk zBjR&1+$orSFroKHn_xnJh^~P72uz;CzZUd78;ZP%Zh(0m%$s0d5A!~l&=jJFwEJh; z{VYsqJ<)GrqCJgxFA_AP=xvzD+o%K@#*Hv1!Gw+#?E~{0Fb{?a-7J~|6M9iJALio- z#|bc*zlWkdJqu+*X8viz*=xW!e!|&nZ7Wr)Boh=Y0*p3!@L;@x4Fg77Y4BOt$`tHc zZ7WrKElU;bCctPbRg1Am7x-~EV6>I0Wm#%YWx-DYqpeiEl#BcY>}9}cD-Het8}+X; zwIoYhY49JwsDG6OoC~9^G?)k*^{=vEH*G5o(y*c32W*|U^v8UK{PR zkld?8?&L6-j65wtp1Sgx#x_O7#+()TE+zdaBwr{Gz;TO`_m%FHXL5fe*^)yk6za*T zLxQnS$lGJBJvp`g3|oe<4^8daRl5(lArFsnsZBZDMgxp__lu7m)kD9=rbX;sOdHN% z=JZ}XG}U|Xq1ZCi2O;7r4LE#CH)wrzdH?!@u!XmCW6x0k+MWY~Ol50ReS2Fr-O$wD znq3(CJ$=ahL#uI0ePw%FTT|m{u(nw1vbomYV61`Npp5OWJ!=PYn-LGQX<3%krw`#h z)AfUlm&9TE5Z*#-U)L2>1uOC7RZn*?w7#pWr>7gXs{VoA9_-8FW<6}-qOPuXu%Si5 z9_zvWt~Fprw9;$VVXIMZ?ttL2N9#|h;4Y#xHxLci4b*PUO1eaJ4gP#_L%Q| z9G2YT+O2(<&i>;uL#xj_eE2^rSFW76|3xIhB7~mXoOeuaS4>eJqd0f|sCLUkCC9E= zeeSO`fdbbKLkeVGMwwL{e1=6Ry!9cU|szVi#eMB;K&>O?P3>ya{vKL6`*wrjVr3-`SVT0-m z+p96hZ(&=YU^`%gq6{o6Fw9rO;f@o6u^f|+Edf2AYQi4OPCVIoSgv!` z2|=6ZtU#^oXx-R3P}A4nnOnGUZbk4H#zDftaH{Yse^NoI4o6uWjf*(R__78djFMsdoI-q?@HG2QxD-fk8a%bQ|h zO5T3RFSJ%Ob_cwqU^=EIBR_-j!1KpEp$YXj*b^qp##ERrb7PTr#8?_!o1|&>)-?3b z%eOhWk&+n)6FH~ysRA;Xj$l!4+FkcRp4;T3p*Q(x+)OW*Kb_|``D*A*zS3>-bw4cz6?xMgn2|Tbfl;2x z*Mk5rXTB!VS@LyX;7z{L&U`%>Ci8U`Oy;Yplf>J+O$CQ)y2JA5e0izh2u(Lz(;Xg+ zVHsetay~W(&HcT&vbH_8N?m3fHy6C7jXP4y*-O_s<~KL+u@2GBi{t4BJSaK}wB{?J z!uBqHkk|NewDx1xh+%Ev?m-n)+E{iO&SRW#F4QvSzDqbwm`m`cp|Ov{;w=3|`(AXM z6aI1){-nPLLVgkAj;TAuuO?I9nhoeqDR)~-dp6iHBiKcy2jh4GWRh}4e}7-Fbe^#y z3ab4rKg&sn3LOWQhXJ(7EDt9XOq0I;uFk%m-gPVcJBD(D>zOzSkjc-Y@+vKNFSHp@ z34;S5n{_k;cr||Xi)Bsnc1(~3jA5wJd^H8bkXy~Iwbok`kiu}uv!e1^Ewl1nWUgJ& z#i;oLJ)n)-iCW$)o$qyUV@a)FNziq8F<>Qu762I2v3Nc-+XMMPeS+yu8q)iDfF*Rz)24acGBE-C2*2Vpeo5XH z1xq#GGR^1q#bsz?P5T0NC(kjltocrj`NR)~k3Yso^qHdIbWPi#X$$8iin_Cw*P6p# zYgL8wfi^EYwY-trEIB?SErHmnvyBwYtsPRaxIsIk0&^A` zh(DAu)4+SX`qycC`aj#iB^avTrR;eIzDZ;dw!pwPTi9_1w$Z{W3~aT9RT~(N5-oM& zQ0u^J9e8~V@7(0lH#=~bz76fbs$R6N9k!2H7QG)v(+7gEckJHtPa+#U)v#RJEX(egLECx;W03#^(M$*$UDPJJ1myr(qwr8t}_BJx+hB@U8*uS5WM zmTaclz>1UxmaSRZQrDJ67)V#FVXfKhVnc^s7kxu}V{3bJb5l!Owp!DUQSkaqD~__a zG_^qA-DP)l-9=2Ve#C=ZJ%fY&gFNG`mAu%ErrY$n1E95fRw_6PZuVD$FhzeTDrehn z?5vZtyL~v;LA>!bW<5MN^a{_7aPD|sr5tbqVPqdmowovE_?#YBur6ZT z1SZ&|eIrd$=VIT^wF~Hj9XO@Ewlin?^Us67JSdD~zBdOr{2ude?Co}Ri8c?nx~F&5 z>Kw~HL;*_Jb#PuDqVFaTLh1I*{_F!P&cyu!HKd@c^Y3_jMI z8w&6jseH8MABP-Odap;o^V_z4^Jp=-fcibs{6(vr+mtNT4&)}%g<<)I4$H{pqPcfd zPhXA7B$43&tel&)oRPy(+1HzE=o}Ck+F|*>rTL%H<%nsA^T@HTelzeWM-mK#-RK?V z&K$)Q%uyKl)L@`D*ClR_$I@^k9z%>bX$YGcV5x8r_XTy@zIZmrw`*))Pr3yP)}aW= z%lVXwfNO5h9x$gs*tY>=*&J~6hh@}l)kP1cyhxjH3*4r?{HF4|D7Y0S^ZxsqmUhEu`rzAuW7(B?-BfV9=D9=jn6gef z(ilI4zBsr`)BjM@n|6@&OjFhw{^$oy&XC=sdA1ecNdZ=f=RVDIzvi*^)rR>;8fWIb z=s!jtalTV-NuU&ARW|6xJO^&_2zGD`T8w;q2r|q!HE#`}-Csjcb!)yZ#~g293_37? z5sF*(N_1I$82Iu)YuYHA#=jps{>^+3{+YO?RoqtKdLt>*bi*&`&DLEW;Bt`x8@ERs zzursSIJal&kfh@rRR@@^B`RI#V&PxrjvjMlm%oR2EYz}pqWJXquUB;bM->d0X6QQh zxN_@jWB@xH^Z3ZCu|EYoKh5&ic~l;4(0<*i4 zo*Ha~-X!DN2jNbmJ>VUl}I^tpCj1WV58Z})ZT9ovF9`;;AJP_6PI*w-n;UBG8C1QCE~|h~3Mx0}dMtwJ`vPQ4 zhK%lRJ6@w-Q-T&XdNO%1HCW`i_X#RJcRI+#ZiZo6(1JXa@gd#QgGHWuMo{Uw4+=7# zduGrww7M6qhVEl17h>l!8pB$c+U>jL2n9_PJ_0#=q13+ zw?OqLPWSvS{WbG}5JIEF)Z}Q_5;PiYk;$ldmSd@Ogq~u+6`|v zc>&{(yl6-8;Q>m``-bLq$C%hjv7-@X-L7-g*0r@|TiZGsn_3z$C_}vMSli<QZ9l zWh(1sJw(Qm2G^2ptvfl}(bm+gu8-6FGM-G*82K`$OycF1ISGS|E%RuEK!s7pmU;Nf zCTwtO5GoxO8DkctQ)5tB&nk#lQDS=Rs`4|BMq%0i?Xo+@?rNO+d!#wXskOa1PKLMi z3}LQEk5oMvil&<{`y*dm_XqOa={)yddG0-x+l*6fyZV>7445`I6_~N--(s9?b7$nq z#X|Is%3`;?EW#9fwz`9vuIEr>?g8*cE!k|NV3=l7P5`g0Z_f(YnV$hXQ{P;hvGh_V zNZ(#llWh@%&O<2+z*RT3qZ|r__Fu{YaoOg!S}RZT9dJzUG*;EYv|*M!2QE`pg~^9F zMmDcwoD(Z4mukaWM~t_z(_t-BB_PH-u@wGs2G2>Stjw{DH?W5G`nI~(Oap3@M6y+t z(Fq0cLM8Z#29Nk;>$5ExOmTHAscUW5^DMIFi7>Tf+cI^HKvrg|7S}Z{(rGx!@K-hA zR>x&+9SxZin_4)B)LPfnD04`Y6Et;bG<=%f@@cY*;x=VUKCY%dv#3>M@1BoqZfUBi ztIr}Ft&4RS_b@cAwV9S|$I?1vc2#>z3+|!p(7{$|wWp!0X~{I`RP1PNSyb6km1$P3 znB;@B(MS^$=N6<~rZwA9nXSz%!7Q5g_X9?rrEATy!ECFm!9-RY6Nu$zuY9`3rVg15 zduzumv=JB|t2W|ax{X*=j|)Htb>koov*7w&Xc%5 z#!JRtxZp*{t6ay6IMJEyUb4wC&bHt4^4jm|aGNs1c=G3`VR5jB_G`}q^5*38Bg{tM zkg%fMYyQ0p@E@$gW9M40McH%nZ$HhuzveY#c|#{UO)5A*(;XPo6_s;s&FDs43o~}E zfzfW_&ABb6ov9l%SvL;SGG}U;CVxn4(#n`dKcmjYy|J@2?;)Dk_@#6*P>_%Dl<*e^ zhiUr5HNBe#X1;TFjI;SU6X}OEDQ8_UdlHU}=_Fn0=RCk%nMc9RdNDtywK8#tA}$k( z7yK;i<&W4*bq?L3k3Nl(w zrKUCI!KX_F)tWAwN5}YBd8uHLrmKzVic}qQ%ZJG`lgHc_z&I_|y!D#bqyh1!T+lC* z2927&sQ`TiB=YCdpQPzqG`(r(DBqNSkzEwDY1(#8%e?Ia9php6mIBA0^`j_Qrumj@ zJ`)G#ALm&p-=jhE0uo+aa4?)3}v<~GxSjSYBJ>pIR_s(C5GcELPV zA69P7S~7VtSE1HF&De{u(gNe-an2mqX$Vt!fTj69u6v4n#$&28C(1b-te+H}4qEf2 zRlgi>xRBO4cG~`iX~*>3&y0_vomA!7>$f!3L#gV>EURnnsB2u3sjsURy+ySBd=d@} zmMNV;bmKz!OVJP)89xdIY+}*eai{ zA+rqnNhNd{>;+c3OefNeiL?l-C-#c-3~o#}dQAeMbR4#6E5OS(?d&2wzDT6EoJEOK zTK9S}c&$uy-66vk+%QZfc) zP8w^P*0xMboAyh_Fi9F_X)BgdjczRCnIxUcQXy1vlW}a4PRXlnYOk-xmF_y7Wt@|w z6`6)u(oDuYN!se>Om#I`LicIsoAQdxue|?kq?CwwTCk( zxUZSib?XM!>nkZ#6nq%@M-GF!@4P|1so{hnANn3-NY3ZWaG>u&#!}wvpD)4!AwiEf z3a15LQD8Ic2yh|vf8=ri%1U&jK5q>9ue`OLZU#V@0Z5ofE<^NJRi`|kEsTD@D}S|m zeZ}W@VB|j$IzZtx^Lr>qNCAYzrSUz;N<_&@b5QSHo)aC>RjfP*CGtit>q^0K=pD7k zfik_QGZjuR9`SQhDRzqABlGbo9EUG<{x`nX%|lBY97gMAI7g0a8{fx~H**~Bd?;lU z-tW%#O}%Hc2y?dB;Nb{KfF%wi%aJ#Bl7f=$Y%Pt6l z9nW~{S9TrmO!OzXLZpA~TI}{id%`uDH3}x{lm^zPV0bA4dIxFNDmUNM5IuXHa_7`K z4)OiUEzc7f83PKoLi$VX*I5dto-k4CjDyO3CZE(%?jdonKx?GjIdS8S8u53%#*0u1 z+XjJktCm2AccX%J#d0@^TL(t?HVe$-J6pjzJ=i%4b{3Dfs*yvRBpRYNZkQ*{bRQPE^B2{Ch~O$ zSLc|9^5D7;$#bL3c=#jWHsfqF9yD`JTj4Lqnje8lz2xq_+_iw#s!U^5Q*{;_E9DU& zrDKYI9OE)9A9m~!!z&G3^xzm?W#FRw#_)L0r|7ydJZtDhw~gU71}=JR43GCbiq0Ct zYYn~VsWH6Hz(p^O;U^ln=%Fz@9s`Kp8N=gwaG8sb;qm@fnS+nvjYhuAyT|Y*1DCn> z7~X8)GS42vPcm?sV~^pno-gz2FU=5Fd4>-^#?T++!)F`#OdpOFop$WTl{$8?kIN#K&1Sqg%g1p6 zsI@s$71y6be0*D`Qsy`g_2C}RVLq;*uCYBXKZpCc>`7RRYSrO9!pCt`SJ{F9W!uEh z**;#4<_rPTY>tmtaltO`xDL>amcc+p2j!KGWRPib$FbQ&L<2j`h-(jS)xKT^Yw&x7;aHR(^tgCC{gAIgLCtTpK?^592ncqR|dbGW3h z%!41J;Z=F?IkTl~ROiFz2t1n)$N62#ukqp7Am7;5TE(?$!7uXhKw-8|rLKgp*2gzz zaKVZxCv`rquCX;6&)uBp<7#o1LFLzCAKsi@Cg8^?_=*I4wt{yh;JWG2dC=|S zReNb0RVkZ2K24^%x!x>)tMp#!*Z zCK6MB&-QWcjn%TJukGuA#2Hg~s&dm%j^*>DRA#7aG&YfAn2wOn?8eccC$T|Hplr z`b^`ZSg-#?5*O?CS0-_>e*eiNF4plsmBht*{#8j_tm}U|iHr69&m?iN&i~mYF4p_6 z_HmhdlpkzMQf2pZKCX3nYfJVdUGA>&aU7dx>oxA$Je=yBb=&)SAEyowntJyIA17lC z-G+V9$F*jgGuU^AZBttAbw0ky)c@=A;OL1|+`i<)l>#9Rjr2cX&cnB$RTUCdhw3dqP#w|XLY+I{Z z-riW(rs95UVSH;x{rEuwuhcyu(DA)3L1TtqQoe3a;NziJ z+!o)Fpy5za(&Ekp&JHsf#=8>uj0*b?6Yxp}zdHf1Qt*2caOn@WCEyaTdlT>)CFi~b zd|ABj@BRc%R2s(Pfg~>5!WXf1I{YYsug|t>z4XBZ4qHsIVY5Z^K9s;?J190{qU@5j1u7i3A>p#9PtuXnp9(Lim;};x1>7e^v-D!xa_orwZXS z)$#n}(}nP;sco3RF!}%ULNxKPM$-S8LNt14#58&~f#=vprdWu7E`hgWu3r?!p@6o; z^J&i~Xe#R(GZz0s0^d~CruP%Sn84{~PnWHi68PHevW!pjvQJZA)z%WX=da}9T5IcS zOxnJhheHRc>cy|~;Mi-S;IH}c7T2HG^Kh;|zsbWHe}0<>H~yq}*Fi@-f75`8apixJ z56`q$W5+P|Sex=(TmawPl8xt2!vc5|_jtZ{OaXjzeJ0N5u?6r-QP%Z)7a!k{t*(Q* zp#}x2K9u1#(Z^+b1{VMh0sCQNE^-3|2a$lB*Z)#|U+Acc4I3Jg(>S)C@ zLRCDkH$H(^(<&;Q6B0P~JrdT530zH63vMwmb8qDdyh>pucTxh^!b>PH*(mXuoWNH$ zH7#z)v@Djr`Mde}O4Xw_qC0TL98*T3(PNg~eSCFYD|5INd*E%_?BUZauB@)B$FQfZ zY0)B_+>x;ES(qlC<5Bl@*fMNn#B)6#@cFYRa_Feb(Oy2TwLY7T%jn)d4s!=G-?C2v zF7qw>=D}HKTCz(y>{EHNUjcj#28|H#ct` z4i`^*>vD~G?xsBVNqKJUp^Vq@x)2sOyq|-cVZ26%(X98a%%l6fru%}XbJr0M%kyt( zp1W1KWp6L{u%@(Zv$yxlTJ{ZE_6+QY=UuVfcguB0^P}7SF&^Ci%Uz@Yqh)+m%P{xe z(Z6HyBOmvKnsrQ?c-SoXn&$hu<}>?XDc3!3F7(C0H#PlDn%+%^164dr)LmrU!8iso zn6}@JY3;qQX8-YbW1QXl%&;v*ERStM7|(Hf}s0Vrh$l2eh0Y6{5{chle!n!5lR=+aLsFBLqc--d_j&R?(k!$M6FSOj}V_q9yQAJfgmZ@Z>_L(?*y zxR-?O=9S*r9lM8xeuqJ>7f&_iuxVWFxgZR8ed3k!{*By=%{?iEjSDue?(LF0H0b8N z0lcJ*c!p()bHC|S+;3{&`vjW?d-_BU>C(Yw<>sCv?kE2}!f3u}s@KThH7NV5@}cNN zyfz)tgxjQt&9^`4G;ndJ=yJ3p#!0&J9x29+v@2j|KK=zXCZ7p2=}wdQzX5OR5%J_T zec3-0uPtYEoA!~kY-7xsAIZn!;NP0Zv^(TEaCc{K$YOs_$atpNVxB&{b76DD9nZ7Q6?Z(hdZf7H`P6yh zj^|L15_ddrI$zxJT3q~Ta{f?t~v$YY1}Ksy~4P=#NB1w-QrgFxG)So;_fl{ zmEvA$+^fXB%D7jHd$n=*io4gi)jHhbjx&v0t-meqSYzC3-EDD4pK-4h{qj7H% z_a@`sEbh(5eYUvIHtsMw1_!-VTj%Z32&07tUSrmP!syr-Hdp6+7#$bG%oHgL8Ps;-C8Nd^{=t;49rz~b?A7-7^TG86kI z!l=#QFxT(znFynH2NzE)sx~d;dnh6ke0IJtj4)!0;dY-y7%g+)c8^3DEqCBDUJoOT zXk!^NRu7|79GL8j2%}RS*gTykcpfw6mHiN5bh-nRy%1r9=e1)x*#{9uXE-p~0}=AQ zmzYlWKZMZ=2PS(T!l=uE>26WC)nU|QaEbj4VYJfVyuA!zw93GdzWzRjFj{SJ@g9aS z>a{Svo*zbMTA1Fu5Jqb(Oz&F=qdp7MdltfIt%d3R3SqR)!t`E+FzSzCW}iYB4Om!Q zf6ub8xc&}WnBJQZMne`B#{(Ls?= zgi&N*-X4Q6y1<7!bA4fSvB9DI*u4c|bcq8`?kfnRs}0^;6Aq)#8MwC|97fj|xVIJ@ zM%Tu0cO5v4K5yXO8gR&WlO!#@_1`f1qJi7R&bVG(XK?YlZx~%4!%z!#oA4zAORV>X z(U)VKyVe^X-?|5*tz8gm0HSiJFcEjjS?GQ}DbC-jYHQO-yp#zik+K_K)Nm*gp)_Hu71Cuq(Fxuw8Ot|lLV6r|NM)x@| zyEYp}_d9UAE*nM}l?7C|hJ?g;inrj$6=D_WGYsk0F;(Wo-CN4)mb>RLwYZyJ@ z;QTe#FnZF*IqR!o^fMpltgVK8TP+R;WIF4rVf3_*%Ue?oqo4cuSnV-+^^A{q)>6ah zSqJB@qlVFQ4$iKjhJ61m4y%HD>!)G#yo2}GPQ&O02WQt!Lq7c-%kkOk(152!PhEZ9JbJsY-XqU*^T0Yi zt2)f;m#Gis4$iJ;hS4Mk?yqHr5uUG$<@xKFVT1>W1y^tlGmNGr@p}C-jCMD;f@_yy zw1>f)HAipVGK}`j$2;Sysrfi(eDwi?^VTZEXfFfz)+xhiZv&6lD8pzU2WG}R`^K>R zwaGBr&%?Rvl6+s_&zO*f)*SrrBs@;X7KL$UX#54hm$}lOuZ(TsaPjiIZBlSY!UXWKbPx1BrDc9Kt>hHm4v)$$rh>}K1EwZ+s7w7DO|Zz|R`3%^H* z=T+;gIv*6)fZ3-2`WnmdGLy;t6rV|nFTBH!P`x}*jQjB97Si`(3*uhtv^ z<9*x)$a?@n#BB`xF<&~bcPMmcJNG4w)nVI)u+1oVmqTAy|GEu$N00_$gs?JgO2Ef; zSFRNw08eGTyQsX>fu|k#I1Mj+XF*3tUl(2!TiYX#4z&AjrX&5Fpk;hX-&eqXFvv?A z%p7687t**XXP|Rc56T47jPMeH_w`{>x1&qef{T<)(BtN@ZvAdo2-q~z_I9f^-d*6X zRlHza)jw$NIiUX~Df-pdyGGxAPT08A+7%sL>j&|+k(&EAc~%ZuBw`2N*W^1)I!kRn zPt|z7780X%*{l_YkmLO-5RJIv(0B&y56o(9`*v>y~Bfp(HhA z+Tta3X(Pi36<4*-E)CSC?6Nuat!6$ZNTo-hX|Ob5`DC`H2|4o|IbnJP8Y?GN66{t` zPQ1n&MyZlXQ}St$FGu3FU6fCjlQ1e8H+lC0H1p=ob7&^+R*2@PqvG{v$eGxhph2Ga zH05&>G%Q2#ES}>oDz8k?uq^pBg9#dz4WH)11P#lGPjh5~hT)mRP@D8AuTIb~JRphZ z^oz=e5;P2tFXy5J4a4Kh**!r6zmA&krgM3Ff(CLtn&PSDdltykxn^yscxpug4;e8& zoVv#z1^5>%aLQIVbw(kYWgv>zNy4d15;X89PtM9hG`^hl`~(g2$@42+lb~Tf`7|36 zG|VTT=8^;rNb=+youFZO=FXYTe_F2!qcENHk707_Uzkq%M_E2iGX4ycPm_#40|UhM*7kfnVFuq=Abf;b{ML*%Iu{nC zM4p+u3yPGxC3c5`H}iNwiQr>*xpHH@TGAj$D>wH$$T+z|x#Ky%BIx)c0po%e4jtt_ z^zk}v_CVS&1#z9=+Wu~>$cqEL;akvY-M3jr-WSOG?usCDs-v$+pX^+bDBJWL0K7oI z^L29vsR{|-BE-e+*+rNl>A)z_Kj)rG(s*wk7A5f+92$)8g%F*^^8=F_ZFuNX_kRWW zImcxBKG9t~eqN^#<3)e*@G?Nt@W9GNEGuU0-XP22}f8kr{E z*EV@%nz)_bElE?=jwxK05wh4UH28j#!^hR60q3hnVC-r!&xw~2MiY|_WGFXFl+f&tEt8s|NQTtT7mDF92Pbp_= z{v;_=DN{;kP2!XiMVvd<(Ed>~QvSJP4UJPBKl$9ThQ^uBT=BZ&4ULz+9&vHU9Q(b8 zGP0M~{yB56i7}dsYprcsDsxMcZZ5924s(c&rp=Nz&&6k#;Z7yh7ufW3@iNJ1)6d1B zIl)sdW^P*2(8a44iOkfkN-IfAmj;vLbqz`i{gAZu@R-W9cxm@sJi@>ur+O|=+B_Gp zCdpNsDQ%sL!>$Wl7e#-ijdO7|O{nM{ykEn}mNqU)Q;$2TO!`V2=h9RGEq+Mb=Hl8i zi?diPf=7m5+BTO4ZyjL`0Y0erjWFG&^q4ft5^IlhaWJOKWbVy_p*r#{XV!Jj+h7NI z{I;CT@A&)q)jW)|cRvk|aRIM^l=g=1@xg{pyfUulM(Cbk+7IYj^oOvC28KF7eP9=a z`#`5nk$5^+)=F#Q0Hhr;calqAFX_@z(_UY%FOFi~xn;hisX5z-r)~(Bc?ZoSRm7>U z8m_Ac>D{#Ns8ll}@jm9Xq_$cM;lyd($?5?cC9lH8+2X8lk%xmVAhmP7oqlv4A|8gJ7K&oi|yHhZ~buH4X|9@Q<1+lnBqN|?kM z%Nb$@9Z)S2~)Tn%l7<)7-;D`7)oc(_u+_ z{o+g`-Z|W5_uX}Uo95NG8uhlUTiX-_MfSw^QP((cjdyABCWAdUgEwj8vovNddWKVP zrmD1xFQJuM6Fa5OocTV&Aal9aPu5>G?~1!>aS~J2XP)DO-hnqy?OUBwowquHE}H3t zQR+&3*|3B$c1jrEk1kZWO;T6Y#_i2`)8063P~0w|4NA02*h@(m+Ec{Mo;jj>vOaUf zc8j{uEGKSLRQmJ&?03Jndj;~qwkZubWQ^P3Dw~$+hp1HjkaTize9fK9#9IHCcE!Q- zC3wz1a>)}k3sF8Xo2&YRLv{IV=ouQqOnqhlCbx{{L6HS->F@G@l|M&RSje4q-al_{FP>@U}Pd(0=eIq{fL>+X4YJGZ6v_ZXjP zX~`^a7ui~O&%;^SqHo%839pqc`eq)!#`25KnU5EKjt%&(H_PK(WB@Egr9j;P&ih zw0wATQi#2_!J%(ys>Jx5&q<=qwQ?n1E*;m#JL+1Sa3coVQ=#EkNt_^#2oQSJ_PU7w2<{im-S=(>8xH)r=M0>%y zVfwa(?;#u~ARKHHIiC>(8|ypQty<3&YXd6^HdghoUzfvzvublmhc^hTpyV`@j{6Yk z-*NEEd}9N%`ylZ4A(;2s-%B6Bbi_Ucbrza$SkR9X96w~-S%va7*x%RJGgzJftVTf; z3LMHm>lEYne#1eYG{QA5P}lUwy3zklhq7ZrrfvMjHu941fUsYxaN;d`l#N{86DkD| z5@+sRFmIw&>b|Nd!XA}OM+Q$9nDPeK&`{6X6@A=az;cFqlIf`G>%8R=L=|g`` zzk&+57xk>`8SL$9?i|F!TRA*gAhIxK%XHMCH5pvl*@Zrv^w9G%9SuFX)tGeGbpr1G z?)4ZLD0wBoTS1B^B2P1(E9e=_nK%Y%z*>6naK^eNYJjfegtiZ_`>KeFe2&X99c`=e z_5de5{7g28wmCKarT z?M1Q5dkIO5I^wT@rA)Pu#47e$aNapEoWMb3<{#MS{w9M`>%d@B@3xmU}+ zOT=&;%6uD?bt$@M2Y7vSRZiVu!24V{7GLIsb)G8gd`IrRy-#P#Im7ec%G!SmGy4LT z^OK$M92$q`zrS_Iw)(`leIDr@FZGVr+M!jF3C6`bOa9Z~H{1I6qhFp59@Jlm#F42EpJXz>gpzyMzr(ZBgVNDaqe>B zypJk(>INgHEs~tehcf^EztHBg{xI))oOnpt<6NnIS5RW%!x)DR|1ako(--r)aavE& z>)>n$Fn8TM*wdBk#Zzpi%&l_5?WDhb2GU7>3q;7FN4}r>%5a(SAk&QF!CuF284n_T z5(7aW#x$$Ib8-WR_jd37`L72%ck-p|!@C);4Y*2yt15t`AV2Rryt`+``c>0f2`<8~ zI5qPO+THJP)sPE>5{grMY4ihc-1~9ibLF7r1Px9mL${ERtL^exNE-gRl1WjVIu?H! zj{7hBaFvAGm5e?DG%w??kuxTiY?5sZG%3V=fW06H@u4Jw3v+9L2f-mtUwzJU9S8_N zMH3vp$#OyW(p<#^DQ087h7krk=c6N&sCr zU8+9P6a~}j8|Tas0OHP9&E4`d0g&RDfr9p(yFe%TCP^jrDzm>t%m5*;-nADb#ZDx zMHK{_UO1=Irq3qLMHylbFpo-e!bGr z@}}jAG#6=nuDw03H_v#~NsVhY7ioO1eH51oVdX0;o2_5BX)eC06(-%xW6wix- zLcX7A3u$~VmOxuJu4~@@VaxTV<|2*HwZGzGZRPiarITtcSEz$P8lNi-h%LRl&Hd8p zmTS7^B8|^=fXDUd^e;JSSgpB8<8vLTxJ>)=wWFSY!ur*vxk%%4ebD3De(4-kHJu2- zrJ9R0KG!tGWm4nJeZMzsxxS&fNaJ%&S6rrkO;~f_KP=aynu|0(*9^tQ9*SSZnRnl6 zx&ElRNaJ%I1W0kp_*K1eZky$rpbHvle6E>_%lNhX-VN7SuGyN4G_tPInd@H(2flQk zoPz;FucvT9@WvT0XRVwjEr&F|@3Rz_3G=T%c?T+r$%}r?MH-*$5XHqFf!|~EzjD6i z`ncvIjn8!`AjK)eb!X%6K4iIW*IcCWxeilYri}gX)pIViT(4>_()e75dt9$wGY4Iq ziPzXMK;k2f&vgVK#VJ$9?wJ4b3d=Q1bCJg9nyt7@e{s@}_bInri!~Q%d@lCJHos2$ z)0IvOd8XzfjfDCm8j{TSxk`@7!D9xB(X5)7ep+*p#`pb5#f5;X@5--rebRFMKy#7C z=b8sdafh9?N_(_EwxIWLVU=U7k9H4ohIIl~hK zf6-i|@ndnE$JPH#9jda4#Uvd$()e6ZCXmi1?uWki`ByF1VH!*tpX&tAukYSdd6MNi zQFD>T=R(8b#vsU zS`8+R&sC|oOs%~5o?~;C>rTx@8lS65ahbO6w0~?zCYunxq`64rbD?k`HB8I@=ubZU zdCO(Mq$vtIR`%u8d^BAA^tgbP1|OQpym3Jmkm3~UCR6R_OIxovJansiRF4+bCJg9I#F?%R_npfHoj`P_SRhlX~5--@fRzuHvDDYA9BwHpGl@z zy`ni3u`p$Eahzg{wB*G|F^t5WQAva1(&*sF8Muwl97 ziZmB#e6A)yY>QoT?|EA-*OxUHX?(6`#l^7zzuE;mpSD~NX)eD^&0ZD61K0DFGWpZv2f=BS{2PS=xZjOTjF&7fUcS?iF9V(6{mD( z7W^*rfTP>Y)m)_UW6|z$UEPQ48$cmngXSWQ&$Yzky8M>AQQ-{NYRyF&pKGbd)xFze zs3?YOi{>JY&$Z0s+AG>~yXE?V<|2*Hh2r9*Mzr?ado9=Pnu|0(*U28&SH5kz%5+mo8lUSlkL#bmJH=^f zXK60d_*@uDAvH`0_d34;RujTH%|#lYt3z?=<~#WAUMq$zSC8f*jn8$4;xh5Nb>_~C zEZ2pai!?r0r{Xg8{p%O+j;NauUaz@G<8!T0T*j|O^RhcE*8`f1G(K0C;xh62&!kf? zw_Ly0T%_^2x;?I$pIGpq<-!7p`bgt*p*kVuO$eXfx%ZQnYhTSp8lP*W$Mu8yFWhdq zj?-ME@wrwhE)%b_jyUfD%XNz8B8|_r+T-f}+*qfkY|>n$@ws{xmx)*RqZ@9veqE)x zNaJ&z>2d9H{$HFlyhU@7#^+k2xJT!LfTT1f}7s(OjhQ zxds%M>37C{@a@HxYo+EQjn8$K=hxvoSAN)XU8K24<8uvqT#G;Z{EsZx4VsHIKG%@P zb^5?1w_2_TG#6>W<@Ag>#q~^zyCj0($xEO7Sh8nauV`|h31Q=xi+je`wB%fn&RYxE z06IIDdqi%`O3U?c&829(x!jG4i(%n+&@rp#TdqAP2vpH{+Ri2*ic|XvI{5Cd{&u*H z`%#*UG=7S0R$RrJYsNKC-C(&kYcA6GTxTn;y*1ZspXqqma(zm3k;dmbM{$|-`&j2K z$6BuEG#6=nu5%TaDV=YAv8LK`{atgB#^*vILuwemZrtlMG$cmGq=`V{BaP2>9w2ts z@x<-rXdn&OY|TX)fi-AIa)tp45agf>SKsMlZvDLB34)U~7inbtUf<8QkzYD5JP}~U z@mfi){B)-ld`!zB4PxPx=L-}U;cU5%t-k-)$?|-mqWL}knl!o~F3>x!u=lNZ!)^T9pt(rnr~IXg>$nux--F=b zQ@?*_GUYE*G>1Z%N%>3TlpofTFHNNUR>fsf{*s2>bC&DtnoH4mDgP10Wm@bn-}sBa zTCOKFm!k1nl3~TQC;sxgwlj+?HF5uk<|2(>cPsIoJ*qd=<7ef8X-2 zWa+(1(Qv-Ol-^IprS~N*`BPGJot5HGD=t%dKezZhpRrtj)?A9lE4`mlTqa(ZKXh%{ za+T`FRnd5*_p^%2r2O7hKO8VIN86*hNF%Ayp&`lE=4vI!B-ZPP{Ns0q2YQ(1B8|xT z!iaJ{r{v7QUw%8x+QcHRvNJu5fhq-)kyC%P7qy)i7H5X|_@?D-BO8#jAvfYEYetk*#g+@?)!;=?u8M)ZIp}9yS zejQ~xLsjF*Qk{UbB_JykkaH4{PsI@W<%aOf@CEyJ=o!A-o>_I32~7}OuenGgA$%p4 zlh%-bCm_3-t|pGfG!NqXegh=i`Gj%9^EViuu*Xw#kw$!P9Z}9#lpNE8w6$LkO;UK! z@@X#8_;LRq#bs*2OT&E8(r|rAbCE`1FO29r+t=dM!T8H>%JSpU6&N{x(Ojev*lg3O zs`PPF<3`XFr;ImmRXlc@;Xz&2T%-{>=Z+}nYf8?(_{;C68FT(%c!J<+%|#kNHNFmr z9dTUr(RbP`*DIQfG(OiiJg%>9ed^zqYnE=dN#k>U)8p#<%6U#JdY0xQjn8$H;+liM z{7yZ1*0-!*cWN%uNcxnS;*dz^n?Yl>lwbUHJ_2a+Yd_6J8sB$#1};;Vn-{)uj^$da zxkw|DK0c!F-}Zd3xq97r!-Jk$bCJgP{W~64|C}%1V!7VbT%_^2zUy(-&%Yd$CZ@A> z<4PKz>w6y8rF$LVq;pPlk;dmjfRH}(@R#2M`^-XjYW(7=IzQ3~Y^n+!Lnu|0(*AEnzscd_$ym5); zdRTLjM&h-rsdjO^_D(?NCm@SGh#S+}l<(#E%kNJ!Z(3x03W6n?i!|c(dGVNII{qJ_>~0FIw?|{a&=O_=x5rjf#aTbyvg1@c60m7$9~B&Rch0|BRLM z%`}ksNTcMaQuhhCl5!pg)XI6}gI}3uMnpQDd!15i&GQumtStiJM~sh=>Y;Ijgq5E-DbFwa-Ia#uA4u8#M=j3 zIY($Yq)~EIsXMEnoS!Keii92V$0{F32$7SQ69X{Yx6&E_>$&UP(_ zG$MxuI#W>2bDo@2pItF%<=|3C^^r#8us}1hli~RVpf)_09@cc9l`~b#A&tm63O1%u zQqJ?9oa*ydykX_c)^bQAa#)}bj^(gFWzl5xMKU0BnTFrg5cGpitMvk)#iDLURL}cXkPImRi0S;#R9xhv$VL%~s2qXM0I;jpJYZ+FBMJV!2MyT#Ck< zXG5b2zouxe=!8uNTdvKTOVN0K{Yr5ezwY?Q{#z{9XEc|h@%(yOaZx*E2#>#@@e<2* ztL9QPo?ovhF5}k~GoN_fay_NF6piQCtBR{|ymn|VMdSJPYtOHq@65_szb3Mq!KY|E zzg`1$q%=HCb153nuh$iqiPz=d`+sWt4!}67v!G?rvs&Gw;o-`|9%7Y+Ff*Vj0EOYZKTSkSLZ>Y`w17dZX+g!?vyON)*c| zwov_*jMrrn#WIR56ds_=cpW%=%hR^4`y`5G6kBgjVCyA`Vj0EO-xXVL)Q7ulTc1l5 z%P6+qn!whMXj|!F8O7GypxW_D*EXGM+gc=1EThrOBBl}wmw#D)uwJ= zYTN3RD3(!d{c8eSYb1(g6kDGtwi27Pudr?XK%!VivGwT$wyu{bmQif|Te0;(u;BvR z)?*UIGK#IwCb0FUM6rxw>vP3c=gAv3v2ATK4@^8Pqu4^1sAL^ASE5)(vGoO`%sT4R zqka&wZRrxlGKwvF6)siJA0kmKqu45Alxgc*Z$F^hwvLo2mQifsmduj2&Xp*ZQEcJ< zOh=x7{DX6@wQb!bQ7og_qP>r$;`Nk7v5aC1cWydteYW&7N1p$OM6rxw3%7BWw6*!3 zl*V|AA{oUN?&);cI(5p7Q9E9HOBBl}wrEdlsdz;sie(gAxZ~4dYhBMf*W0#wB#LDe zTetwdPa z=Ol_{6kE7;w4|*MC5mMfTey?dVe9-0o;lODHFGbK$}FSU!fmA`Z7q~2mQifsE>nlC zM}Cs|+_sgJD3(!d;g-{qw)!QCWfWVu|I}e?);s%D*|tuQD3(!d&6>a#jUds(GKwwS zm+G*!NwL-uuU|_P%P6*Ri)zVuy&zF6qu9dTst#M94sUk69j{L$ie(gAxOKIpt=aU7 zgokAmTey$aVe9uxFW%I)RVPs_qu9c2ttD;cB#LDeTe!>BVXJmYVWw?sNTOIqv4z`S zOWHa`qF6?;h5KL~wlbGIxs`3}3W;JF#TIUgEotk1iDDVW);APe7Y?8Mux;yQiDDVW zR@DTy{v%N=quAO_vDH3r;W@Ugo%Ru_%rc6tITP4wk|>r@Z0)YtdVco#TiCWbB#LDe zTXQF{H7ZdoquAO*vGwAVkxy(}XGj#wD7NNJVC!0mVj0EOo{FuP&TcKYZ9ObeETh<> za{@}WU$03N%P6+?R%~7Qo$#Bst@3?Eda;aRYo7^hRY?@fD7N-hY&|lvdYNtO0EuE5 z#n$`@Y%P~4mQidiP;C9>SG#{^+gdA8ETh<3IDxIRB#LDeTl*=teiQ%b*S4)2B#LDe zTh$ZTdR(GdMzK|+*t%)#q|v32ADuU}}#>qipBGK#IH z32fagQ7og_YF2Emes}c`Y+FxD6w4^K==6?KW%*r+Vj0EOHx*m2-u=hvwyiA|h*V}7 z#TKnWEoEyTiDDVW)&YvG{^f`5VB3mH6w4^K4xGSNuSBtoVyi{5_2{*KYO`$}D^VjH^l8O4^a*!t~}m+ffVxY(*xp6_+TMQEWvOTghufKeywRmnfD|Y{e$9 zb*x0OjAARU*qUDV=1#V)^CgO96kCZ2Y~3bNETh;;Dz-X5?Y!Hz^?Qk88O2sgu{D4A znjss71El$38O2swvGu#dc4)CtTkI!LETh=UFlxGBYi&0kb+C=vQ=(Xg=1*~ewWi_7 zDUD_s#EdEdR|766&N=ZcYpx;zJimV9q8;s7kD$~{GU|+cj#1wbAT3+*Va!GyBT*!y zq7Guz4ia_bIVWFiqwbI>l2K8ujG8S`Xa6;RmyP;RqDV$XwJ~ZJiTd5?{g2zIy=bxx z56P&gc1A4~Z0)KS#*VX5-4aDIDyoA~aOP4g88Q3T1l{*c^UKdG zSdYvW+TZR--ec=2qX{`YBqQ`R!^GdOnqUNJi*c1i4@P>giL$v*N8S25db$kQ4EcjL<`+ z;AUSvt60wrme;hSZ#p_}>%o22{E&>$L#5znzIysu4>ABh{kJsz!q(F+^^gqfsiRVG zsjr>^)`Kj<&n@@Ajf`yOmJz9kWP~0n1?TzdS(X1Tp{(4jL<^~c(SDjEo>9T^hzW*wWk=PcC0ZQWX)zwpZWaBtgZQe zshMPiX39}RmS(4(A=YEIu;+ce`%i2=uSh*4BlJ*CX!q4K%zEa5PtQ|(y>zOrr-}*& z9+DAyC?|Z=(nB#NAMRzvlqi%s?H0uu<^tO?>)r*2G=0~$b%?Y@GHO{KVHA0So@u{) zAY-F0mMD@@QHL`MqWs+agG~>&QGb;vl2K8kj6#y|^YhX3kGD~~%OH@9iW+0oK@#=g zG54KjqgF~3$*8CzqtKn==k#r-p<7|*`ST@;WK`5Rqn1n5$3LcChlzShqDV$Xtx-@{ ztvh1WMr}dW4IYvanqrcoX;qT4LZLX*bS-O^8BQC!?^H)VJWQfUMh(w8Mp53O=du+u zKQ?V^+T{{OGAe34qs;vCK;u7`*{D|}ieyyO5scbZn9@>rJoHN&RYe5@56N&2Z=jNU z3*6xC2_MONsz@A9!=<-AV(aOWdPqj-p;B;xubywSo}F2Xrk!%tZMv=JBB_UDgdXzI z3BG!cVm*6HJ-78W&9e2pAoY-p&_i|9ps${zS&!M`k6u?XZ0p&P3OpW?5qc=4+kEvL z!+NSn9M4I+<-c$1Stj+6jL<_xaIvqR4Xj5l%g}O9Jc{XD2=enIsfT2Q9?J5&`RX~A z^_b~?+3d?vott`|mU>7==%MU0-B-_dSdUrLp74zTRv?&qW-b=tA{n8F9RCme^5&o8 z6g@R3r1r4&OC$b*7EJK_6@6Z2a>)HI9fZ-t-p@;G_)rDUFe3$i@Z)DH) z_8ejB$w)mUBlJ*yrndyIo|9OQS-y_`(|6izJsYJSk`a0+KkL4FPG&tjfltrnKfdBs zThD`156K8Ul%Myq^iVrUA^aN}dJ3W12RMZ_?+7|Q%O5)KVOz7dzo3!~YbG_?-|>(1 zs4IszvK})9Ur6uWZR=^2dPs)#P(-!g`|3HB^_Vru(X+Cf*?LB#9+F`_+;;xjSI=pz z#|+QgiRs<8o@=EZk`W%G@Lc7q=XBO%h9|qtup>OLNj)UPdbr;Ifv=u3SPzOBKQ*^K zgF<7L+&KpbD#@@Ot}*cf>*MD$S&x|$>aKoZrLE@>sfT1(57#WKEIpJH$n}rfIl-~c z^LwoM-{4o`-=bsFx&)WfWWIFlv?z;fC3n zJ{$F!M6rxw>xYW1Z#_EljE&mPf|pm&8g=ntY<5!=dVYVP5y=Do0z;Em0&R^jxUuA<&Hq#ksQjBG&wE z$k5x}=}olz7$jxy(#0%Og}-KryT~eWk4ViImAOmYPZ?#FxEGKA;@>vvIf-H!CAVB+ zp%4gdeAV$wZPec-ie-qcX#xI=KUFgBvptk552eXNNh%ble=gP(4Z8O7F>iml3)4-T_YKa(hyQEXksD5{Cc*6iy)`qV}}B2g@(*t%M=^^aF} zdCNwSF_*t&*MX6^S%e*6m?RiVQ?9+pvTU8~r-yz_@K8?~E6v5aEtXN>aq;eisx zGK#IAE4J31yGyri>tKmu8O7Fhj52+A{EeS(v{CCMie(gA*DJPGzcA+`8+Eosv5aEt z21acUPf>cE_Sv!f*r;Df6w4^KexcavKjde%HtGq9Vj0EOFBxT~*Iutbc!G_3OQKjt zv2~+j>(k{w4cVwogOtXot4Kz%Mg4XA{EfF>duqOonk!K(!@J>X(c|bx?Mx*XA9w;% z#;zq=J(NC$;%qN&X6w7MCX7Bk_4uh~J*#Q!C5mLGu*5wj_1waGc941w{oXM{CPveq zlPHoAdbSElL9L4F4abPtt*nPUPtSgHzc|{&V26!Fk&KGEjZu_0=(*#d@_*W>r4mIl z+-IvNncFQNqR+;?-0Phb?q{Cwq;OB~G>bwyt|%Fc+c`X2kPx1pC7Zo%hv#mIA{jLn zcQA@d6FpbezjCdOdR3xGhGW5Zk?2-zOOmXvZYqeZ|(Zby$!|Mzww?qtN;0 z=c+dj-_%C+N)*YcsJj$YVr0yb?x#r<$*8DbGm2UVdVU(-_8YdXnX;y z2#=ASX;J!1PnDF}$wR48D9%)Vn5~;V{HiCG{K~YXX;FzH8DagXl6oFtJ!bv5%Rr%Hs7-|^>IGCWj*Tiv6w4^Key7+PPJHVM8?{lQSVpn+ zlwvErA^D7rx2w{8O7GKj52$WutdM4h*Cf|Q_~gE0!;abo?{dlqMW8ssHAX53LMJ47~vGR&b5>5 zA2~eLm(h3Ua~^b%y;j^OXbg?uj&b@mHas#qFkI~G!R6a?dC&7)4|#leEpF8G&`EBM zi5JR>qqq;2zP9Jbinxq@Xs9q88pXxl`L-h6zHVD6C1BesAwgCRzI2(s^>hyo7J4j; z?W5g2hvC-v0-}SvAjiy5^>mNrdxl1|mX@wipsP9+2q%*XBbNvUTAEv$i-a1=54FtI z^?;>IgkB$ANGOrZWKyiVr@wo6I6tV$G{nN;XiiV+fwr2)prPO!Vu@rtlSw9tmr{9k$y6$u z$i_0nQ&GuCG#3n~GJy`S#$*nxY$`@Px5jujlSv1YLE#FQ{I2_a?P)zJqqunbNb}C>P z$xtkn5{Wj{y>4J=;0RSkDv$^piF6_-oIf-$?3HOsgp5co8Wtj>`7yVW=4>hw%cbKn z4##kzZ?ts^AuSUQ>tB}Gu+u@Zu*Krm_~GO=uyHTo)p`;(A~-+3S$FQVJHThVyR#>lgY~B zfwGz(RRkJip?EHf63BK2dR+KL*_@F}=h6aS94MNup~_)ktao4)Dt=kangX#8ILHe4o3*Yeb;4X_TM9XnwfY zmHZ9CTr8IjBAX4N)>e}XyhtLIGE#vx1HE}QzIB;M(nv;8CXk4#xkNOS3#ZZ|hYt+* zsleuF+{lLFdYY49)gU+eih@)inN8@agdwuN2(&BMi(*MVn~aDO=?EQM=xA~~#=2MK zO^-*Tfk-fuPA9W4JvWk48_h_jrNN|fRoRfiPY01J*np`ln8^fkAw8Xor;tA<)FwjL z&^tP?h9Y6>w3LOy(SQ+6Atlf-OjcPY5DcXwpmR5nn(u4Qg0($rGl zgfGqx5637sur5Cs;TF-1P`wciCX9q04|Fc+>`+2lA3?<(HDakiyt8A8%0gw0tQ^e- zIskLAvOztVibn&T9i6o*D-%p7RT^3$s9a^df`A!#Pv}N#@tqRMUT|hHN|)&g6n@+8eUQY&M+> z2hk=A{R*}b*)x@rv1({U$)!9XtJbD8dRaju9$}Bv<5Ag3JsMBO&~GA#)igAy=*DC; zi|#0r0bDOLoQR~7*$4&7V>cC})-4RX;Ck(5kV*+70=r=Q*hRCb8>uv__5>=OPJ}Ya zY#@%Zx=u~v#x(LqDu@;ndh6=cT-6v%MZ@tVd(rKQ=3vms#r0H3Xsu7T1r<*%$^=7E zJ)F=39m9tW7uKphi{@xB7$#2&bWO^IZq6iJr<(A9D$w2>r&BdG@L|JO(tS#SJ-N!5j1;Qq?H*0S!Y_W&Sv2Wh6Aa%5ekRX zXnkcYs9_kRu-dimGQ~Rjb(v@|nKUv2WVR@54AH1FBVs0Ps?gmVM_1FGsy5w~pcaGr zNa#+53WJ5wB<_ng(>5AN#?UYXQHzHPdQdH*t5&N=dom zSwhT=Wh{^lCR2DV3sC4|@%DD3t-UMUsz;+}iwx7vrg%IM3WXw>P%@&(w;FBnjy`aLgS<8v=>=6%-vp7RVW$= z#p8Nd$H<8zNEkOL4s;Jv?JEN&E$~2A7c1hJNuT*>rmkc#n1Jii0UjS1EVeY`-CET~ z6_K;jM70%6W$_||HaUxTy@o~xX&3>S z_AL#La5)qUI4bZq8f2jykD*+8{QwECzBI667KJV`=4u)=jiGF%;=yPlgw%6np*|EN z)2Nj{8-_8IB=S&Oe_^dCYHT!uk%YGK(Z22;5eS$UTyB*pSQbTA>!UD8p(72ECJkq46Qh zBbNCzN{o{sT;+%#hHVFXMy%$sA&hQbCKAEW4EHO9X;BztdJ8{`;;JNWG7!n8@QRSY zD}77nV}i02DrmXx)a+54Vr=#*o7V@HVoHol??8z^GkpvFN0fm|RQ3ucp9^usa4$oXSsVSKokUy?Y#$_O-I zN=9aE41Q4Nbrth?Aeo3p!s&P*_|+7sxgSAxl?M?nq14545YgEg%Uk33Xi+0Z7F`V^ z5|A!3L+|cfsOH)GX5phKWuob9DjGnsSV>hh^{aYCi)p*abcIv}*(Ef}EDg&f<91jt z7DoqGj$`W8w1FOJG876%vf%)OtQNmSIAtyq20T4dJ%#x?UFlspd!(|sive7b`B)M6 zNM(rX32DubTdYmjSyNDA>fH|b2y&SQ#82C3c}f?n0atG zb`kPsGM6}87hNkvO@&WI!v!Gu)e;Ws2w7_ikdm@{bCTiX?ELrM>Zk{R%#9r3WC@ai$% z5TjZr5Y$~JYtU!Sp?GEjYI@eB@pc|gM$!Q_F>5ehpGfPNOIAlRYcM-zV6GaY)xtC? z9e&m3fkI;q-d4?5?V9Q)S|sA(Vr9X=@Z3^dvFN0xdeMYff3AsboDl2JHL>**V*R-$ zwsu0SKi9-oPl)yB3T*R4ZZ5%;NPky|1ZwtYN~FIdB+{QLk^XLwNPnh8`a3}){h0#U zG?9l&FeTF83BqQRKT{(8ogk6^Oo{Y&f<*c=CDPvs66wzr$VC%*s033Y{hc6eF7jte zq`wm+(w`}j{!Wlcf2KtGJ3%7-nF853k%vk!CDPvs!e*mCQzHGHAd&t|iS&1ZMEWx& z(%%UZ>CY6%hKW2>f+>;yP7pR5{FxHz?*xhTXG)~M6C~1~DUtq8kVt=~K-N#>p%P4q z^ml@=S?|x3NPj0tq(4(4{hc6@{!EGVcY;LvGX=74A`g{dN~FINgv~mCrbPNXK_dN` z66x;*iS%bmq`wm+(w`}iwG(-$1XCjYogi%1`ZFcc-w6`w&y+}iCrG3}QzHGHAd&t| zfvlOxLnW9J>F)$#v&Nq(k^WAQNPnh8`a3}){h1Q!?*xhTXA0y*4)W&-oWBQzL4TgW z`Nv=2{CNWBAA5oG=LwvD+y%~`CvbjmE3U~w$7_x`)Tsw@=}5!~XR*3DoN8$>mKd3K z8uv1X=Zm}`Ym5jOBU0YjFh82f>Y+#sFQWe7UMvXj!LX?hHW5h0Qi*5`0|hF!V~oa% z#QH@!Xy$y=#X=#BP35q>B5AEhF{Q;gdVNcMJqF$!Z^w9X3}Xp-3PTqzW1+!;k(Gt+ zQ4A-KlN(*D*D%$YjpVTWImA=I4);U`hF2k+aMVzNSKBre3*$XlPmGnP=J*t*IWxI< zCW;kOWVXxlZ5V?q-H7BW%ma;MOQ7op%2a5v^gP12n@G*QY^8v;!uyiAui)BhjR19d@@uc5_y)D(2lG<1X3)CW5 zV2|lcr~m6QZHeVpn6AfKV0HNr23lzpI2(+6lExZ^GDjaVX-VTQE%u}+k|mRhX0kb~ zq*HT|J%&{pjok}IDv`#ZNbt+in1e$h;L%$v!l58CaVQ?aVEC6S7{!e8n!F>euq?yK zBx7-`F)JN*%xC7YHi_+G9@{pJmErL)R%T%pg^ErTu=04IhbNb4s2N$*^c!ihH6#OA zCY`{PaP)uGfH}QvES5;e+}`&IL%%%+-Y{eZqA`bMR3Y8ac}UJRs8yc~WsDeY3Gj@T zH6;=lrVnC~9kD!vW%Us~qhsC?bLQ@GwB{HV6^BAtEYAaF9)3eEtw*vLBocfjA1_LU z!cdE3XRIr@wHXXNCSn+QbTJx(kwheuOe876+g*cli!umn21A2^j!ZJ+4lSx!>?Xj9 zDy|3|^^e=bsA4&LDd9y0luc!$Mmmu#nZ&LPR&>-txj-Tl#Hb_Ii+y<(qxIirHnox$ zE1Kg*B8f?QclgtV@iCt05urw{Vxln)j%;hG!18abdB}vZxX2X>ONBFgqaq(cYh%N6 zXfATOY$%JZJxT*t3O(z$3vEBnsIx1mxxiprtV?Ifb8rUeK1{WyNP@y~@mR~QTIp(kjD3+FBC32LP9Xaxf z2TD=Ih_*F@hE*8DJ(zgo5p9^I1xWxo2e?rllDPBSsQynZ6|EfFkh7638A_%tNU_G!YBsQdmelvEMM9O%wNox6yhaMvLTA8UI4l zFqrRy&9$gIuyMzylZHv^R5}%n(Z&IvLf63ikI1a4!ZM8{!-k&>781ETA}*JqkQWQ1 zE~n9oy-*4jUfLaS7uwv%ruv-VSi+czVwr>*Za173-e8@Y3Ww9Nlo@*vV_%YA%#u$F zfUKCKvW}+WsBy(I&C;0#F=x|UXWDQB3uCZJ2fJ>*B<$1+L2frITuTFb$#HbWuz%@G zVxM1!J!Y=BBddqfdL|Nzx|7`Hy8eOQUaUNHb`NREbO=jRz9h}Yuy)G@Oa`zdPLC(B zaYRio+KB92YUMOXjt=EQ0J=c>2x?_3YZm*tOpoSQSsn@{u+=V{!Nxsz?aa`%1Jnkx z0{B_YFdfB)QNI9tt*&&`1K4(>=aS(B?QB&_BAXo@A0Eb= z0IiTlIi{{PEtE5-*D)6uGs1dItbcW6NXBB-74|J+Z!+-gUg&Q}q3mko{drhvXHBNn zS<^#Ko_MA8=eb{@y*T?7+R1ajLOXfxS7;|seT8;%T(8g$miY=D3g8VItNbu6?pTR9 z*1ZP#XN-M;oLg+EUpX{lE+~=fmf9dAmzqmu=&hvF(Re7A4!EJtELK_jijdQYCOs&id+apX0Q{=4@Op&?lSzjMy38p~WqfQN1ZgegU6~GvjH3?5DA893r4=kbzpu9Q;lvB8HB2q^WM|FAnkhmmOwj?Se)0 zNowW{+H^fP#L*Zq7hYn2Hll$zjnZ3B3AQ6#wBouAE29VV>HHXN#0?hKnQp`?S!|`w z=FsV*@`mN3LPYHyU~B+8p0Im49Ox{Jw=~g!S@+uf81~h}yt=|8WCUUuR@9>r+V4rOwgAch~1UNr7W z`5X0Ibg;0pdywB$#hE2Ux9Y_pMh>yzx0j`PDLJ~8j^Y5pR@A0NY*=O$yvki__Gj=y zbyZ2L=%%Y`#jhyNnlMA^pqPcg2qfakL^hMdu!%iNOM`HEI`PFUNmj#&B|^ze7^5$? zG+vcOiaPQm++qn(sW$T>#+8$aR4fw5`#OWLu6!Je`O!I&WyQ=K?j0d@*sY5_z!>=L zaGgj|gB4*o&jjP1AtkFcX2aMan#0gWA66E-deY6wObA^r42g}6V^ej$*W{DyLmVoR z9;WZi7w`zZe=qypvw3&)pRwD92k*!7Lx#>!pH!>9`Ktyy(IKl&UbiG z>gEv%#fuo!#FnnOZjO447J3e&Vg;vB;ccJ|q%95ToLeQAqGjdD>_~SH9gon}g)YWm zpe|qEgGXdhtKl|<6eRDCXc(Cj!C+?(m?(=5n z)MGU5AbH@^!d}{Iu_iBnYUTKnGLJ4Zi8CtAbEDc!QVM5?XCZf$E+>GX z(O)`CEdiM&QjX#ksH_ewT!(q6ZjulWg|8@OOd8A4h?z;i=UMpoZOB!I1#we+_=T^! z40ruO=EsJRn<#wuLgsNPS1NoIkGG_Z&?w{KIK!3bo8aHS{!6(p{tG!eRc=~@G}}+0 zG7xa5+bGzxA$O9Lord3je)$me`yq2{ROp+?FE2snEh$&ZFO+UGVnUbsm($JVm#JWG z?I-6-UpgamJIKwGvZeCh^^jW(nKz}J6%Uuby~u7HviL_2g~QJ;q;C*1J10m=oEjLQ z{OpRy0`S68h6VA*FFmS2KOA!3ld`4a@et%LgUnD8U+`G*5ao@}ha>t3PE|Zx%Fu6m zsGOrpA;^39cP75{Yh^QuwPMAZAv(xpK|jV#SG4uxYj0JgfCFeo$5xCD7RC?D53d** zEv!bRGqwU1;EE*!W8>X}A^KiKZ)U~1#`+blVg#LNT}15a9>cVCabaQQYHhK$|4f8H zdy+48*a@fPQ&y$V^Z+Ia#&D8K)n2W8S7k?vG>C{UMittc5p)DbwZD}gFjMPU+dKJS zYCVHmXz_~NXaQ$>4OP(w_OYtH)-^Tmy}}NLh+0)!kv96GMqXIGVo7Ml%7Nh(5bWw6 z>P1vTsfGD?&ZwPoJ zHb#FCxO5n#Hjw&87GoNyXJ9N3n>~xyq5&W6D)M)n!O+%&-Op7EB8C4UE)(U36^LP^ z_iI+VrUxx08jqDw9__7K&>liG2CEkEiBY3@8bv`|k%17sI8t26yVCQNZ2x0su+#2; zR?%G?9O~;?@s%{Sg_C0|#9P7GiZzQCR_k9Qewj8l+M_L8xB~y<+X^n$?xNhI!RM1N zhe~x}rKPBset~mzx7Ie9Ie-cRFKv2PI$!KB^lIBmnl>G@TsNJBhtXCRZK1k^yYmq} z)n;fjAxg9|rnR?r7}~BN^;jfPin<~lsZ?92)i5&J9BuQN~z7-R5qP9+S)L08O$#0!qFtz)~>X^Oxpz_-BwU?@nuG;y)$QYp=2A& zYAp5?*5G2-TkLW_b`!^wlvlXeIcy&>!cE#Yq;U~GTf5-bG+F}Fd==EyS{62O3Fxh@ zdS^!y2XK`Yy?0>*ml!ZUso%lM{E&2C%dK=M}3oXIxVyal|V1Uu&KqC&f!Q2 zHn_sIgqF^6u<2YO3oV`FV1uh$Z0Q>Zdl}9Val-z{MjbT*CLMByS4t0G;&Wco8dw8`L?_dwF&f=}`@aiqzw>-QCi+6~J*J$y&JiJ8~?@$k~$>Mc; zc+D1XrH5B-C0&n)mor-9*|3##c~t;M{H5X{y&cmdR*vjbMRM7thMhN7sZ6AsaZm@k zVpdV;R|O)tF2t-b2HdQAi?!O#YOq*`xmk@CYtYSFWU+?atR{;!>}J_jTEWG_&GlyB zN8BvCN;}-msGQ zVf|KzRfnxrd2L3@2-)??Iu{q`h*?=ePAQv>o*u=qWtPb!RA2{QTdnvXsqzpF3-)an zE1T=I>>Z`@a(bI1`bVqG2zt|&(qmL!n%rjADH~MY63mXJsS-EamSg?+T&pF;bS} ze&XVCy>2#*=c`P#uUXMsr95|m%4{{-J6bcfR>g9m%5KA9tF3xF@MihANEJY*)Jl|# zT`W{dmeYT#^0*-q*~<*|B`%3pi|1`f2QS5wnJX2W}W3v~>ho z%v5!=Du#Gb#{dTLcDuU_)-4_x?pX*SQ_-y+AyO1<)kB7*=r)fGD-uGcGjI0@wd+Bv z&vA!`OGg~E;RVL7(|+ZV(XIS*r-v7`cz1btA&d8G56`YB?)LEPu-xO}MXYRduZOn` zg}|&J?(=X(>uFXo_j~z9E3JyR`bEF-NTe{bU=^1KJnU$zp`!w^oc*9j0_SrZt(1GM zeD;t>2Im^uVrF&rut#hOy36P;q=M)z?kRKHBOWOza|)Wy`K?EgMoKbP)F1WmV><5E zG2xGS*dhm+^~B>IzTR$CUr%_L#x-!}9F!{6ty}xFcn$dCE^l z?Oi|ZC!&YLRx9$1p8)EBc9hF@OX~N2QdT$IEaA`kNy*;4Df661hPvW7YQ@nX|AR+H zM9Qpg{^-v~&Tj3r65&rCp&$-@fq{oG<^C5ud|BOEUiq^}B4#YZs5w{4 zR;%%nDwPVgx2CKT{<4eN7K=OHx?XW{(Ry3;&HuT0ION4L`B#sffdn9oGMKZ0oCflsyw2dkgPBp<%7o)>lo#5T#@pdDv%#6I3MGT#cnY2L_AJ))+V${u{!$zyGy2>6%OF5z zbFqUeVI=5X$Yk!QGTU%4mHmpflgh*^v_1B)vxjF7Z|&mZQJHHsXo5mBJCnQmh(z%6 zVyQm+{lFnWjfEz5Yb+D z$;YL)uOG={@yYa=vjKvi8tYxZ%)nCE!Sn<~(`czgKh|@U;j^;r56_=F|M|0DzAb*W zcHgo$rf;ojX{J9qW!ZmrEgx+!yj1qZ)yEVc#xy$@XXggJ#+odFCv^+V^CRk$Jkl_ z_&B*$VBgnn%wKR~tOm<(n10{G_r7%Gr^o$#pQp9oei}afy9g)K>l==W6n=8V@t^!_ z%fKDIOMkCve`flJm;5pOjrX70`^~8&IMy#zmX)9W#BMw7y=CUe-CuqG(2KS@1519GUVq7= z*0m>mv~b4r{RjVY(G_oL+KWQI_1XjOJbdP|yRKaP;yo*GyHV5j!5WXsvcH`E!(#5% z>(;Cp_+i^^T}w_wwq*L-`<-;{+<900^nh14eeHth;#kjd7tr8|@P*I3c)*-(W_@} ze-^^Y^b^mW-xs;`AM+16_22t+ zUw!=ek9TQj2)p>;HWTtO7^hxt0-#+Nn6z6^y8Ob%v-iaE zC*0v&S+?~xt1s{V*7YC1xNiO8s+PSU*0hyOzk2D)-L7moddtjdPi#{0+(*bi*D(Fy zGyV`-@J#K0UV7n#x2|sd3)UaK%k-qN+b(~6Z0UEey5yCEmv;RNl|ducfK`^=JFTp` z;@J<9PtUydXVu5u{~#`ZWcqD)eR2G*Ymfirtf6zx-TCTgu0pyqy{^CdALnQP@p$Cq zeT$1Wo`Jl-#}=fgt#8W%FZlekC6|0qK5d)hUU?kLkC=YT1$R9E#36Uj?~T|0@}-v# zU5IPFnf}++A1!|NseSkQ?W+guGv&nkV^Q9>Bt0wtQz$-r#zl9&eCwf4MPK;rO#-zxemu zyzuT@L_YiBjq!m4^jkD-SNNi`?8Hy1kAD6~mH*s+y9eJnWuH?H$A!;K|L%4l{j+h) zpY@kNv)$aEUsUsRO}m!q`}`(8<@0ZDxbTWy&wOif_t7y;`+(`Eo_x`#`h{m*fAJx= z|M|5CFU@P(fvA})%Ray6s@vkHkB0XB=ZY;_u5R8-(@tRe_s`uA;!LLRaq2a5>(^{{$SWuQ;NxVnZ9x9g+ukh8$SJc@y<;iSo`iLsPCD6^GhSm z%llrP_W9pFGR~a0Y)I4gM_pf8cI90Ck;B*M-M1fo%@3Q7f8=~kJD%xB{B8c0M}NMo zcI`=(hrfK!HK-pRWqQwG#jJZ@zE0cc0Ao7*+7k7TYncMn{%&h&LHJFZ`!zAijtv#rLzbK8wqYufuv z-~5Ji9@*G_@~uxSI_Lc-o|=mCwRjfkpS#V2Q?^|8gO6hR{onlcc}FZmIGO%@YSSeT z%&$KwvwbnL`jl6XLpfr4({-mGdgYN{Y`OK34}JUYFE&YQ+P3gfWm)j8LUPN(nseT~ z;@$;MCQpa#!Aw8#!UJbqeel$8PmkXF(Blv6y&Tt=GkwYJO@;C)+m45hTXIqEm&wNL?ALmDsSqy?>vJp)8?x4@;Vw_C zd#l0`CD!7wHP$Mg6>GYC^L=B`qb>*g%3&H9;?PV|3oXIJs@Z?pk zb*P$L^!PBG$@^OD5g+ZHeAI@&wx}UYbn?KY^AR6#Jo$)?eQgoL^`U&G!lYw1Lbupa z;!m=`79CNWq^gmxPgVEVrz-DIHM#P}D|&}|8z%4cb&fDi(&-LOlZzcL-0B;ks&aB_ zaA#_f?lYT|qLuko1H)aDt^xS`jLEB^Msl@0K50_XB1OW@U2FM}jLBEt#eUkwJ?T)5 z6xM!S?QIX%9AowTq=SU}Q0da}N$cTKJ3z;^e+}M7hhnk;nk-)Q*Th9slh!qab6zH` zWUSbWMck8CL;Ja)WRmqE0)rmtqyxjbX0#h8*-%Y3$uRYd7GyYcwXUt{?9tllKtsW1e(a@P;=s`AYwA9MCiApm5ohJFh0&osnm8PCiU@4Cth_ zAQujFPrkxt2lb5h)YVQpM3$Q;TeB5=aiZ*`gCk;A7#jK-Iu6zj_eqCp2)7fho3s`l zj=>?G`N{RIxf42qxvsvip%wVL21Um5#nnS2lXej&KZd`CMawj~H<_`o$JeMAaqjA* zqc$YYKv`Lsd`6PzGfg^3xY}&Emu_a8v?flsJ~WJz)LTZ{79X4>fC@S zar+mT(P4J%*!u~0-&}}dv>coKLimfZc6`I^CU5J$4xjZ}B_=2ACyTE%QXa*>gD@>3 zAIyWd(-^VNyBx99Y3oW-@ACx8z@0g>8r&k-*)riuoF`4En&PhVUBRV*hoRl%;^e5F z(E${H@V5iM3dlI~k)(3|9oy0{-T6K^n8CIl3U3qqN^zPmsnwdcf#T4B&%N-88PN?C zpZ)PkGVl>x4k`XNL%ZLiJ!H}Fg-@)YPkKmSxkgsRx9RwX*%HvoW>3*(m;I*9m2hoH zxhh0+;~&3z+MU*pgg=dfsh#lr_%2@{b5KI_2dD1F`;fk*{owm1WbO%^Nc{-DiPUe! zH}XP-hM9EEk`-DHzU|Gle*DGEEV%3Omtt9=ZNT3>_}dBiJBPoKC*H%q8}YB%m50s( zZ9Dwih<~j}Mfs?CDAb?tIgB$B#lz?M|C^C0A5mP*hr&$x2s6O!7ouaPegkIRs4Q&Q z7oTx_Ch(cV=O8{Y1GZrppPl$zi_dm^Vzx}{z~{-5Pd*?%d3-1Q6Zww5&CnjQXphQo zWL=y@!e8)b0se`6C%#dN?8daR?aH<7%I+_#L`Ke0A?wxT=3`MvtM=SuY|q72dyJt< zNzI+^%AOO}D^z%?UZG;jx!0~&lAfw;KPFrE(TI<4bBNs)Hz!|63g-Y9Wf5`B1nh_n?BJ zT81CYe{Z0$_TrP$4l&%2!Y9JMfy&@v_@sCY;*)$(i+>__(6<@dwHEDq`Ay^wvSmJG zOXLpmjdBOoj;NJ(nxgH5T8W)eclXI$cZk3DQQ0NQ3eN2aHolqV8KKnzF0W&jogX+% zYxjB`N0i|fXKonU#)pQwN7u9WCCL4OVoeqK`=C4PakAmA#}U&F1RujEg|~=L3d1-) z$zwYH36IgY8QMCF_HFrXh8Et))o6GlJ3v;dq0?rS87DkEKJ^XAY5WJPCuChnUKZY= zhB1zR6A=(QxheRkIlZB6v@Y2blI83rpPE9o~C zV@Lu!rLtVgL(kUaX%qpLqfgR0Rmx41a=U8fTW_&#If^npeHwiivf~5T>Hpq=+O%zv zHq)jmt{7k3{gsP+YvYHlTe#aS-94aB_IrPML;t z#5la0S>c$rEnGE+*>bgHJ1?3Hu%0co@@)fPQoK><-lN|muHRG)oqSXS%I_-I@7-L# zDc&ajX6YCDjiZsUW_27(G~a)Z{Iey(ENFdjk)Um5(FU3*-XvFP)37vE&}P~+3rpQY zp>M#lv9%>PZt2^`rdj%C*)-O-E7A-3ao)C|Pxtj>+15x;Z42<}AEgO>(qRtU;gj;v z_V}bcHw|e=99u@yc9b$ZNg1-Iq#LaUri8;MQjXIp03GBGchpMv2X|Dw~Fc6=}GegNB4)xj7D+ zsc&}&&D1y7rXgX4zC9c?Q{OxXjr5u6x+mzB=BjJO&mvuS0pCnl`cCP(H$Ev{_rWKn zt63(AZ>MdUHebpuaLK9q%C!BYT(y*2s7<9jK-tRiP<0^ITz6PsMOmggt`=Ccj;oV; zc9dm~(py6#O=XC_(<=tqfPpCukToB9>y_On4))5aocW1o^?G{E8^N|DLnmAXzFmTo223BLFPr4PC~K;yeNw({CY*KBbaY z<5T{bje3FFD*8?OsB=u;NiW%;6pMgHdZQBWtgj)6dO+k?!qUTG;%`&5gv3(Eo$NWW z=p!g~KYDA*Z*-uoI8#`>`pdN(^x9z+zs)kCh6R3AWX12hc66qXwe3k>E2O6@tZut^tr-_mcG^i5Uyh)JKJ(xWDQGnF1Q>6@$cxJlna zr6)}KmMT4I(zjCSDU&Ypz7_toNuR08XH5FmDm`n`w^8XilRitOA7s+ERq3rJeYQ$( zGwIu@^mdcJy-M#e={uMWrt{>AR}*8k7DFm0oMo zt5kZON#9MS*PHY?D!sv^@2=7tP5NAwzR0BSq0+f;L*-(gN^dsh_f+ZCCVelJE)Eeu zeMh?XR(S?;S*kJzSR0eN{efE@z$dRl3*^EHMjIp4iVSc?(sZJiM^cEML`uQXuaM2e@y6&P=ACTmOE_$=1hg@_V zeZ}%&H@!yC4L2QqN75fr>CO|cm>*U7j^nOG_+lzw9CjtsGp_RFSyuv=PGG5-fk~;nFiwxb;VOccR(W*(6^B2g(yha<$W~V6aXB)}NKWPPxmScaNTu_ZPolS~ zbZqk!;c8Rq%4t`GYghR=Nki_9mp<(9@U0#89KR)AK5v^R-Ag?@KH-XS%RD@BycOX( zJ-iyOSC)I|wM;+QL$71{3J<-W>EH6u8<>8Ghu+BaE)RVX(+~B~o0#71p*J&qrH5Y4 z^d1jgRy{HedR0Exmv*Hp(mAinI8U`=fA^_;aVUq>ze?pH56I>~^7~aj9caZm2i$bL zn^O9%cGDXK{V+Ej@2Dg{=%z0c^dUFBNzjMg^kzXXxahUAP8xC3Wu0`mn=b35Q8!)2 zcg#(f@hz%!^ROz8+qlZ(ld34rYg9U)QbqK&DqU{&7iqlC#iO$Z2(wwJ|bPArqW3sjzYU>TR=3ss(d8kfXgr1I&oGR9r(qN63^^8Ztn z?l`4P#NiSbpU)_hwk}n9;)pWIyI$p?JXc%qQaAYUs%5|C7b?%^crp>LU#fDR!^tS! zZd7HIgUN`0lRw`)l#Km$vnqpl*e8;aj$1r@?(T`x$fPfB^~jj7UIwSZZ63b$>Sev( z-0qQ~S4H8AJ3Ku5HIu^lD-U01yLWo%L8jm3p@*3MYY#ol^t(ND5wCkZ^a#t}>!H(0 zVU&JL6IpYh{cM~4aD{@zcj=_2}HRk}D8Oxk(X#dF$u&BZhAyzZi# zcKnV4Bl{(f0h3`Uc?y{1mplYa@=KlpCix|g0F(R)P5|Tb;B)*J)BVo=qWG3R_e-Q- zsZ+lQTk^y&8P*a9esOq8oc6`M(no!XFqJsyi?O9o`4ZTP&iJA@O?x(Z9fEu=Es&`ev2g9%mb~&{Gs`i=Mev+%tt!!&%h9gA^Njrti{RW zyEQnRQ#?GrSc7@x9v57ZVI|tgTvwUm*nxa8iaHD zOY-yd%229z4x&y^h>8R$`D%D1oF&L>T4#Ta?ThVtzL9zJwf z{EF>od+v%sIOw7qD;yQu&-0U6#>H6rrDFRf9vRqi>FM*6QT0r8VUB65YJ%HxESU+e z%CTf7xF^SwS>y>bT7)k3Gses*E@Oln0$Mol9zJ z-T8uOqE4>Z5bx|*;^q_0-~LXd%5DjsQ2Gj`WK%2&1mo>+M30Xx*U@bZKp@BolX^|HcPah9=^EJyDP|d zV3}n{w5KIyZPR91<32(uc`=P($T>;T=6Yo5zP9&*=u=?H6!$3(k$o_~^Fu{<%!h-1 z#%i^nVO{!WwwB}z+0U?e@}RMvIWHvp85U3UaKxOP>}R-mSk)-~ zC;MhDzFjV4f5YONH^5O`WdF>?vvqGO`fo12t$T(aKVsuI^W_UX^<_4f>2>ITk*ANC zBKk7I|K7U+?R+YE*_@Gyra1o!|4MpWjP7va^b+xx^jJI`#w`q_r;@`h=^}gcKpXL@ zoIIS$9AB;nal$d{3pjaLwGvOqmz#NagTm97Ie8kN9W3p|GdQlg3-wJ76a-Rv<(gkJ+&0)M|Wj2U1Z#>2R6_eNrzNhGM?*d z*V~do+*n|?Imj?hnU3~&D&B6bJpV_>J;^egGbFPbW%CR8c~jW?|)HFmniXeULEOvw{`OP z)=5Vl>g4g2lN=6u`=)p7zW*W|L0Oki+3>{|bi(!EpvbH6IeuXe(9p`k^|sISuFzmN zcCT?5P{#2aN4pe9$9sx}QPY3O8+un57bvglF6Jc`b%ow#437`V-zcm2y(W*Nu~`?& zw%!#P$Pe~fWkv6b=7;m613mTysUkn19P3^2VceM7*WHsB@~Bg++f`*9hu?+X@xeUT zRj!*>*(T~5+`c-BtAa<1W*kw5bsP*{93LHC(mgnyH{*ozpm()#L`7RqWmWHL?;jZB zaSiMpV4wF>zE@5PN3M7NMxGDQ!CDIkdUrbiYVC_JXcx`GUOF;qO&*Dc(hW)(($Mud zuc4p9GAZnBqV>@Bvv4KSMn0sW950A|kBMR#7Qo@8tV>XwSFDq4c^PeECaXuyJn}OU zMrU|v?^<~o7*=>H@a8X`YWZ1#Herf}dycz{-GYRE2vBI<-~nuwd-BeAZB&a8;SG!M z&pI1LyS40iowR;QwTzCnVZTqn!hQg(==z?$$RBxXW=jH zwffu4+p$-T(#IKh;*^(FgKTU z%`6m&{Q9W_{%WIcBoZE$;crj!U;4wIcUYXq_Q*J^q^Bm}Pn6SJKujt%}kM=iC$_M-Lw;P_`GoQ7Ai#SHA7l zOxx*I&9g1d&q>X*g=R-ipgou6W!O8x&%bLwOW1LLSE5Kp4G(R3FE6WNx~4t%@nuM4 z5_XnKs?W;H9>QNUraM^Ssg+rD2N9m${L1lFbK4=xTer*0Ml3HAjh=QO(C2cTFk#-K z?V{$;IAWi>O4a6a)|%_4jt|q>k!~`iy4H*hkKl;nVjuTXa6%w9FuRnB;|Y8tOIIk+Ro$3Oq(ZTDIv}FZGFR8prph=&&KMm<3vUXC(y5#g&4dDCr>&5d z%%C0!C8F6_+DHb(e%O|VmZp}up~x6M>hOcVDh7lcnf7;<;P}RfS<-ZUM$ZM4saTj} zp~k^y7q}yOA^_(0aH%eo3B8* G8UGJsL`r@D delta 222635 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�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 =zEZu;NMF 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