gosu 1.4.5.pre1 → 1.4.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/dependencies/SDL/include/SDL.h +1 -0
- data/dependencies/SDL/include/SDL_assert.h +4 -2
- data/dependencies/SDL/include/SDL_atomic.h +20 -0
- data/dependencies/SDL/include/SDL_audio.h +40 -4
- data/dependencies/SDL/include/SDL_blendmode.h +4 -6
- data/dependencies/SDL/include/SDL_clipboard.h +47 -0
- data/dependencies/SDL/include/SDL_config.h +71 -45
- data/dependencies/SDL/include/SDL_cpuinfo.h +39 -4
- data/dependencies/SDL/include/SDL_egl.h +59 -9
- data/dependencies/SDL/include/SDL_endian.h +34 -3
- data/dependencies/SDL/include/SDL_events.h +32 -1
- data/dependencies/SDL/include/SDL_filesystem.h +5 -1
- data/dependencies/SDL/include/SDL_gamecontroller.h +78 -5
- data/dependencies/SDL/include/SDL_guid.h +100 -0
- data/dependencies/SDL/include/SDL_hints.h +645 -43
- data/dependencies/SDL/include/SDL_joystick.h +127 -7
- data/dependencies/SDL/include/SDL_keyboard.h +38 -1
- data/dependencies/SDL/include/SDL_keycode.h +6 -1
- data/dependencies/SDL/include/SDL_log.h +2 -2
- data/dependencies/SDL/include/SDL_main.h +42 -2
- data/dependencies/SDL/include/SDL_metal.h +2 -1
- data/dependencies/SDL/include/SDL_mouse.h +12 -1
- data/dependencies/SDL/include/SDL_opengl.h +0 -51
- data/dependencies/SDL/include/SDL_opengl_glext.h +2260 -231
- data/dependencies/SDL/include/SDL_opengles2_gl2.h +374 -339
- data/dependencies/SDL/include/SDL_opengles2_gl2ext.h +3479 -1496
- data/dependencies/SDL/include/SDL_opengles2_gl2platform.h +6 -9
- data/dependencies/SDL/include/SDL_opengles2_khrplatform.h +43 -14
- data/dependencies/SDL/include/SDL_platform.h +32 -6
- data/dependencies/SDL/include/SDL_rect.h +154 -2
- data/dependencies/SDL/include/SDL_render.h +46 -17
- data/dependencies/SDL/include/SDL_revision.h +6 -1
- data/dependencies/SDL/include/SDL_rwops.h +1 -15
- data/dependencies/SDL/include/SDL_scancode.h +46 -21
- data/dependencies/SDL/include/SDL_sensor.h +24 -3
- data/dependencies/SDL/include/SDL_stdinc.h +119 -8
- data/dependencies/SDL/include/SDL_surface.h +3 -1
- data/dependencies/SDL/include/SDL_system.h +66 -6
- data/dependencies/SDL/include/SDL_syswm.h +2 -0
- data/dependencies/SDL/include/SDL_test_common.h +1 -0
- data/dependencies/SDL/include/SDL_test_font.h +90 -3
- data/dependencies/SDL/include/SDL_thread.h +3 -3
- data/dependencies/SDL/include/SDL_touch.h +8 -0
- data/dependencies/SDL/include/SDL_version.h +19 -3
- data/dependencies/SDL/include/SDL_video.h +71 -9
- data/dependencies/SDL/include/begin_code.h +4 -4
- data/dependencies/SDL/lib/x64/libSDL2.dll.a +0 -0
- data/dependencies/SDL/lib/x86/libSDL2.dll.a +0 -0
- data/dependencies/SDL_sound/SDL_sound.c +210 -71
- data/dependencies/SDL_sound/SDL_sound.h +1 -1
- data/dependencies/SDL_sound/SDL_sound_coreaudio.c +111 -168
- data/dependencies/SDL_sound/SDL_sound_flac.c +0 -6
- data/dependencies/SDL_sound/SDL_sound_internal.h +27 -5
- data/dependencies/SDL_sound/SDL_sound_modplug.c +20 -8
- data/dependencies/SDL_sound/SDL_sound_mp3.c +11 -7
- data/dependencies/SDL_sound/SDL_sound_raw.c +1 -1
- data/dependencies/SDL_sound/SDL_sound_shn.c +1 -5
- data/dependencies/SDL_sound/SDL_sound_voc.c +1 -1
- data/dependencies/SDL_sound/SDL_sound_vorbis.c +2 -4
- data/dependencies/SDL_sound/SDL_sound_wav.c +44 -20
- data/dependencies/SDL_sound/dr_flac.h +237 -95
- data/dependencies/SDL_sound/dr_mp3.h +46 -33
- data/dependencies/SDL_sound/libmodplug/fastmix.c +53 -39
- data/dependencies/SDL_sound/libmodplug/libmodplug.h +0 -12
- data/dependencies/SDL_sound/libmodplug/load_669.c +37 -32
- data/dependencies/SDL_sound/libmodplug/load_amf.c +57 -44
- data/dependencies/SDL_sound/libmodplug/load_ams.c +127 -100
- data/dependencies/SDL_sound/libmodplug/load_dbm.c +40 -37
- data/dependencies/SDL_sound/libmodplug/load_dmf.c +61 -49
- data/dependencies/SDL_sound/libmodplug/load_dsm.c +18 -13
- data/dependencies/SDL_sound/libmodplug/load_far.c +31 -24
- data/dependencies/SDL_sound/libmodplug/load_gdm.c +27 -21
- data/dependencies/SDL_sound/libmodplug/load_it.c +106 -91
- data/dependencies/SDL_sound/libmodplug/load_mdl.c +43 -35
- data/dependencies/SDL_sound/libmodplug/load_med.c +66 -52
- data/dependencies/SDL_sound/libmodplug/load_mod.c +30 -26
- data/dependencies/SDL_sound/libmodplug/load_mt2.c +61 -50
- data/dependencies/SDL_sound/libmodplug/load_mtm.c +23 -17
- data/dependencies/SDL_sound/libmodplug/load_okt.c +18 -16
- data/dependencies/SDL_sound/libmodplug/load_psm.c +44 -32
- data/dependencies/SDL_sound/libmodplug/load_ptm.c +18 -14
- data/dependencies/SDL_sound/libmodplug/load_s3m.c +59 -53
- data/dependencies/SDL_sound/libmodplug/load_stm.c +23 -18
- data/dependencies/SDL_sound/libmodplug/load_ult.c +33 -29
- data/dependencies/SDL_sound/libmodplug/load_xm.c +64 -57
- data/dependencies/SDL_sound/libmodplug/mmcmp.c +2 -1
- data/dependencies/SDL_sound/libmodplug/snd_dsp.c +30 -20
- data/dependencies/SDL_sound/libmodplug/snd_flt.c +6 -4
- data/dependencies/SDL_sound/libmodplug/snd_fx.c +91 -65
- data/dependencies/SDL_sound/libmodplug/sndfile.c +91 -66
- data/dependencies/SDL_sound/libmodplug/sndmix.c +58 -35
- data/dependencies/SDL_sound/stb_vorbis.h +14 -9
- data/dependencies/mojoAL/mojoal.c +41 -24
- data/dependencies/utf8proc/utf8proc.c +1 -1
- data/dependencies/utf8proc/utf8proc.h +1 -1
- data/dependencies/utf8proc/utf8proc_data.h +3366 -3184
- data/lib/SDL2.dll +0 -0
- data/lib64/SDL2.dll +0 -0
- data/src/Window.cpp +3 -0
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 54dd9082a36785d56a6bc0e6f7a38d9e38c62d29bd7476dc56df29a9175a69be
|
4
|
+
data.tar.gz: a713d0c3e09e38b3a668b2bfad8353d5e94332043d7388264c2b8eb05c6ab7b2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 85db224f6e83d63184708b74408551be45e590a20526dd795079239048d4d026320579f97195f9ff4fce42ca3adbdff1351fc53eb6491d50486f1d76950b87a1
|
7
|
+
data.tar.gz: c027c0c3b038e5bdd4a674ffe0e902f07ddb245b4d1b5419d734a3baceadbdcef20e5d38c023e0da31bbdc072e78b8731209f50b882ccae572c234dc1bd32b97
|
@@ -22,7 +22,7 @@
|
|
22
22
|
#ifndef SDL_assert_h_
|
23
23
|
#define SDL_assert_h_
|
24
24
|
|
25
|
-
#include "
|
25
|
+
#include "SDL_stdinc.h"
|
26
26
|
|
27
27
|
#include "begin_code.h"
|
28
28
|
/* Set up for C function definitions, even when using C++ */
|
@@ -51,6 +51,8 @@ assert can have unique static variables associated with it.
|
|
51
51
|
/* Don't include intrin.h here because it contains C++ code */
|
52
52
|
extern void __cdecl __debugbreak(void);
|
53
53
|
#define SDL_TriggerBreakpoint() __debugbreak()
|
54
|
+
#elif _SDL_HAS_BUILTIN(__builtin_debugtrap)
|
55
|
+
#define SDL_TriggerBreakpoint() __builtin_debugtrap()
|
54
56
|
#elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) )
|
55
57
|
#define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" )
|
56
58
|
#elif ( defined(__APPLE__) && (defined(__arm64__) || defined(__aarch64__)) ) /* this might work on other ARM targets, but this is a known quantity... */
|
@@ -69,7 +71,7 @@ assert can have unique static variables associated with it.
|
|
69
71
|
|
70
72
|
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) /* C99 supports __func__ as a standard. */
|
71
73
|
# define SDL_FUNCTION __func__
|
72
|
-
#elif ((__GNUC__ >= 2) || defined(_MSC_VER) || defined (__WATCOMC__))
|
74
|
+
#elif ((defined(__GNUC__) && (__GNUC__ >= 2)) || defined(_MSC_VER) || defined (__WATCOMC__))
|
73
75
|
# define SDL_FUNCTION __FUNCTION__
|
74
76
|
#else
|
75
77
|
# define SDL_FUNCTION "???"
|
@@ -237,6 +237,26 @@ typedef void (*SDL_KernelMemoryBarrierFunc)();
|
|
237
237
|
#endif
|
238
238
|
#endif
|
239
239
|
|
240
|
+
/* "REP NOP" is PAUSE, coded for tools that don't know it by that name. */
|
241
|
+
#if (defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))
|
242
|
+
#define SDL_CPUPauseInstruction() __asm__ __volatile__("pause\n") /* Some assemblers can't do REP NOP, so go with PAUSE. */
|
243
|
+
#elif (defined(__arm__) && __ARM_ARCH >= 7) || defined(__aarch64__)
|
244
|
+
#define SDL_CPUPauseInstruction() __asm__ __volatile__("yield" ::: "memory")
|
245
|
+
#elif (defined(__powerpc__) || defined(__powerpc64__))
|
246
|
+
#define SDL_CPUPauseInstruction() __asm__ __volatile__("or 27,27,27");
|
247
|
+
#elif defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_X64))
|
248
|
+
#define SDL_CPUPauseInstruction() _mm_pause() /* this is actually "rep nop" and not a SIMD instruction. No inline asm in MSVC x86-64! */
|
249
|
+
#elif defined(_MSC_VER) && (defined(_M_ARM) || defined(_M_ARM64))
|
250
|
+
#define SDL_CPUPauseInstruction() __yield()
|
251
|
+
#elif defined(__WATCOMC__) && defined(__386__)
|
252
|
+
/* watcom assembler rejects PAUSE if CPU < i686, and it refuses REP NOP as an invalid combination. Hardcode the bytes. */
|
253
|
+
extern __inline void SDL_CPUPauseInstruction(void);
|
254
|
+
#pragma aux SDL_CPUPauseInstruction = "db 0f3h,90h"
|
255
|
+
#else
|
256
|
+
#define SDL_CPUPauseInstruction()
|
257
|
+
#endif
|
258
|
+
|
259
|
+
|
240
260
|
/**
|
241
261
|
* \brief A type representing an atomic integer value. It is a struct
|
242
262
|
* so people don't accidentally use numeric operations on it.
|
@@ -172,7 +172,7 @@ typedef void (SDLCALL * SDL_AudioCallback) (void *userdata, Uint8 * stream,
|
|
172
172
|
* 2: FL FR (stereo)
|
173
173
|
* 3: FL FR LFE (2.1 surround)
|
174
174
|
* 4: FL FR BL BR (quad)
|
175
|
-
* 5: FL FR
|
175
|
+
* 5: FL FR LFE BL BR (4.1 surround)
|
176
176
|
* 6: FL FR FC LFE SL SR (5.1 surround - last two can also be BL BR)
|
177
177
|
* 7: FL FR FC LFE BC SL SR (6.1 surround)
|
178
178
|
* 8: FL FR FC LFE BL BR SL SR (7.1 surround)
|
@@ -487,6 +487,7 @@ extern DECLSPEC int SDLCALL SDL_GetNumAudioDevices(int iscapture);
|
|
487
487
|
* \since This function is available since SDL 2.0.0.
|
488
488
|
*
|
489
489
|
* \sa SDL_GetNumAudioDevices
|
490
|
+
* \sa SDL_GetDefaultAudioInfo
|
490
491
|
*/
|
491
492
|
extern DECLSPEC const char *SDLCALL SDL_GetAudioDeviceName(int index,
|
492
493
|
int iscapture);
|
@@ -500,9 +501,7 @@ extern DECLSPEC const char *SDLCALL SDL_GetAudioDeviceName(int index,
|
|
500
501
|
* hardware.
|
501
502
|
*
|
502
503
|
* `spec` will be filled with the sample rate, sample format, and channel
|
503
|
-
* count.
|
504
|
-
* supported struct members are 0, SDL was unable to get the property from the
|
505
|
-
* backend.
|
504
|
+
* count.
|
506
505
|
*
|
507
506
|
* \param index the index of the audio device; valid values range from 0 to
|
508
507
|
* SDL_GetNumAudioDevices() - 1
|
@@ -514,12 +513,48 @@ extern DECLSPEC const char *SDLCALL SDL_GetAudioDeviceName(int index,
|
|
514
513
|
* \since This function is available since SDL 2.0.16.
|
515
514
|
*
|
516
515
|
* \sa SDL_GetNumAudioDevices
|
516
|
+
* \sa SDL_GetDefaultAudioInfo
|
517
517
|
*/
|
518
518
|
extern DECLSPEC int SDLCALL SDL_GetAudioDeviceSpec(int index,
|
519
519
|
int iscapture,
|
520
520
|
SDL_AudioSpec *spec);
|
521
521
|
|
522
522
|
|
523
|
+
/**
|
524
|
+
* Get the name and preferred format of the default audio device.
|
525
|
+
*
|
526
|
+
* Some (but not all!) platforms have an isolated mechanism to get information
|
527
|
+
* about the "default" device. This can actually be a completely different
|
528
|
+
* device that's not in the list you get from SDL_GetAudioDeviceSpec(). It can
|
529
|
+
* even be a network address! (This is discussed in SDL_OpenAudioDevice().)
|
530
|
+
*
|
531
|
+
* As a result, this call is not guaranteed to be performant, as it can query
|
532
|
+
* the sound server directly every time, unlike the other query functions. You
|
533
|
+
* should call this function sparingly!
|
534
|
+
*
|
535
|
+
* `spec` will be filled with the sample rate, sample format, and channel
|
536
|
+
* count, if a default device exists on the system. If `name` is provided,
|
537
|
+
* will be filled with either a dynamically-allocated UTF-8 string or NULL.
|
538
|
+
*
|
539
|
+
* \param name A pointer to be filled with the name of the default device (can
|
540
|
+
* be NULL). Please call SDL_free() when you are done with this
|
541
|
+
* pointer!
|
542
|
+
* \param spec The SDL_AudioSpec to be initialized by this function.
|
543
|
+
* \param iscapture non-zero to query the default recording device, zero to
|
544
|
+
* query the default output device.
|
545
|
+
* \returns 0 on success, nonzero on error
|
546
|
+
*
|
547
|
+
* \since This function is available since SDL 2.24.0.
|
548
|
+
*
|
549
|
+
* \sa SDL_GetAudioDeviceName
|
550
|
+
* \sa SDL_GetAudioDeviceSpec
|
551
|
+
* \sa SDL_OpenAudioDevice
|
552
|
+
*/
|
553
|
+
extern DECLSPEC int SDLCALL SDL_GetDefaultAudioInfo(char **name,
|
554
|
+
SDL_AudioSpec *spec,
|
555
|
+
int iscapture);
|
556
|
+
|
557
|
+
|
523
558
|
/**
|
524
559
|
* Open a specific audio device.
|
525
560
|
*
|
@@ -586,6 +621,7 @@ extern DECLSPEC int SDLCALL SDL_GetAudioDeviceSpec(int index,
|
|
586
621
|
* - `SDL_AUDIO_ALLOW_FREQUENCY_CHANGE`
|
587
622
|
* - `SDL_AUDIO_ALLOW_FORMAT_CHANGE`
|
588
623
|
* - `SDL_AUDIO_ALLOW_CHANNELS_CHANGE`
|
624
|
+
* - `SDL_AUDIO_ALLOW_SAMPLES_CHANGE`
|
589
625
|
* - `SDL_AUDIO_ALLOW_ANY_CHANGE`
|
590
626
|
*
|
591
627
|
* These flags specify how SDL should behave when a device cannot offer a
|
@@ -67,9 +67,8 @@ typedef enum
|
|
67
67
|
SDL_BLENDOPERATION_ADD = 0x1, /**< dst + src: supported by all renderers */
|
68
68
|
SDL_BLENDOPERATION_SUBTRACT = 0x2, /**< dst - src : supported by D3D9, D3D11, OpenGL, OpenGLES */
|
69
69
|
SDL_BLENDOPERATION_REV_SUBTRACT = 0x3, /**< src - dst : supported by D3D9, D3D11, OpenGL, OpenGLES */
|
70
|
-
SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D11 */
|
71
|
-
SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D11 */
|
72
|
-
|
70
|
+
SDL_BLENDOPERATION_MINIMUM = 0x4, /**< min(dst, src) : supported by D3D9, D3D11 */
|
71
|
+
SDL_BLENDOPERATION_MAXIMUM = 0x5 /**< max(dst, src) : supported by D3D9, D3D11 */
|
73
72
|
} SDL_BlendOperation;
|
74
73
|
|
75
74
|
/**
|
@@ -87,7 +86,6 @@ typedef enum
|
|
87
86
|
SDL_BLENDFACTOR_ONE_MINUS_DST_COLOR = 0x8, /**< 1-dstR, 1-dstG, 1-dstB, 1-dstA */
|
88
87
|
SDL_BLENDFACTOR_DST_ALPHA = 0x9, /**< dstA, dstA, dstA, dstA */
|
89
88
|
SDL_BLENDFACTOR_ONE_MINUS_DST_ALPHA = 0xA /**< 1-dstA, 1-dstA, 1-dstA, 1-dstA */
|
90
|
-
|
91
89
|
} SDL_BlendFactor;
|
92
90
|
|
93
91
|
/**
|
@@ -135,10 +133,10 @@ typedef enum
|
|
135
133
|
* SDL 2.0.6. All renderers support the four blend modes listed in the
|
136
134
|
* SDL_BlendMode enumeration.
|
137
135
|
*
|
138
|
-
* - **direct3d**: Supports
|
139
|
-
* - **direct3d11**: Supports all operations with all factors. However, some
|
136
|
+
* - **direct3d**: Supports all operations with all factors. However, some
|
140
137
|
* factors produce unexpected results with `SDL_BLENDOPERATION_MINIMUM` and
|
141
138
|
* `SDL_BLENDOPERATION_MAXIMUM`.
|
139
|
+
* - **direct3d11**: Same as Direct3D 9.
|
142
140
|
* - **opengl**: Supports the `SDL_BLENDOPERATION_ADD` operation with all
|
143
141
|
* factors. OpenGL versions 1.1, 1.2, and 1.3 do not work correctly with SDL
|
144
142
|
* 2.0.6.
|
@@ -82,6 +82,53 @@ extern DECLSPEC char * SDLCALL SDL_GetClipboardText(void);
|
|
82
82
|
*/
|
83
83
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasClipboardText(void);
|
84
84
|
|
85
|
+
/**
|
86
|
+
* Put UTF-8 text into the primary selection.
|
87
|
+
*
|
88
|
+
* \param text the text to store in the primary selection
|
89
|
+
* \returns 0 on success or a negative error code on failure; call
|
90
|
+
* SDL_GetError() for more information.
|
91
|
+
*
|
92
|
+
* \since This function is available since SDL 2.26.0.
|
93
|
+
*
|
94
|
+
* \sa SDL_GetPrimarySelectionText
|
95
|
+
* \sa SDL_HasPrimarySelectionText
|
96
|
+
*/
|
97
|
+
extern DECLSPEC int SDLCALL SDL_SetPrimarySelectionText(const char *text);
|
98
|
+
|
99
|
+
/**
|
100
|
+
* Get UTF-8 text from the primary selection, which must be freed with
|
101
|
+
* SDL_free().
|
102
|
+
*
|
103
|
+
* This functions returns empty string if there was not enough memory left for
|
104
|
+
* a copy of the primary selection's content.
|
105
|
+
*
|
106
|
+
* \returns the primary selection text on success or an empty string on
|
107
|
+
* failure; call SDL_GetError() for more information. Caller must
|
108
|
+
* call SDL_free() on the returned pointer when done with it (even if
|
109
|
+
* there was an error).
|
110
|
+
*
|
111
|
+
* \since This function is available since SDL 2.26.0.
|
112
|
+
*
|
113
|
+
* \sa SDL_HasPrimarySelectionText
|
114
|
+
* \sa SDL_SetPrimarySelectionText
|
115
|
+
*/
|
116
|
+
extern DECLSPEC char * SDLCALL SDL_GetPrimarySelectionText(void);
|
117
|
+
|
118
|
+
/**
|
119
|
+
* Query whether the primary selection exists and contains a non-empty text
|
120
|
+
* string.
|
121
|
+
*
|
122
|
+
* \returns SDL_TRUE if the primary selection has text, or SDL_FALSE if it
|
123
|
+
* does not.
|
124
|
+
*
|
125
|
+
* \since This function is available since SDL 2.26.0.
|
126
|
+
*
|
127
|
+
* \sa SDL_GetPrimarySelectionText
|
128
|
+
* \sa SDL_SetPrimarySelectionText
|
129
|
+
*/
|
130
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_HasPrimarySelectionText(void);
|
131
|
+
|
85
132
|
|
86
133
|
/* Ends C function definitions when using C++ */
|
87
134
|
#ifdef __cplusplus
|
@@ -38,12 +38,23 @@
|
|
38
38
|
#include <winsdkver.h>
|
39
39
|
#endif
|
40
40
|
|
41
|
+
/* sdkddkver.h defines more specific SDK version numbers. This is needed because older versions of the
|
42
|
+
* Windows 10 SDK have broken declarations for the C API for DirectX 12. */
|
43
|
+
#if !defined(HAVE_SDKDDKVER_H) && defined(__has_include)
|
44
|
+
#if __has_include(<sdkddkver.h>)
|
45
|
+
#define HAVE_SDKDDKVER_H 1
|
46
|
+
#endif
|
47
|
+
#endif
|
48
|
+
|
49
|
+
#ifdef HAVE_SDKDDKVER_H
|
50
|
+
#include <sdkddkver.h>
|
51
|
+
#endif
|
52
|
+
|
41
53
|
/* This is a set of defines to configure the SDL features */
|
42
54
|
|
43
55
|
#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H)
|
44
|
-
|
45
|
-
#
|
46
|
-
#elif defined(_MSC_VER)
|
56
|
+
/* Most everything except Visual Studio 2008 and earlier has stdint.h now */
|
57
|
+
#if defined(_MSC_VER) && (_MSC_VER < 1600)
|
47
58
|
typedef signed __int8 int8_t;
|
48
59
|
typedef unsigned __int8 uint8_t;
|
49
60
|
typedef signed __int16 int16_t;
|
@@ -60,28 +71,9 @@ typedef unsigned int uintptr_t;
|
|
60
71
|
#endif
|
61
72
|
#define _UINTPTR_T_DEFINED
|
62
73
|
#endif
|
63
|
-
|
64
|
-
#
|
65
|
-
#
|
66
|
-
#endif
|
67
|
-
#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR)))
|
68
|
-
#define LONG_PTR LONG
|
69
|
-
#endif
|
70
|
-
#else /* !__GNUC__ && !_MSC_VER */
|
71
|
-
typedef signed char int8_t;
|
72
|
-
typedef unsigned char uint8_t;
|
73
|
-
typedef signed short int16_t;
|
74
|
-
typedef unsigned short uint16_t;
|
75
|
-
typedef signed int int32_t;
|
76
|
-
typedef unsigned int uint32_t;
|
77
|
-
typedef signed long long int64_t;
|
78
|
-
typedef unsigned long long uint64_t;
|
79
|
-
#ifndef _SIZE_T_DEFINED_
|
80
|
-
#define _SIZE_T_DEFINED_
|
81
|
-
typedef unsigned int size_t;
|
82
|
-
#endif
|
83
|
-
typedef unsigned int uintptr_t;
|
84
|
-
#endif /* __GNUC__ || _MSC_VER */
|
74
|
+
#else
|
75
|
+
#define HAVE_STDINT_H 1
|
76
|
+
#endif /* Visual Studio 2008 */
|
85
77
|
#endif /* !_STDINT_H_ && !HAVE_STDINT_H */
|
86
78
|
|
87
79
|
#ifdef _WIN64
|
@@ -90,9 +82,14 @@ typedef unsigned int uintptr_t;
|
|
90
82
|
# define SIZEOF_VOIDP 4
|
91
83
|
#endif
|
92
84
|
|
85
|
+
#ifdef __clang__
|
86
|
+
# define HAVE_GCC_ATOMICS 1
|
87
|
+
#endif
|
88
|
+
|
93
89
|
#define HAVE_DDRAW_H 1
|
94
90
|
#define HAVE_DINPUT_H 1
|
95
91
|
#define HAVE_DSOUND_H 1
|
92
|
+
#ifndef __WATCOMC__
|
96
93
|
#define HAVE_DXGI_H 1
|
97
94
|
#define HAVE_XINPUT_H 1
|
98
95
|
#if defined(_WIN32_MAXVER) && _WIN32_MAXVER >= 0x0A00 /* Windows 10 SDK */
|
@@ -100,11 +97,19 @@ typedef unsigned int uintptr_t;
|
|
100
97
|
#endif
|
101
98
|
#if defined(_WIN32_MAXVER) && _WIN32_MAXVER >= 0x0602 /* Windows 8 SDK */
|
102
99
|
#define HAVE_D3D11_H 1
|
100
|
+
#define HAVE_ROAPI_H 1
|
101
|
+
#endif
|
102
|
+
#if defined(WDK_NTDDI_VERSION) && WDK_NTDDI_VERSION > 0x0A000008 /* 10.0.19041.0 */
|
103
|
+
#define HAVE_D3D12_H 1
|
104
|
+
#endif
|
105
|
+
#if defined(_WIN32_MAXVER) && _WIN32_MAXVER >= 0x0603 /* Windows 8.1 SDK */
|
106
|
+
#define HAVE_SHELLSCALINGAPI_H 1
|
103
107
|
#endif
|
104
108
|
#define HAVE_MMDEVICEAPI_H 1
|
105
109
|
#define HAVE_AUDIOCLIENT_H 1
|
106
110
|
#define HAVE_TPCSHRD_H 1
|
107
111
|
#define HAVE_SENSORSAPI_H 1
|
112
|
+
#endif
|
108
113
|
#if (defined(_M_IX86) || defined(_M_X64) || defined(_M_AMD64)) && (defined(_MSC_VER) && _MSC_VER >= 1600)
|
109
114
|
#define HAVE_IMMINTRIN_H 1
|
110
115
|
#elif defined(__has_include) && (defined(__i386__) || defined(__x86_64))
|
@@ -131,7 +136,11 @@ typedef unsigned int uintptr_t;
|
|
131
136
|
#define HAVE_REALLOC 1
|
132
137
|
#define HAVE_FREE 1
|
133
138
|
#define HAVE_ALLOCA 1
|
139
|
+
/* OpenWatcom requires specific calling conventions for qsort and bsearch */
|
140
|
+
#ifndef __WATCOMC__
|
134
141
|
#define HAVE_QSORT 1
|
142
|
+
#define HAVE_BSEARCH 1
|
143
|
+
#endif
|
135
144
|
#define HAVE_ABS 1
|
136
145
|
#define HAVE_MEMSET 1
|
137
146
|
#define HAVE_MEMCPY 1
|
@@ -162,37 +171,40 @@ typedef unsigned int uintptr_t;
|
|
162
171
|
#define HAVE__WCSNICMP 1
|
163
172
|
#define HAVE__WCSDUP 1
|
164
173
|
#define HAVE_ACOS 1
|
165
|
-
#define HAVE_ACOSF 1
|
166
174
|
#define HAVE_ASIN 1
|
167
|
-
#define HAVE_ASINF 1
|
168
175
|
#define HAVE_ATAN 1
|
169
|
-
#define HAVE_ATANF 1
|
170
176
|
#define HAVE_ATAN2 1
|
177
|
+
#define HAVE_CEIL 1
|
178
|
+
#define HAVE_COS 1
|
179
|
+
#define HAVE_EXP 1
|
180
|
+
#define HAVE_FABS 1
|
181
|
+
#define HAVE_FLOOR 1
|
182
|
+
#define HAVE_FMOD 1
|
183
|
+
#define HAVE_LOG 1
|
184
|
+
#define HAVE_LOG10 1
|
185
|
+
#define HAVE_POW 1
|
186
|
+
#define HAVE_SIN 1
|
187
|
+
#define HAVE_SQRT 1
|
188
|
+
#define HAVE_TAN 1
|
189
|
+
#ifndef __WATCOMC__
|
190
|
+
#define HAVE_ACOSF 1
|
191
|
+
#define HAVE_ASINF 1
|
192
|
+
#define HAVE_ATANF 1
|
171
193
|
#define HAVE_ATAN2F 1
|
172
194
|
#define HAVE_CEILF 1
|
173
195
|
#define HAVE__COPYSIGN 1
|
174
|
-
#define HAVE_COS 1
|
175
196
|
#define HAVE_COSF 1
|
176
|
-
#define HAVE_EXP 1
|
177
197
|
#define HAVE_EXPF 1
|
178
|
-
#define HAVE_FABS 1
|
179
198
|
#define HAVE_FABSF 1
|
180
|
-
#define HAVE_FLOOR 1
|
181
199
|
#define HAVE_FLOORF 1
|
182
|
-
#define HAVE_FMOD 1
|
183
200
|
#define HAVE_FMODF 1
|
184
|
-
#define HAVE_LOG 1
|
185
201
|
#define HAVE_LOGF 1
|
186
|
-
#define HAVE_LOG10 1
|
187
202
|
#define HAVE_LOG10F 1
|
188
|
-
#define HAVE_POW 1
|
189
203
|
#define HAVE_POWF 1
|
190
|
-
#define HAVE_SIN 1
|
191
204
|
#define HAVE_SINF 1
|
192
|
-
#define HAVE_SQRT 1
|
193
205
|
#define HAVE_SQRTF 1
|
194
|
-
#define HAVE_TAN 1
|
195
206
|
#define HAVE_TANF 1
|
207
|
+
#endif
|
196
208
|
#if defined(_MSC_VER)
|
197
209
|
/* These functions were added with the VC++ 2013 C runtime library */
|
198
210
|
#if _MSC_VER >= 1800
|
@@ -212,8 +224,18 @@ typedef unsigned int uintptr_t;
|
|
212
224
|
#if _MSC_VER >= 1400
|
213
225
|
#define HAVE__FSEEKI64 1
|
214
226
|
#endif
|
227
|
+
#ifdef _USE_MATH_DEFINES
|
228
|
+
#define HAVE_M_PI 1
|
215
229
|
#endif
|
216
|
-
#
|
230
|
+
#elif defined(__WATCOMC__)
|
231
|
+
#define HAVE__FSEEKI64 1
|
232
|
+
#define HAVE_STRTOLL 1
|
233
|
+
#define HAVE_STRTOULL 1
|
234
|
+
#define HAVE_VSSCANF 1
|
235
|
+
#define HAVE_ROUND 1
|
236
|
+
#define HAVE_SCALBN 1
|
237
|
+
#define HAVE_TRUNC 1
|
238
|
+
#else
|
217
239
|
#define HAVE_M_PI 1
|
218
240
|
#endif
|
219
241
|
#else
|
@@ -222,7 +244,9 @@ typedef unsigned int uintptr_t;
|
|
222
244
|
#endif
|
223
245
|
|
224
246
|
/* Enable various audio drivers */
|
247
|
+
#if defined(HAVE_MMDEVICEAPI_H) && defined(HAVE_AUDIOCLIENT_H)
|
225
248
|
#define SDL_AUDIO_DRIVER_WASAPI 1
|
249
|
+
#endif
|
226
250
|
#define SDL_AUDIO_DRIVER_DSOUND 1
|
227
251
|
#define SDL_AUDIO_DRIVER_WINMM 1
|
228
252
|
#define SDL_AUDIO_DRIVER_DISK 1
|
@@ -243,7 +267,11 @@ typedef unsigned int uintptr_t;
|
|
243
267
|
#define SDL_HAPTIC_XINPUT 1
|
244
268
|
|
245
269
|
/* Enable the sensor driver */
|
270
|
+
#ifdef HAVE_SENSORSAPI_H
|
246
271
|
#define SDL_SENSOR_WINDOWS 1
|
272
|
+
#else
|
273
|
+
#define SDL_SENSOR_DUMMY 1
|
274
|
+
#endif
|
247
275
|
|
248
276
|
/* Enable various shared object loading systems */
|
249
277
|
#define SDL_LOADSO_WINDOWS 1
|
@@ -265,6 +293,9 @@ typedef unsigned int uintptr_t;
|
|
265
293
|
#if !defined(SDL_VIDEO_RENDER_D3D11) && defined(HAVE_D3D11_H)
|
266
294
|
#define SDL_VIDEO_RENDER_D3D11 1
|
267
295
|
#endif
|
296
|
+
#if !defined(SDL_VIDEO_RENDER_D3D12) && defined(HAVE_D3D12_H)
|
297
|
+
#define SDL_VIDEO_RENDER_D3D12 1
|
298
|
+
#endif
|
268
299
|
|
269
300
|
/* Enable OpenGL support */
|
270
301
|
#ifndef SDL_VIDEO_OPENGL
|
@@ -295,11 +326,6 @@ typedef unsigned int uintptr_t;
|
|
295
326
|
/* Enable filesystem support */
|
296
327
|
#define SDL_FILESYSTEM_WINDOWS 1
|
297
328
|
|
298
|
-
/* Enable assembly routines (Win64 doesn't have inline asm) */
|
299
|
-
#ifndef _WIN64
|
300
|
-
#define SDL_ASSEMBLY_ROUTINES 1
|
301
|
-
#endif
|
302
|
-
|
303
329
|
#endif /* SDL_config_windows_h_ */
|
304
330
|
|
305
331
|
/* vi: set ts=4 sw=4 expandtab: */
|
@@ -79,7 +79,7 @@ _m_prefetch(void *__P)
|
|
79
79
|
#if !defined(SDL_DISABLE_ARM_NEON_H)
|
80
80
|
# if defined(__ARM_NEON)
|
81
81
|
# include <arm_neon.h>
|
82
|
-
# elif defined(__WINDOWS__) || defined(__WINRT__)
|
82
|
+
# elif defined(__WINDOWS__) || defined(__WINRT__) || defined(__GDK__)
|
83
83
|
/* Visual Studio doesn't define __ARM_ARCH, but _M_ARM (if set, always 7), and _M_ARM64 (if set, always 1). */
|
84
84
|
# if defined(_M_ARM)
|
85
85
|
# include <armintr.h>
|
@@ -90,6 +90,7 @@ _m_prefetch(void *__P)
|
|
90
90
|
# include <arm64intr.h>
|
91
91
|
# include <arm64_neon.h>
|
92
92
|
# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */
|
93
|
+
# define __ARM_ARCH 8
|
93
94
|
# endif
|
94
95
|
# endif
|
95
96
|
#endif
|
@@ -98,6 +99,14 @@ _m_prefetch(void *__P)
|
|
98
99
|
#if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H)
|
99
100
|
#include <mm3dnow.h>
|
100
101
|
#endif
|
102
|
+
#if defined(__loongarch_sx) && !defined(SDL_DISABLE_LSX_H)
|
103
|
+
#include <lsxintrin.h>
|
104
|
+
#define __LSX__
|
105
|
+
#endif
|
106
|
+
#if defined(__loongarch_asx) && !defined(SDL_DISABLE_LASX_H)
|
107
|
+
#include <lasxintrin.h>
|
108
|
+
#define __LASX__
|
109
|
+
#endif
|
101
110
|
#if defined(HAVE_IMMINTRIN_H) && !defined(SDL_DISABLE_IMMINTRIN_H)
|
102
111
|
#include <immintrin.h>
|
103
112
|
#else
|
@@ -433,10 +442,36 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void);
|
|
433
442
|
*/
|
434
443
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void);
|
435
444
|
|
445
|
+
/**
|
446
|
+
* Determine whether the CPU has LSX (LOONGARCH SIMD) features.
|
447
|
+
*
|
448
|
+
* This always returns false on CPUs that aren't using LOONGARCH instruction
|
449
|
+
* sets.
|
450
|
+
*
|
451
|
+
* \returns SDL_TRUE if the CPU has LOONGARCH LSX features or SDL_FALSE if
|
452
|
+
* not.
|
453
|
+
*
|
454
|
+
* \since This function is available since SDL 2.24.0.
|
455
|
+
*/
|
456
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_HasLSX(void);
|
457
|
+
|
458
|
+
/**
|
459
|
+
* Determine whether the CPU has LASX (LOONGARCH SIMD) features.
|
460
|
+
*
|
461
|
+
* This always returns false on CPUs that aren't using LOONGARCH instruction
|
462
|
+
* sets.
|
463
|
+
*
|
464
|
+
* \returns SDL_TRUE if the CPU has LOONGARCH LASX features or SDL_FALSE if
|
465
|
+
* not.
|
466
|
+
*
|
467
|
+
* \since This function is available since SDL 2.24.0.
|
468
|
+
*/
|
469
|
+
extern DECLSPEC SDL_bool SDLCALL SDL_HasLASX(void);
|
470
|
+
|
436
471
|
/**
|
437
472
|
* Get the amount of RAM configured in the system.
|
438
473
|
*
|
439
|
-
* \returns the amount of RAM configured in the system in
|
474
|
+
* \returns the amount of RAM configured in the system in MiB.
|
440
475
|
*
|
441
476
|
* \since This function is available since SDL 2.0.1.
|
442
477
|
*/
|
@@ -494,7 +529,7 @@ extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void);
|
|
494
529
|
*
|
495
530
|
* \since This function is available since SDL 2.0.10.
|
496
531
|
*
|
497
|
-
* \sa
|
532
|
+
* \sa SDL_SIMDGetAlignment
|
498
533
|
* \sa SDL_SIMDRealloc
|
499
534
|
* \sa SDL_SIMDFree
|
500
535
|
*/
|
@@ -518,7 +553,7 @@ extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len);
|
|
518
553
|
*
|
519
554
|
* \since This function is available since SDL 2.0.14.
|
520
555
|
*
|
521
|
-
* \sa
|
556
|
+
* \sa SDL_SIMDGetAlignment
|
522
557
|
* \sa SDL_SIMDAlloc
|
523
558
|
* \sa SDL_SIMDFree
|
524
559
|
*/
|