mirror of
https://github.com/Shpoike/Quakespasm.git
synced 2025-02-23 20:41:36 +00:00
Merge branch 'master' of https://github.com/ericwa/Quakespasm
This commit is contained in:
commit
d4db22a449
80 changed files with 275 additions and 131 deletions
|
@ -157,9 +157,10 @@ these patched libSDL binaries may help.
|
||||||
<sect1> Changes in 0.93.2<p>
|
<sect1> Changes in 0.93.2<p>
|
||||||
<itemize>
|
<itemize>
|
||||||
<item> Lightmaps are now dynamically allocated (from QSS), and BLOCK_WIDTH/HEIGHT raised from 128 to 256.
|
<item> Lightmaps are now dynamically allocated (from QSS), and BLOCK_WIDTH/HEIGHT raised from 128 to 256.
|
||||||
<item> Fixed several uncheked limits that would crash the Slayer's Testaments mod.
|
<item> Fixed several uncheked limits that would crash the Slayer's Testaments mod (sf.net bug #33).
|
||||||
<item> Raised MAXALIASTRIS from 2048 to 4096, so that the Slayer's Testaments mod works.
|
<item> Raised MAXALIASTRIS from 2048 to 4096, so that the Slayer's Testaments mod works.
|
||||||
<item> Fixed 'pants' and 'shirt' types so that those textures load correctly on platforms where char is unsigned by default (sf.net bug #28).
|
<item> Fixed 'pants' and 'shirt' types so that those textures load correctly on platforms where char is unsigned by default (sf.net bug #28).
|
||||||
|
<item> Windows audio: WASAPI-enabled SDL2 dlls function properly now.
|
||||||
<item> Update the third-party libraries. Other fixes/cleanups.
|
<item> Update the third-party libraries. Other fixes/cleanups.
|
||||||
</itemize>
|
</itemize>
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -60,6 +60,12 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE2(void);
|
||||||
/** This function returns true if the CPU has AltiVec features */
|
/** This function returns true if the CPU has AltiVec features */
|
||||||
extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void);
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void);
|
||||||
|
|
||||||
|
/** This function returns true if the CPU has ARM SIMD (ARMv6) features */
|
||||||
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void);
|
||||||
|
|
||||||
|
/** This function returns true if the CPU has ARM NEON features */
|
||||||
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMNEON(void);
|
||||||
|
|
||||||
/* Ends C function definitions when using C++ */
|
/* Ends C function definitions when using C++ */
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,10 +42,13 @@
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
#include <endian.h>
|
#include <endian.h>
|
||||||
#define SDL_BYTEORDER __BYTE_ORDER
|
#define SDL_BYTEORDER __BYTE_ORDER
|
||||||
#else /* __linux __ */
|
#elif defined(__OpenBSD__)
|
||||||
|
#include <endian.h>
|
||||||
|
#define SDL_BYTEORDER BYTE_ORDER
|
||||||
|
#else
|
||||||
#if defined(__hppa__) || \
|
#if defined(__hppa__) || \
|
||||||
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
||||||
(defined(__MIPS__) && defined(__MISPEB__)) || \
|
(defined(__MIPS__) && defined(__MIPSEB__)) || \
|
||||||
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
||||||
defined(__sparc__)
|
defined(__sparc__)
|
||||||
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
||||||
|
|
Binary file not shown.
|
@ -20,6 +20,22 @@
|
||||||
/* Use this flag to determine whether we use SDLMain.nib or not */
|
/* Use this flag to determine whether we use SDLMain.nib or not */
|
||||||
#define SDL_USE_NIB_FILE 0
|
#define SDL_USE_NIB_FILE 0
|
||||||
|
|
||||||
|
/* Use this flag to determine whether we use CPS (docking) or not */
|
||||||
|
#define SDL_USE_CPS 1
|
||||||
|
#ifdef SDL_USE_CPS
|
||||||
|
/* Portions of CPS.h */
|
||||||
|
typedef struct CPSProcessSerNum
|
||||||
|
{
|
||||||
|
UInt32 lo;
|
||||||
|
UInt32 hi;
|
||||||
|
} CPSProcessSerNum;
|
||||||
|
|
||||||
|
extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn);
|
||||||
|
extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5);
|
||||||
|
extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn);
|
||||||
|
|
||||||
|
#endif /* SDL_USE_CPS */
|
||||||
|
|
||||||
static int gArgc;
|
static int gArgc;
|
||||||
static char **gArgv;
|
static char **gArgv;
|
||||||
static BOOL gFinderLaunch;
|
static BOOL gFinderLaunch;
|
||||||
|
@ -185,7 +201,18 @@ static void CustomApplicationMain (int argc, char **argv)
|
||||||
SDLMain *sdlMain;
|
SDLMain *sdlMain;
|
||||||
|
|
||||||
/* Ensure the application object is initialised */
|
/* Ensure the application object is initialised */
|
||||||
[[NSApplication sharedApplication] activateIgnoringOtherApps: YES];
|
[NSApplication sharedApplication];
|
||||||
|
|
||||||
|
#ifdef SDL_USE_CPS
|
||||||
|
{
|
||||||
|
CPSProcessSerNum PSN;
|
||||||
|
/* Tell the dock about us */
|
||||||
|
if (!CPSGetCurrentProcess(&PSN))
|
||||||
|
if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103))
|
||||||
|
if (!CPSSetFrontProcess(&PSN))
|
||||||
|
[NSApplication sharedApplication];
|
||||||
|
}
|
||||||
|
#endif /* SDL_USE_CPS */
|
||||||
|
|
||||||
/* Set up the menubar */
|
/* Set up the menubar */
|
||||||
[NSApp setMainMenu:[[NSMenu alloc] init]];
|
[NSApp setMainMenu:[[NSMenu alloc] init]];
|
||||||
|
@ -318,6 +345,7 @@ static void CustomApplicationMain (int argc, char **argv)
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef main
|
#ifdef main
|
||||||
# undef main
|
# undef main
|
||||||
#endif
|
#endif
|
||||||
|
@ -330,25 +358,16 @@ static int IsRootCwd()
|
||||||
return (cwd && (strcmp(cwd, "/") == 0));
|
return (cwd && (strcmp(cwd, "/") == 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
static int IsTenPointNineOrLater()
|
|
||||||
{
|
|
||||||
/* Gestalt() is deprecated in 10.8, but I don't care. Stop using SDL 1.2. */
|
|
||||||
SInt32 major, minor;
|
|
||||||
Gestalt(gestaltSystemVersionMajor, &major);
|
|
||||||
Gestalt(gestaltSystemVersionMinor, &minor);
|
|
||||||
return ( ((major << 16) | minor) >= ((10 << 16) | 9) );
|
|
||||||
}
|
|
||||||
|
|
||||||
static int IsFinderLaunch(const int argc, char **argv)
|
static int IsFinderLaunch(const int argc, char **argv)
|
||||||
{
|
{
|
||||||
const int bIsNewerOS = IsTenPointNineOrLater();
|
/* -psn_XXX is passed if we are launched from Finder, SOMETIMES */
|
||||||
/* -psn_XXX is passed if we are launched from Finder in 10.8 and earlier */
|
if ( (argc >= 2) && (strncmp(argv[1], "-psn", 4) == 0) ) {
|
||||||
if ( (!bIsNewerOS) && (argc >= 2) && (strncmp(argv[1], "-psn", 4) == 0) ) {
|
|
||||||
return 1;
|
return 1;
|
||||||
} else if ((bIsNewerOS) && (argc == 1) && IsRootCwd()) {
|
} else if ((argc == 1) && IsRootCwd()) {
|
||||||
/* we might still be launched from the Finder; on 10.9+, you might not
|
/* we might still be launched from the Finder; on 10.9+, you might not
|
||||||
get the -psn command line anymore. Check version, if there's no
|
get the -psn command line anymore. If there's no
|
||||||
command line, and if our current working directory is "/". */
|
command line, and if our current working directory is "/", it
|
||||||
|
might as well be a Finder launch. */
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
return 0; /* not a Finder launch. */
|
return 0; /* not a Finder launch. */
|
||||||
|
|
|
@ -159,13 +159,13 @@
|
||||||
#define SDL_VIDEO_DRIVER_COCOA 1
|
#define SDL_VIDEO_DRIVER_COCOA 1
|
||||||
#define SDL_VIDEO_DRIVER_DUMMY 1
|
#define SDL_VIDEO_DRIVER_DUMMY 1
|
||||||
#undef SDL_VIDEO_DRIVER_X11
|
#undef SDL_VIDEO_DRIVER_X11
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/usr/X11R6/lib/libX11.6.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/opt/X11/lib/libX11.6.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/usr/X11R6/lib/libXext.6.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/opt/X11/lib/libXext.6.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/usr/X11R6/lib/libXinerama.1.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/opt/X11/lib/libXinerama.1.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/usr/X11R6/lib/libXi.6.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/opt/X11/lib/libXi.6.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/usr/X11R6/lib/libXrandr.2.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/opt/X11/lib/libXrandr.2.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/usr/X11R6/lib/libXss.1.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/opt/X11/lib/libXss.1.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/usr/X11R6/lib/libXxf86vm.1.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/opt/X11/lib/libXxf86vm.1.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_XDBE 1
|
#define SDL_VIDEO_DRIVER_X11_XDBE 1
|
||||||
#define SDL_VIDEO_DRIVER_X11_XINERAMA 1
|
#define SDL_VIDEO_DRIVER_X11_XINERAMA 1
|
||||||
#define SDL_VIDEO_DRIVER_X11_XRANDR 1
|
#define SDL_VIDEO_DRIVER_X11_XRANDR 1
|
||||||
|
|
|
@ -84,7 +84,6 @@ typedef unsigned int uintptr_t;
|
||||||
#define HAVE_XINPUT_H 1
|
#define HAVE_XINPUT_H 1
|
||||||
#define HAVE_MMDEVICEAPI_H 1
|
#define HAVE_MMDEVICEAPI_H 1
|
||||||
#define HAVE_AUDIOCLIENT_H 1
|
#define HAVE_AUDIOCLIENT_H 1
|
||||||
#define HAVE_ENDPOINTVOLUME_H 1
|
|
||||||
|
|
||||||
/* This is disabled by default to avoid C runtime dependencies and manifest requirements */
|
/* This is disabled by default to avoid C runtime dependencies and manifest requirements */
|
||||||
#ifdef HAVE_LIBC
|
#ifdef HAVE_LIBC
|
||||||
|
@ -139,7 +138,7 @@ typedef unsigned int uintptr_t;
|
||||||
#define HAVE_ATAN2 1
|
#define HAVE_ATAN2 1
|
||||||
#define HAVE_ATAN2F 1
|
#define HAVE_ATAN2F 1
|
||||||
#define HAVE_CEILF 1
|
#define HAVE_CEILF 1
|
||||||
#define HAVE__COPYSIGN 1
|
#define HAVE__COPYSIGN 1
|
||||||
#define HAVE_COS 1
|
#define HAVE_COS 1
|
||||||
#define HAVE_COSF 1
|
#define HAVE_COSF 1
|
||||||
#define HAVE_EXP 1
|
#define HAVE_EXP 1
|
||||||
|
@ -168,7 +167,7 @@ typedef unsigned int uintptr_t;
|
||||||
#define HAVE_STRTOLL 1
|
#define HAVE_STRTOLL 1
|
||||||
#define HAVE_VSSCANF 1
|
#define HAVE_VSSCANF 1
|
||||||
#define HAVE_SCALBN 1
|
#define HAVE_SCALBN 1
|
||||||
#define HAVE_SCALBNF 1
|
#define HAVE_SCALBNF 1
|
||||||
#endif
|
#endif
|
||||||
/* This function is available with at least the VC++ 2008 C runtime library */
|
/* This function is available with at least the VC++ 2008 C runtime library */
|
||||||
#if _MSC_VER >= 1400
|
#if _MSC_VER >= 1400
|
||||||
|
|
|
@ -100,7 +100,6 @@ typedef unsigned int uintptr_t;
|
||||||
|
|
||||||
#define HAVE_MMDEVICEAPI_H 1
|
#define HAVE_MMDEVICEAPI_H 1
|
||||||
#define HAVE_AUDIOCLIENT_H 1
|
#define HAVE_AUDIOCLIENT_H 1
|
||||||
#define HAVE_ENDPOINTVOLUME_H 1
|
|
||||||
|
|
||||||
#define HAVE_LIBC 1
|
#define HAVE_LIBC 1
|
||||||
#define STDC_HEADERS 1
|
#define STDC_HEADERS 1
|
||||||
|
|
|
@ -186,6 +186,11 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void);
|
||||||
*/
|
*/
|
||||||
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void);
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function returns true if the CPU has ARM SIMD (ARMv6) features.
|
||||||
|
*/
|
||||||
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function returns true if the CPU has NEON (ARM SIMD) features.
|
* This function returns true if the CPU has NEON (ARM SIMD) features.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -42,10 +42,13 @@
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
#include <endian.h>
|
#include <endian.h>
|
||||||
#define SDL_BYTEORDER __BYTE_ORDER
|
#define SDL_BYTEORDER __BYTE_ORDER
|
||||||
#else /* __linux__ */
|
#elif defined(__OpenBSD__)
|
||||||
|
#include <endian.h>
|
||||||
|
#define SDL_BYTEORDER BYTE_ORDER
|
||||||
|
#else
|
||||||
#if defined(__hppa__) || \
|
#if defined(__hppa__) || \
|
||||||
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
||||||
(defined(__MIPS__) && defined(__MISPEB__)) || \
|
(defined(__MIPS__) && defined(__MIPSEB__)) || \
|
||||||
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
||||||
defined(__sparc__)
|
defined(__sparc__)
|
||||||
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
||||||
|
|
|
@ -559,7 +559,7 @@ typedef union SDL_Event
|
||||||
{
|
{
|
||||||
Uint32 type; /**< Event type, shared with all events */
|
Uint32 type; /**< Event type, shared with all events */
|
||||||
SDL_CommonEvent common; /**< Common event data */
|
SDL_CommonEvent common; /**< Common event data */
|
||||||
SDL_DisplayEvent display; /**< Window event data */
|
SDL_DisplayEvent display; /**< Display event data */
|
||||||
SDL_WindowEvent window; /**< Window event data */
|
SDL_WindowEvent window; /**< Window event data */
|
||||||
SDL_KeyboardEvent key; /**< Keyboard event data */
|
SDL_KeyboardEvent key; /**< Keyboard event data */
|
||||||
SDL_TextEditingEvent edit; /**< Text editing event data */
|
SDL_TextEditingEvent edit; /**< Text editing event data */
|
||||||
|
|
|
@ -488,6 +488,29 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT"
|
#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief If set, game controller face buttons report their values according to their labels instead of their positional layout.
|
||||||
|
*
|
||||||
|
* For example, on Nintendo Switch controllers, normally you'd get:
|
||||||
|
*
|
||||||
|
* (Y)
|
||||||
|
* (X) (B)
|
||||||
|
* (A)
|
||||||
|
*
|
||||||
|
* but if this hint is set, you'll get:
|
||||||
|
*
|
||||||
|
* (X)
|
||||||
|
* (Y) (A)
|
||||||
|
* (B)
|
||||||
|
*
|
||||||
|
* The variable can be set to the following values:
|
||||||
|
* "0" - Report the face buttons by position, as though they were on an Xbox controller.
|
||||||
|
* "1" - Report the face buttons by label instead of position
|
||||||
|
*
|
||||||
|
* The default value is "0". This hint may be set at any time.
|
||||||
|
*/
|
||||||
|
#define SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS "SDL_GAMECONTROLLER_USE_BUTTON_LABELS"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background.
|
* \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background.
|
||||||
*
|
*
|
||||||
|
|
|
@ -47,7 +47,7 @@ typedef Sint32 SDL_Keycode;
|
||||||
#define SDLK_SCANCODE_MASK (1<<30)
|
#define SDLK_SCANCODE_MASK (1<<30)
|
||||||
#define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK)
|
#define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK)
|
||||||
|
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDLK_UNKNOWN = 0,
|
SDLK_UNKNOWN = 0,
|
||||||
|
|
||||||
|
@ -317,7 +317,7 @@ enum
|
||||||
|
|
||||||
SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND),
|
SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND),
|
||||||
SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD)
|
SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD)
|
||||||
};
|
} SDL_KeyCode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Enumeration of valid key mods (possibly OR'd together).
|
* \brief Enumeration of valid key mods (possibly OR'd together).
|
||||||
|
|
|
@ -61,7 +61,7 @@ extern "C" {
|
||||||
* at the VERBOSE level and all other categories are enabled at the
|
* at the VERBOSE level and all other categories are enabled at the
|
||||||
* CRITICAL level.
|
* CRITICAL level.
|
||||||
*/
|
*/
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_LOG_CATEGORY_APPLICATION,
|
SDL_LOG_CATEGORY_APPLICATION,
|
||||||
SDL_LOG_CATEGORY_ERROR,
|
SDL_LOG_CATEGORY_ERROR,
|
||||||
|
@ -94,7 +94,7 @@ enum
|
||||||
};
|
};
|
||||||
*/
|
*/
|
||||||
SDL_LOG_CATEGORY_CUSTOM
|
SDL_LOG_CATEGORY_CUSTOM
|
||||||
};
|
} SDL_LogCategory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief The predefined log priorities
|
* \brief The predefined log priorities
|
||||||
|
|
|
@ -40,7 +40,7 @@ typedef enum
|
||||||
SDL_MESSAGEBOX_WARNING = 0x00000020, /**< warning dialog */
|
SDL_MESSAGEBOX_WARNING = 0x00000020, /**< warning dialog */
|
||||||
SDL_MESSAGEBOX_INFORMATION = 0x00000040, /**< informational dialog */
|
SDL_MESSAGEBOX_INFORMATION = 0x00000040, /**< informational dialog */
|
||||||
SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT = 0x00000080, /**< buttons placed left to right */
|
SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT = 0x00000080, /**< buttons placed left to right */
|
||||||
SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT = 0x00000100, /**< buttons placed right to left */
|
SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT = 0x00000100 /**< buttons placed right to left */
|
||||||
} SDL_MessageBoxFlags;
|
} SDL_MessageBoxFlags;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -48,7 +48,7 @@ extern "C" {
|
||||||
/* @} */
|
/* @} */
|
||||||
|
|
||||||
/** Pixel type. */
|
/** Pixel type. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_PIXELTYPE_UNKNOWN,
|
SDL_PIXELTYPE_UNKNOWN,
|
||||||
SDL_PIXELTYPE_INDEX1,
|
SDL_PIXELTYPE_INDEX1,
|
||||||
|
@ -62,18 +62,18 @@ enum
|
||||||
SDL_PIXELTYPE_ARRAYU32,
|
SDL_PIXELTYPE_ARRAYU32,
|
||||||
SDL_PIXELTYPE_ARRAYF16,
|
SDL_PIXELTYPE_ARRAYF16,
|
||||||
SDL_PIXELTYPE_ARRAYF32
|
SDL_PIXELTYPE_ARRAYF32
|
||||||
};
|
} SDL_PixelType;
|
||||||
|
|
||||||
/** Bitmap pixel order, high bit -> low bit. */
|
/** Bitmap pixel order, high bit -> low bit. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_BITMAPORDER_NONE,
|
SDL_BITMAPORDER_NONE,
|
||||||
SDL_BITMAPORDER_4321,
|
SDL_BITMAPORDER_4321,
|
||||||
SDL_BITMAPORDER_1234
|
SDL_BITMAPORDER_1234
|
||||||
};
|
} SDL_BitmapOrder;
|
||||||
|
|
||||||
/** Packed component order, high bit -> low bit. */
|
/** Packed component order, high bit -> low bit. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_PACKEDORDER_NONE,
|
SDL_PACKEDORDER_NONE,
|
||||||
SDL_PACKEDORDER_XRGB,
|
SDL_PACKEDORDER_XRGB,
|
||||||
|
@ -84,12 +84,12 @@ enum
|
||||||
SDL_PACKEDORDER_BGRX,
|
SDL_PACKEDORDER_BGRX,
|
||||||
SDL_PACKEDORDER_ABGR,
|
SDL_PACKEDORDER_ABGR,
|
||||||
SDL_PACKEDORDER_BGRA
|
SDL_PACKEDORDER_BGRA
|
||||||
};
|
} SDL_PackedOrder;
|
||||||
|
|
||||||
/** Array component order, low byte -> high byte. */
|
/** Array component order, low byte -> high byte. */
|
||||||
/* !!! FIXME: in 2.1, make these not overlap differently with
|
/* !!! FIXME: in 2.1, make these not overlap differently with
|
||||||
!!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA */
|
!!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_ARRAYORDER_NONE,
|
SDL_ARRAYORDER_NONE,
|
||||||
SDL_ARRAYORDER_RGB,
|
SDL_ARRAYORDER_RGB,
|
||||||
|
@ -98,10 +98,10 @@ enum
|
||||||
SDL_ARRAYORDER_BGR,
|
SDL_ARRAYORDER_BGR,
|
||||||
SDL_ARRAYORDER_BGRA,
|
SDL_ARRAYORDER_BGRA,
|
||||||
SDL_ARRAYORDER_ABGR
|
SDL_ARRAYORDER_ABGR
|
||||||
};
|
} SDL_ArrayOrder;
|
||||||
|
|
||||||
/** Packed component layout. */
|
/** Packed component layout. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_PACKEDLAYOUT_NONE,
|
SDL_PACKEDLAYOUT_NONE,
|
||||||
SDL_PACKEDLAYOUT_332,
|
SDL_PACKEDLAYOUT_332,
|
||||||
|
@ -112,7 +112,7 @@ enum
|
||||||
SDL_PACKEDLAYOUT_8888,
|
SDL_PACKEDLAYOUT_8888,
|
||||||
SDL_PACKEDLAYOUT_2101010,
|
SDL_PACKEDLAYOUT_2101010,
|
||||||
SDL_PACKEDLAYOUT_1010102
|
SDL_PACKEDLAYOUT_1010102
|
||||||
};
|
} SDL_PackedLayout;
|
||||||
|
|
||||||
#define SDL_DEFINE_PIXELFOURCC(A, B, C, D) SDL_FOURCC(A, B, C, D)
|
#define SDL_DEFINE_PIXELFOURCC(A, B, C, D) SDL_FOURCC(A, B, C, D)
|
||||||
|
|
||||||
|
|
|
@ -430,10 +430,31 @@ extern DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture * texture,
|
||||||
const SDL_Rect * rect,
|
const SDL_Rect * rect,
|
||||||
void **pixels, int *pitch);
|
void **pixels, int *pitch);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Lock a portion of the texture for write-only pixel access.
|
||||||
|
* Expose it as a SDL surface.
|
||||||
|
*
|
||||||
|
* \param texture The texture to lock for access, which was created with
|
||||||
|
* ::SDL_TEXTUREACCESS_STREAMING.
|
||||||
|
* \param rect A pointer to the rectangle to lock for access. If the rect
|
||||||
|
* is NULL, the entire texture will be locked.
|
||||||
|
* \param surface This is filled in with a SDL surface representing the locked area
|
||||||
|
* Surface is freed internally after calling SDL_UnlockTexture or SDL_DestroyTexture.
|
||||||
|
*
|
||||||
|
* \return 0 on success, or -1 if the texture is not valid or was not created with ::SDL_TEXTUREACCESS_STREAMING.
|
||||||
|
*
|
||||||
|
* \sa SDL_UnlockTexture()
|
||||||
|
*/
|
||||||
|
extern DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture,
|
||||||
|
const SDL_Rect *rect,
|
||||||
|
SDL_Surface **surface);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Unlock a texture, uploading the changes to video memory, if needed.
|
* \brief Unlock a texture, uploading the changes to video memory, if needed.
|
||||||
|
* If SDL_LockTextureToSurface() was called for locking, the SDL surface is freed.
|
||||||
*
|
*
|
||||||
* \sa SDL_LockTexture()
|
* \sa SDL_LockTexture()
|
||||||
|
* \sa SDL_LockTextureToSurface()
|
||||||
*/
|
*/
|
||||||
extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture);
|
extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture);
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
#define SDL_REVISION "hg-13074:2ede888544ac"
|
#define SDL_REVISION "hg-13229:0b98870c7f72"
|
||||||
#define SDL_REVISION_NUMBER 13074
|
#define SDL_REVISION_NUMBER 13229
|
||||||
|
|
|
@ -59,7 +59,7 @@ typedef struct SDL_version
|
||||||
*/
|
*/
|
||||||
#define SDL_MAJOR_VERSION 2
|
#define SDL_MAJOR_VERSION 2
|
||||||
#define SDL_MINOR_VERSION 0
|
#define SDL_MINOR_VERSION 0
|
||||||
#define SDL_PATCHLEVEL 10
|
#define SDL_PATCHLEVEL 11
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Macro to determine SDL version program was compiled against.
|
* \brief Macro to determine SDL version program was compiled against.
|
||||||
|
|
|
@ -96,7 +96,6 @@ typedef struct SDL_Window SDL_Window;
|
||||||
*/
|
*/
|
||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
/* !!! FIXME: change this to name = (1<<x). */
|
|
||||||
SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */
|
SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */
|
||||||
SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */
|
SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */
|
||||||
SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */
|
SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>FMWK</string>
|
<string>FMWK</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>2.0.10</string>
|
<string>2.0.11</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>SDLX</string>
|
<string>SDLX</string>
|
||||||
<key>CFBundleSupportedPlatforms</key>
|
<key>CFBundleSupportedPlatforms</key>
|
||||||
|
@ -27,7 +27,7 @@
|
||||||
<string>MacOSX</string>
|
<string>MacOSX</string>
|
||||||
</array>
|
</array>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>2.0.10</string>
|
<string>2.0.11</string>
|
||||||
<key>DTCompiler</key>
|
<key>DTCompiler</key>
|
||||||
<string>com.apple.compilers.llvm.clang.1_0</string>
|
<string>com.apple.compilers.llvm.clang.1_0</string>
|
||||||
<key>DTPlatformBuild</key>
|
<key>DTPlatformBuild</key>
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -907,7 +907,7 @@ void Mod_LoadLighting (lump_t *l)
|
||||||
{
|
{
|
||||||
if (8+l->filelen*3 == com_filesize)
|
if (8+l->filelen*3 == com_filesize)
|
||||||
{
|
{
|
||||||
Con_DPrintf("%s loaded\n", litfilename);
|
Con_DPrintf2("%s loaded\n", litfilename);
|
||||||
loadmodel->lightdata = data + 8;
|
loadmodel->lightdata = data + 8;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -95,8 +95,10 @@ void* lodepng_realloc(void* ptr, size_t new_size);
|
||||||
void lodepng_free(void* ptr);
|
void lodepng_free(void* ptr);
|
||||||
#endif /*LODEPNG_COMPILE_ALLOCATORS*/
|
#endif /*LODEPNG_COMPILE_ALLOCATORS*/
|
||||||
|
|
||||||
#if (defined(__GNUC__) && defined(__GNUC_MINOR__) && (__GNUC__ >= 3) && (__GNUC_MINOR__ >= 1)) ||\
|
/* restrict is not available in C90, but use it when supported by the compiler */
|
||||||
(defined(_MSC_VER) && (_MSC_VER >= 1400)) || (defined(__WATCOMC__) && (__WATCOMC__ >= 1250))
|
#if (defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))) ||\
|
||||||
|
(defined(_MSC_VER) && (_MSC_VER >= 1400)) || \
|
||||||
|
(defined(__WATCOMC__) && (__WATCOMC__ >= 1250) && !defined(__cplusplus))
|
||||||
#define LODEPNG_RESTRICT __restrict
|
#define LODEPNG_RESTRICT __restrict
|
||||||
#else
|
#else
|
||||||
#define LODEPNG_RESTRICT /* not available */
|
#define LODEPNG_RESTRICT /* not available */
|
||||||
|
@ -2123,7 +2125,7 @@ unsigned lodepng_zlib_compress(unsigned char** out, size_t* outsize, const unsig
|
||||||
if(!error) {
|
if(!error) {
|
||||||
*outsize = deflatesize + 6;
|
*outsize = deflatesize + 6;
|
||||||
*out = (unsigned char*)lodepng_malloc(*outsize);
|
*out = (unsigned char*)lodepng_malloc(*outsize);
|
||||||
if(!out) error = 83; /*alloc fail*/
|
if(!*out) error = 83; /*alloc fail*/
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!error) {
|
if(!error) {
|
||||||
|
|
|
@ -1795,7 +1795,7 @@ qboolean M_Quit_TextEntry (void)
|
||||||
void M_Quit_Draw (void) //johnfitz -- modified for new quit message
|
void M_Quit_Draw (void) //johnfitz -- modified for new quit message
|
||||||
{
|
{
|
||||||
char msg1[40];
|
char msg1[40];
|
||||||
char msg2[] = "by Ozkan, Ericw & Stevenaaus"; /* msg2/msg3 are mostly [40] */
|
char msg2[] = "by Ozkan Sezer, Eric Wasylishen, others";/* msg2/msg3 are mostly [40] */
|
||||||
char msg3[] = "Press y to quit";
|
char msg3[] = "Press y to quit";
|
||||||
int boxlen;
|
int boxlen;
|
||||||
|
|
||||||
|
|
|
@ -728,6 +728,8 @@ int AllocBlock (int w, int h, int *x, int *y)
|
||||||
lightmap_count++;
|
lightmap_count++;
|
||||||
lightmap = (struct lightmap_s *) realloc(lightmap, sizeof(*lightmap)*lightmap_count);
|
lightmap = (struct lightmap_s *) realloc(lightmap, sizeof(*lightmap)*lightmap_count);
|
||||||
memset(&lightmap[texnum], 0, sizeof(lightmap[texnum]));
|
memset(&lightmap[texnum], 0, sizeof(lightmap[texnum]));
|
||||||
|
/* FIXME: we leave 'gaps' in malloc()ed data, CRC_Block() later accesses
|
||||||
|
* that uninitialized data and valgrind complains for it. use calloc() ? */
|
||||||
lightmap[texnum].data = (byte *) malloc(4*LMBLOCK_WIDTH*LMBLOCK_HEIGHT);
|
lightmap[texnum].data = (byte *) malloc(4*LMBLOCK_WIDTH*LMBLOCK_HEIGHT);
|
||||||
//as we're only tracking one texture, we don't need multiple copies of allocated any more.
|
//as we're only tracking one texture, we don't need multiple copies of allocated any more.
|
||||||
memset(allocated, 0, sizeof(allocated));
|
memset(allocated, 0, sizeof(allocated));
|
||||||
|
@ -875,7 +877,7 @@ with all the surfaces from all brush models
|
||||||
*/
|
*/
|
||||||
void GL_BuildLightmaps (void)
|
void GL_BuildLightmaps (void)
|
||||||
{
|
{
|
||||||
char name[16];
|
char name[24];
|
||||||
int i, j;
|
int i, j;
|
||||||
struct lightmap_s *lm;
|
struct lightmap_s *lm;
|
||||||
qmodel_t *m;
|
qmodel_t *m;
|
||||||
|
@ -937,18 +939,18 @@ void GL_BuildLightmaps (void)
|
||||||
lm->rectchange.h = 0;
|
lm->rectchange.h = 0;
|
||||||
|
|
||||||
//johnfitz -- use texture manager
|
//johnfitz -- use texture manager
|
||||||
sprintf(name, "lightmap%03i",i);
|
sprintf(name, "lightmap%07i",i);
|
||||||
lm->texture = TexMgr_LoadImage (cl.worldmodel, name, LMBLOCK_WIDTH, LMBLOCK_HEIGHT,
|
lm->texture = TexMgr_LoadImage (cl.worldmodel, name, LMBLOCK_WIDTH, LMBLOCK_HEIGHT,
|
||||||
SRC_LIGHTMAP, lm->data, "", (src_offset_t)lm->data, TEXPREF_LINEAR | TEXPREF_NOPICMIP);
|
SRC_LIGHTMAP, lm->data, "", (src_offset_t)lm->data, TEXPREF_LINEAR | TEXPREF_NOPICMIP);
|
||||||
//johnfitz
|
//johnfitz
|
||||||
}
|
}
|
||||||
|
|
||||||
//johnfitz -- warn about exceeding old limits
|
//johnfitz -- warn about exceeding old limits
|
||||||
//Spike: note that this warning isn't accurate.
|
//GLQuake limit was 64 textures of 128x128. Estimate how many 128x128 textures we would need
|
||||||
// I've doubled the lmblock dimensions, so the standard limit is more like 64/4 now.
|
//given that we are using lightmap_count of LMBLOCK_WIDTH x LMBLOCK_HEIGHT
|
||||||
// additionally, ericw already changed the allocation strategy, which results in false positives.
|
i = lightmap_count * ((LMBLOCK_WIDTH / 128) * (LMBLOCK_HEIGHT / 128));
|
||||||
if (i >= 64)
|
if (i > 64)
|
||||||
Con_DWarning ("%i lightmaps exceeds standard limit of 64 (max = %d).\n", i, MAX_SANITY_LIGHTMAPS);
|
Con_DWarning("%i lightmaps exceeds standard limit of 64.\n",i);
|
||||||
//johnfitz
|
//johnfitz
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -80,7 +80,7 @@ static void SDLCALL paint_audio (void *unused, Uint8 *stream, int len)
|
||||||
|
|
||||||
qboolean SNDDMA_Init (dma_t *dma)
|
qboolean SNDDMA_Init (dma_t *dma)
|
||||||
{
|
{
|
||||||
SDL_AudioSpec desired, obtained;
|
SDL_AudioSpec desired;
|
||||||
int tmp, val;
|
int tmp, val;
|
||||||
char drivername[128];
|
char drivername[128];
|
||||||
|
|
||||||
|
@ -91,7 +91,7 @@ qboolean SNDDMA_Init (dma_t *dma)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set up the desired format */
|
/* Set up the desired format */
|
||||||
desired.freq = tmp = snd_mixspeed.value;
|
desired.freq = snd_mixspeed.value;
|
||||||
desired.format = (loadas8bit.value) ? AUDIO_U8 : AUDIO_S16SYS;
|
desired.format = (loadas8bit.value) ? AUDIO_U8 : AUDIO_S16SYS;
|
||||||
desired.channels = 2; /* = desired_channels; */
|
desired.channels = 2; /* = desired_channels; */
|
||||||
if (desired.freq <= 11025)
|
if (desired.freq <= 11025)
|
||||||
|
@ -108,39 +108,25 @@ qboolean SNDDMA_Init (dma_t *dma)
|
||||||
desired.userdata = NULL;
|
desired.userdata = NULL;
|
||||||
|
|
||||||
/* Open the audio device */
|
/* Open the audio device */
|
||||||
if (SDL_OpenAudio(&desired, &obtained) == -1)
|
if (SDL_OpenAudio(&desired, NULL) == -1)
|
||||||
{
|
{
|
||||||
Con_Printf("Couldn't open SDL audio: %s\n", SDL_GetError());
|
Con_Printf("Couldn't open SDL audio: %s\n", SDL_GetError());
|
||||||
SDL_QuitSubSystem(SDL_INIT_AUDIO);
|
SDL_QuitSubSystem(SDL_INIT_AUDIO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Make sure we can support the audio format */
|
|
||||||
switch (obtained.format)
|
|
||||||
{
|
|
||||||
case AUDIO_S8: /* maybe needed by AHI */
|
|
||||||
case AUDIO_U8:
|
|
||||||
case AUDIO_S16SYS:
|
|
||||||
/* Supported */
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
Con_Printf ("Unsupported audio format received (%u)\n", obtained.format);
|
|
||||||
SDL_CloseAudio();
|
|
||||||
SDL_QuitSubSystem(SDL_INIT_AUDIO);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
memset ((void *) dma, 0, sizeof(dma_t));
|
memset ((void *) dma, 0, sizeof(dma_t));
|
||||||
shm = dma;
|
shm = dma;
|
||||||
|
|
||||||
/* Fill the audio DMA information block */
|
/* Fill the audio DMA information block */
|
||||||
shm->samplebits = (obtained.format & 0xFF); /* first byte of format is bits */
|
/* Since we passed NULL as the 'obtained' spec to SDL_OpenAudio(),
|
||||||
shm->signed8 = (obtained.format == AUDIO_S8);
|
* SDL will convert to hardware format for us if needed, hence we
|
||||||
if (obtained.freq != tmp)
|
* directly use the desired values here. */
|
||||||
Con_Printf ("Warning: Rate set (%d) didn't match requested rate (%d)!\n", obtained.freq, tmp);
|
shm->samplebits = (desired.format & 0xFF); /* first byte of format is bits */
|
||||||
shm->speed = obtained.freq;
|
shm->signed8 = (desired.format == AUDIO_S8);
|
||||||
shm->channels = obtained.channels;
|
shm->speed = desired.freq;
|
||||||
tmp = (obtained.samples * obtained.channels) * 10;
|
shm->channels = desired.channels;
|
||||||
|
tmp = (desired.samples * desired.channels) * 10;
|
||||||
if (tmp & (tmp - 1))
|
if (tmp & (tmp - 1))
|
||||||
{ /* make it a power of two */
|
{ /* make it a power of two */
|
||||||
val = 1;
|
val = 1;
|
||||||
|
@ -154,7 +140,7 @@ qboolean SNDDMA_Init (dma_t *dma)
|
||||||
shm->submission_chunk = 1;
|
shm->submission_chunk = 1;
|
||||||
|
|
||||||
Con_Printf ("SDL audio spec : %d Hz, %d samples, %d channels\n",
|
Con_Printf ("SDL audio spec : %d Hz, %d samples, %d channels\n",
|
||||||
obtained.freq, obtained.samples, obtained.channels);
|
desired.freq, desired.samples, desired.channels);
|
||||||
#if defined(USE_SDL2)
|
#if defined(USE_SDL2)
|
||||||
{
|
{
|
||||||
const char *driver = SDL_GetCurrentAudioDriver();
|
const char *driver = SDL_GetCurrentAudioDriver();
|
||||||
|
|
|
@ -232,7 +232,7 @@ Compile time options include
|
||||||
<H2><A NAME="s5">5.</A> <A HREF="#toc5">Known Bugs </A></H2>
|
<H2><A NAME="s5">5.</A> <A HREF="#toc5">Known Bugs </A></H2>
|
||||||
|
|
||||||
<P>Brightness issues should be fixed with GLSL gamma in 0.90.1, if your system supports OpenGL 2. For reference on older systems:<BR>
|
<P>Brightness issues should be fixed with GLSL gamma in 0.90.1, if your system supports OpenGL 2. For reference on older systems:<BR>
|
||||||
|
|
||||||
Some versions of Xorg and SDL have brightness issues.<BR>
|
Some versions of Xorg and SDL have brightness issues.<BR>
|
||||||
Try setting "export SDL_VIDEO_X11_NODIRECTCOLOR=1", or if you have Xorg >= 7.5 and broken brightness,
|
Try setting "export SDL_VIDEO_X11_NODIRECTCOLOR=1", or if you have Xorg >= 7.5 and broken brightness,
|
||||||
these patched libSDL binaries may help.
|
these patched libSDL binaries may help.
|
||||||
|
@ -253,9 +253,10 @@ these patched libSDL binaries may help.
|
||||||
<P>
|
<P>
|
||||||
<UL>
|
<UL>
|
||||||
<LI> Lightmaps are now dynamically allocated (from QSS), and BLOCK_WIDTH/HEIGHT raised from 128 to 256.</LI>
|
<LI> Lightmaps are now dynamically allocated (from QSS), and BLOCK_WIDTH/HEIGHT raised from 128 to 256.</LI>
|
||||||
<LI> Fixed several uncheked limits that would crash the Slayer's Testaments mod.</LI>
|
<LI> Fixed several uncheked limits that would crash the Slayer's Testaments mod (sf.net bug #33).</LI>
|
||||||
<LI> Raised MAXALIASTRIS from 2048 to 4096, so that the Slayer's Testaments mod works.</LI>
|
<LI> Raised MAXALIASTRIS from 2048 to 4096, so that the Slayer's Testaments mod works.</LI>
|
||||||
<LI> Fixed 'pants' and 'shirt' types so that those textures load correctly on platforms where char is unsigned by default (sf.net bug #28).</LI>
|
<LI> Fixed 'pants' and 'shirt' types so that those textures load correctly on platforms where char is unsigned by default (sf.net bug #28).</LI>
|
||||||
|
<LI> Windows audio: WASAPI-enabled SDL2 dlls function properly now.</LI>
|
||||||
<LI> Update the third-party libraries. Other fixes/cleanups.</LI>
|
<LI> Update the third-party libraries. Other fixes/cleanups.</LI>
|
||||||
</UL>
|
</UL>
|
||||||
</P>
|
</P>
|
||||||
|
|
|
@ -295,7 +295,7 @@
|
||||||
BLOCK_WIDTH/HEIGHT raised from 128 to 256.
|
BLOCK_WIDTH/HEIGHT raised from 128 to 256.
|
||||||
|
|
||||||
o Fixed several uncheked limits that would crash the Slayer's
|
o Fixed several uncheked limits that would crash the Slayer's
|
||||||
Testaments mod.
|
Testaments mod (sf.net bug #33).
|
||||||
|
|
||||||
o Raised MAXALIASTRIS from 2048 to 4096, so that the Slayer's
|
o Raised MAXALIASTRIS from 2048 to 4096, so that the Slayer's
|
||||||
Testaments mod works.
|
Testaments mod works.
|
||||||
|
@ -304,6 +304,8 @@
|
||||||
correctly on platforms where char is unsigned by default
|
correctly on platforms where char is unsigned by default
|
||||||
(sf.net bug #28).
|
(sf.net bug #28).
|
||||||
|
|
||||||
|
o Windows audio: WASAPI-enabled SDL2 dlls function properly now.
|
||||||
|
|
||||||
o Update the third-party libraries. Other fixes/cleanups.
|
o Update the third-party libraries. Other fixes/cleanups.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -60,6 +60,12 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasSSE2(void);
|
||||||
/** This function returns true if the CPU has AltiVec features */
|
/** This function returns true if the CPU has AltiVec features */
|
||||||
extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void);
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasAltiVec(void);
|
||||||
|
|
||||||
|
/** This function returns true if the CPU has ARM SIMD (ARMv6) features */
|
||||||
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void);
|
||||||
|
|
||||||
|
/** This function returns true if the CPU has ARM NEON features */
|
||||||
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMNEON(void);
|
||||||
|
|
||||||
/* Ends C function definitions when using C++ */
|
/* Ends C function definitions when using C++ */
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,10 +42,13 @@
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
#include <endian.h>
|
#include <endian.h>
|
||||||
#define SDL_BYTEORDER __BYTE_ORDER
|
#define SDL_BYTEORDER __BYTE_ORDER
|
||||||
#else /* __linux __ */
|
#elif defined(__OpenBSD__)
|
||||||
|
#include <endian.h>
|
||||||
|
#define SDL_BYTEORDER BYTE_ORDER
|
||||||
|
#else
|
||||||
#if defined(__hppa__) || \
|
#if defined(__hppa__) || \
|
||||||
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
||||||
(defined(__MIPS__) && defined(__MISPEB__)) || \
|
(defined(__MIPS__) && defined(__MIPSEB__)) || \
|
||||||
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
||||||
defined(__sparc__)
|
defined(__sparc__)
|
||||||
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -82,6 +82,8 @@ SDL_GetVideoSurface
|
||||||
SDL_GetWMInfo
|
SDL_GetWMInfo
|
||||||
SDL_Has3DNow
|
SDL_Has3DNow
|
||||||
SDL_Has3DNowExt
|
SDL_Has3DNowExt
|
||||||
|
SDL_HasARMNEON
|
||||||
|
SDL_HasARMSIMD
|
||||||
SDL_HasAltiVec
|
SDL_HasAltiVec
|
||||||
SDL_HasMMX
|
SDL_HasMMX
|
||||||
SDL_HasMMXExt
|
SDL_HasMMXExt
|
||||||
|
|
|
@ -79,6 +79,8 @@
|
||||||
++'_SDL_GetWMInfo'.'SDL.DLL'..'SDL_GetWMInfo'
|
++'_SDL_GetWMInfo'.'SDL.DLL'..'SDL_GetWMInfo'
|
||||||
++'_SDL_Has3DNow'.'SDL.DLL'..'SDL_Has3DNow'
|
++'_SDL_Has3DNow'.'SDL.DLL'..'SDL_Has3DNow'
|
||||||
++'_SDL_Has3DNowExt'.'SDL.DLL'..'SDL_Has3DNowExt'
|
++'_SDL_Has3DNowExt'.'SDL.DLL'..'SDL_Has3DNowExt'
|
||||||
|
++'_SDL_HasARMNEON'.'SDL.DLL'..'SDL_HasARMNEON'
|
||||||
|
++'_SDL_HasARMSIMD'.'SDL.DLL'..'SDL_HasARMSIMD'
|
||||||
++'_SDL_HasAltiVec'.'SDL.DLL'..'SDL_HasAltiVec'
|
++'_SDL_HasAltiVec'.'SDL.DLL'..'SDL_HasAltiVec'
|
||||||
++'_SDL_HasMMX'.'SDL.DLL'..'SDL_HasMMX'
|
++'_SDL_HasMMX'.'SDL.DLL'..'SDL_HasMMX'
|
||||||
++'_SDL_HasMMXExt'.'SDL.DLL'..'SDL_HasMMXExt'
|
++'_SDL_HasMMXExt'.'SDL.DLL'..'SDL_HasMMXExt'
|
||||||
|
|
Binary file not shown.
|
@ -1,6 +1,13 @@
|
||||||
|
|
||||||
This is a list of major changes in SDL's version history.
|
This is a list of major changes in SDL's version history.
|
||||||
|
|
||||||
|
---------------------------------------------------------------------------
|
||||||
|
2.0.11/12:
|
||||||
|
---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
General:
|
||||||
|
* Added SDL_LockTextureToSurface(), similar to SDL_LockTexture() but the locked area is exposed as a SDL surface.
|
||||||
|
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
2.0.10:
|
2.0.10:
|
||||||
---------------------------------------------------------------------------
|
---------------------------------------------------------------------------
|
||||||
|
|
|
@ -40,7 +40,7 @@ while test $# -gt 0; do
|
||||||
lib_suffix=$optarg
|
lib_suffix=$optarg
|
||||||
;;
|
;;
|
||||||
--version)
|
--version)
|
||||||
echo 2.0.10
|
echo 2.0.11
|
||||||
;;
|
;;
|
||||||
--cflags)
|
--cflags)
|
||||||
echo -I${prefix}/include -Dmain=SDL_main
|
echo -I${prefix}/include -Dmain=SDL_main
|
||||||
|
|
|
@ -159,13 +159,13 @@
|
||||||
#define SDL_VIDEO_DRIVER_COCOA 1
|
#define SDL_VIDEO_DRIVER_COCOA 1
|
||||||
#define SDL_VIDEO_DRIVER_DUMMY 1
|
#define SDL_VIDEO_DRIVER_DUMMY 1
|
||||||
#undef SDL_VIDEO_DRIVER_X11
|
#undef SDL_VIDEO_DRIVER_X11
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/usr/X11R6/lib/libX11.6.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/opt/X11/lib/libX11.6.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/usr/X11R6/lib/libXext.6.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/opt/X11/lib/libXext.6.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/usr/X11R6/lib/libXinerama.1.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/opt/X11/lib/libXinerama.1.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/usr/X11R6/lib/libXi.6.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/opt/X11/lib/libXi.6.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/usr/X11R6/lib/libXrandr.2.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/opt/X11/lib/libXrandr.2.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/usr/X11R6/lib/libXss.1.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/opt/X11/lib/libXss.1.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/usr/X11R6/lib/libXxf86vm.1.dylib"
|
#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/opt/X11/lib/libXxf86vm.1.dylib"
|
||||||
#define SDL_VIDEO_DRIVER_X11_XDBE 1
|
#define SDL_VIDEO_DRIVER_X11_XDBE 1
|
||||||
#define SDL_VIDEO_DRIVER_X11_XINERAMA 1
|
#define SDL_VIDEO_DRIVER_X11_XINERAMA 1
|
||||||
#define SDL_VIDEO_DRIVER_X11_XRANDR 1
|
#define SDL_VIDEO_DRIVER_X11_XRANDR 1
|
||||||
|
|
|
@ -84,7 +84,6 @@ typedef unsigned int uintptr_t;
|
||||||
#define HAVE_XINPUT_H 1
|
#define HAVE_XINPUT_H 1
|
||||||
#define HAVE_MMDEVICEAPI_H 1
|
#define HAVE_MMDEVICEAPI_H 1
|
||||||
#define HAVE_AUDIOCLIENT_H 1
|
#define HAVE_AUDIOCLIENT_H 1
|
||||||
#define HAVE_ENDPOINTVOLUME_H 1
|
|
||||||
|
|
||||||
/* This is disabled by default to avoid C runtime dependencies and manifest requirements */
|
/* This is disabled by default to avoid C runtime dependencies and manifest requirements */
|
||||||
#ifdef HAVE_LIBC
|
#ifdef HAVE_LIBC
|
||||||
|
@ -139,7 +138,7 @@ typedef unsigned int uintptr_t;
|
||||||
#define HAVE_ATAN2 1
|
#define HAVE_ATAN2 1
|
||||||
#define HAVE_ATAN2F 1
|
#define HAVE_ATAN2F 1
|
||||||
#define HAVE_CEILF 1
|
#define HAVE_CEILF 1
|
||||||
#define HAVE__COPYSIGN 1
|
#define HAVE__COPYSIGN 1
|
||||||
#define HAVE_COS 1
|
#define HAVE_COS 1
|
||||||
#define HAVE_COSF 1
|
#define HAVE_COSF 1
|
||||||
#define HAVE_EXP 1
|
#define HAVE_EXP 1
|
||||||
|
@ -168,7 +167,7 @@ typedef unsigned int uintptr_t;
|
||||||
#define HAVE_STRTOLL 1
|
#define HAVE_STRTOLL 1
|
||||||
#define HAVE_VSSCANF 1
|
#define HAVE_VSSCANF 1
|
||||||
#define HAVE_SCALBN 1
|
#define HAVE_SCALBN 1
|
||||||
#define HAVE_SCALBNF 1
|
#define HAVE_SCALBNF 1
|
||||||
#endif
|
#endif
|
||||||
/* This function is available with at least the VC++ 2008 C runtime library */
|
/* This function is available with at least the VC++ 2008 C runtime library */
|
||||||
#if _MSC_VER >= 1400
|
#if _MSC_VER >= 1400
|
||||||
|
|
|
@ -100,7 +100,6 @@ typedef unsigned int uintptr_t;
|
||||||
|
|
||||||
#define HAVE_MMDEVICEAPI_H 1
|
#define HAVE_MMDEVICEAPI_H 1
|
||||||
#define HAVE_AUDIOCLIENT_H 1
|
#define HAVE_AUDIOCLIENT_H 1
|
||||||
#define HAVE_ENDPOINTVOLUME_H 1
|
|
||||||
|
|
||||||
#define HAVE_LIBC 1
|
#define HAVE_LIBC 1
|
||||||
#define STDC_HEADERS 1
|
#define STDC_HEADERS 1
|
||||||
|
|
|
@ -186,6 +186,11 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX2(void);
|
||||||
*/
|
*/
|
||||||
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void);
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasAVX512F(void);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function returns true if the CPU has ARM SIMD (ARMv6) features.
|
||||||
|
*/
|
||||||
|
extern DECLSPEC SDL_bool SDLCALL SDL_HasARMSIMD(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function returns true if the CPU has NEON (ARM SIMD) features.
|
* This function returns true if the CPU has NEON (ARM SIMD) features.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -42,10 +42,13 @@
|
||||||
#ifdef __linux__
|
#ifdef __linux__
|
||||||
#include <endian.h>
|
#include <endian.h>
|
||||||
#define SDL_BYTEORDER __BYTE_ORDER
|
#define SDL_BYTEORDER __BYTE_ORDER
|
||||||
#else /* __linux__ */
|
#elif defined(__OpenBSD__)
|
||||||
|
#include <endian.h>
|
||||||
|
#define SDL_BYTEORDER BYTE_ORDER
|
||||||
|
#else
|
||||||
#if defined(__hppa__) || \
|
#if defined(__hppa__) || \
|
||||||
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
defined(__m68k__) || defined(mc68000) || defined(_M_M68K) || \
|
||||||
(defined(__MIPS__) && defined(__MISPEB__)) || \
|
(defined(__MIPS__) && defined(__MIPSEB__)) || \
|
||||||
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
defined(__ppc__) || defined(__POWERPC__) || defined(_M_PPC) || \
|
||||||
defined(__sparc__)
|
defined(__sparc__)
|
||||||
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
#define SDL_BYTEORDER SDL_BIG_ENDIAN
|
||||||
|
|
|
@ -559,7 +559,7 @@ typedef union SDL_Event
|
||||||
{
|
{
|
||||||
Uint32 type; /**< Event type, shared with all events */
|
Uint32 type; /**< Event type, shared with all events */
|
||||||
SDL_CommonEvent common; /**< Common event data */
|
SDL_CommonEvent common; /**< Common event data */
|
||||||
SDL_DisplayEvent display; /**< Window event data */
|
SDL_DisplayEvent display; /**< Display event data */
|
||||||
SDL_WindowEvent window; /**< Window event data */
|
SDL_WindowEvent window; /**< Window event data */
|
||||||
SDL_KeyboardEvent key; /**< Keyboard event data */
|
SDL_KeyboardEvent key; /**< Keyboard event data */
|
||||||
SDL_TextEditingEvent edit; /**< Text editing event data */
|
SDL_TextEditingEvent edit; /**< Text editing event data */
|
||||||
|
|
|
@ -488,6 +488,29 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT"
|
#define SDL_HINT_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT "SDL_GAMECONTROLLER_IGNORE_DEVICES_EXCEPT"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief If set, game controller face buttons report their values according to their labels instead of their positional layout.
|
||||||
|
*
|
||||||
|
* For example, on Nintendo Switch controllers, normally you'd get:
|
||||||
|
*
|
||||||
|
* (Y)
|
||||||
|
* (X) (B)
|
||||||
|
* (A)
|
||||||
|
*
|
||||||
|
* but if this hint is set, you'll get:
|
||||||
|
*
|
||||||
|
* (X)
|
||||||
|
* (Y) (A)
|
||||||
|
* (B)
|
||||||
|
*
|
||||||
|
* The variable can be set to the following values:
|
||||||
|
* "0" - Report the face buttons by position, as though they were on an Xbox controller.
|
||||||
|
* "1" - Report the face buttons by label instead of position
|
||||||
|
*
|
||||||
|
* The default value is "0". This hint may be set at any time.
|
||||||
|
*/
|
||||||
|
#define SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS "SDL_GAMECONTROLLER_USE_BUTTON_LABELS"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background.
|
* \brief A variable that lets you enable joystick (and gamecontroller) events even when your app is in the background.
|
||||||
*
|
*
|
||||||
|
|
|
@ -47,7 +47,7 @@ typedef Sint32 SDL_Keycode;
|
||||||
#define SDLK_SCANCODE_MASK (1<<30)
|
#define SDLK_SCANCODE_MASK (1<<30)
|
||||||
#define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK)
|
#define SDL_SCANCODE_TO_KEYCODE(X) (X | SDLK_SCANCODE_MASK)
|
||||||
|
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDLK_UNKNOWN = 0,
|
SDLK_UNKNOWN = 0,
|
||||||
|
|
||||||
|
@ -317,7 +317,7 @@ enum
|
||||||
|
|
||||||
SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND),
|
SDLK_AUDIOREWIND = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOREWIND),
|
||||||
SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD)
|
SDLK_AUDIOFASTFORWARD = SDL_SCANCODE_TO_KEYCODE(SDL_SCANCODE_AUDIOFASTFORWARD)
|
||||||
};
|
} SDL_KeyCode;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Enumeration of valid key mods (possibly OR'd together).
|
* \brief Enumeration of valid key mods (possibly OR'd together).
|
||||||
|
|
|
@ -61,7 +61,7 @@ extern "C" {
|
||||||
* at the VERBOSE level and all other categories are enabled at the
|
* at the VERBOSE level and all other categories are enabled at the
|
||||||
* CRITICAL level.
|
* CRITICAL level.
|
||||||
*/
|
*/
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_LOG_CATEGORY_APPLICATION,
|
SDL_LOG_CATEGORY_APPLICATION,
|
||||||
SDL_LOG_CATEGORY_ERROR,
|
SDL_LOG_CATEGORY_ERROR,
|
||||||
|
@ -94,7 +94,7 @@ enum
|
||||||
};
|
};
|
||||||
*/
|
*/
|
||||||
SDL_LOG_CATEGORY_CUSTOM
|
SDL_LOG_CATEGORY_CUSTOM
|
||||||
};
|
} SDL_LogCategory;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief The predefined log priorities
|
* \brief The predefined log priorities
|
||||||
|
|
|
@ -40,7 +40,7 @@ typedef enum
|
||||||
SDL_MESSAGEBOX_WARNING = 0x00000020, /**< warning dialog */
|
SDL_MESSAGEBOX_WARNING = 0x00000020, /**< warning dialog */
|
||||||
SDL_MESSAGEBOX_INFORMATION = 0x00000040, /**< informational dialog */
|
SDL_MESSAGEBOX_INFORMATION = 0x00000040, /**< informational dialog */
|
||||||
SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT = 0x00000080, /**< buttons placed left to right */
|
SDL_MESSAGEBOX_BUTTONS_LEFT_TO_RIGHT = 0x00000080, /**< buttons placed left to right */
|
||||||
SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT = 0x00000100, /**< buttons placed right to left */
|
SDL_MESSAGEBOX_BUTTONS_RIGHT_TO_LEFT = 0x00000100 /**< buttons placed right to left */
|
||||||
} SDL_MessageBoxFlags;
|
} SDL_MessageBoxFlags;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -48,7 +48,7 @@ extern "C" {
|
||||||
/* @} */
|
/* @} */
|
||||||
|
|
||||||
/** Pixel type. */
|
/** Pixel type. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_PIXELTYPE_UNKNOWN,
|
SDL_PIXELTYPE_UNKNOWN,
|
||||||
SDL_PIXELTYPE_INDEX1,
|
SDL_PIXELTYPE_INDEX1,
|
||||||
|
@ -62,18 +62,18 @@ enum
|
||||||
SDL_PIXELTYPE_ARRAYU32,
|
SDL_PIXELTYPE_ARRAYU32,
|
||||||
SDL_PIXELTYPE_ARRAYF16,
|
SDL_PIXELTYPE_ARRAYF16,
|
||||||
SDL_PIXELTYPE_ARRAYF32
|
SDL_PIXELTYPE_ARRAYF32
|
||||||
};
|
} SDL_PixelType;
|
||||||
|
|
||||||
/** Bitmap pixel order, high bit -> low bit. */
|
/** Bitmap pixel order, high bit -> low bit. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_BITMAPORDER_NONE,
|
SDL_BITMAPORDER_NONE,
|
||||||
SDL_BITMAPORDER_4321,
|
SDL_BITMAPORDER_4321,
|
||||||
SDL_BITMAPORDER_1234
|
SDL_BITMAPORDER_1234
|
||||||
};
|
} SDL_BitmapOrder;
|
||||||
|
|
||||||
/** Packed component order, high bit -> low bit. */
|
/** Packed component order, high bit -> low bit. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_PACKEDORDER_NONE,
|
SDL_PACKEDORDER_NONE,
|
||||||
SDL_PACKEDORDER_XRGB,
|
SDL_PACKEDORDER_XRGB,
|
||||||
|
@ -84,12 +84,12 @@ enum
|
||||||
SDL_PACKEDORDER_BGRX,
|
SDL_PACKEDORDER_BGRX,
|
||||||
SDL_PACKEDORDER_ABGR,
|
SDL_PACKEDORDER_ABGR,
|
||||||
SDL_PACKEDORDER_BGRA
|
SDL_PACKEDORDER_BGRA
|
||||||
};
|
} SDL_PackedOrder;
|
||||||
|
|
||||||
/** Array component order, low byte -> high byte. */
|
/** Array component order, low byte -> high byte. */
|
||||||
/* !!! FIXME: in 2.1, make these not overlap differently with
|
/* !!! FIXME: in 2.1, make these not overlap differently with
|
||||||
!!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA */
|
!!! FIXME: SDL_PACKEDORDER_*, so we can simplify SDL_ISPIXELFORMAT_ALPHA */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_ARRAYORDER_NONE,
|
SDL_ARRAYORDER_NONE,
|
||||||
SDL_ARRAYORDER_RGB,
|
SDL_ARRAYORDER_RGB,
|
||||||
|
@ -98,10 +98,10 @@ enum
|
||||||
SDL_ARRAYORDER_BGR,
|
SDL_ARRAYORDER_BGR,
|
||||||
SDL_ARRAYORDER_BGRA,
|
SDL_ARRAYORDER_BGRA,
|
||||||
SDL_ARRAYORDER_ABGR
|
SDL_ARRAYORDER_ABGR
|
||||||
};
|
} SDL_ArrayOrder;
|
||||||
|
|
||||||
/** Packed component layout. */
|
/** Packed component layout. */
|
||||||
enum
|
typedef enum
|
||||||
{
|
{
|
||||||
SDL_PACKEDLAYOUT_NONE,
|
SDL_PACKEDLAYOUT_NONE,
|
||||||
SDL_PACKEDLAYOUT_332,
|
SDL_PACKEDLAYOUT_332,
|
||||||
|
@ -112,7 +112,7 @@ enum
|
||||||
SDL_PACKEDLAYOUT_8888,
|
SDL_PACKEDLAYOUT_8888,
|
||||||
SDL_PACKEDLAYOUT_2101010,
|
SDL_PACKEDLAYOUT_2101010,
|
||||||
SDL_PACKEDLAYOUT_1010102
|
SDL_PACKEDLAYOUT_1010102
|
||||||
};
|
} SDL_PackedLayout;
|
||||||
|
|
||||||
#define SDL_DEFINE_PIXELFOURCC(A, B, C, D) SDL_FOURCC(A, B, C, D)
|
#define SDL_DEFINE_PIXELFOURCC(A, B, C, D) SDL_FOURCC(A, B, C, D)
|
||||||
|
|
||||||
|
|
|
@ -430,10 +430,31 @@ extern DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture * texture,
|
||||||
const SDL_Rect * rect,
|
const SDL_Rect * rect,
|
||||||
void **pixels, int *pitch);
|
void **pixels, int *pitch);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Lock a portion of the texture for write-only pixel access.
|
||||||
|
* Expose it as a SDL surface.
|
||||||
|
*
|
||||||
|
* \param texture The texture to lock for access, which was created with
|
||||||
|
* ::SDL_TEXTUREACCESS_STREAMING.
|
||||||
|
* \param rect A pointer to the rectangle to lock for access. If the rect
|
||||||
|
* is NULL, the entire texture will be locked.
|
||||||
|
* \param surface This is filled in with a SDL surface representing the locked area
|
||||||
|
* Surface is freed internally after calling SDL_UnlockTexture or SDL_DestroyTexture.
|
||||||
|
*
|
||||||
|
* \return 0 on success, or -1 if the texture is not valid or was not created with ::SDL_TEXTUREACCESS_STREAMING.
|
||||||
|
*
|
||||||
|
* \sa SDL_UnlockTexture()
|
||||||
|
*/
|
||||||
|
extern DECLSPEC int SDLCALL SDL_LockTextureToSurface(SDL_Texture *texture,
|
||||||
|
const SDL_Rect *rect,
|
||||||
|
SDL_Surface **surface);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Unlock a texture, uploading the changes to video memory, if needed.
|
* \brief Unlock a texture, uploading the changes to video memory, if needed.
|
||||||
|
* If SDL_LockTextureToSurface() was called for locking, the SDL surface is freed.
|
||||||
*
|
*
|
||||||
* \sa SDL_LockTexture()
|
* \sa SDL_LockTexture()
|
||||||
|
* \sa SDL_LockTextureToSurface()
|
||||||
*/
|
*/
|
||||||
extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture);
|
extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture);
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
#define SDL_REVISION "hg-13074:2ede888544ac"
|
#define SDL_REVISION "hg-13229:0b98870c7f72"
|
||||||
#define SDL_REVISION_NUMBER 13074
|
#define SDL_REVISION_NUMBER 13229
|
||||||
|
|
|
@ -59,7 +59,7 @@ typedef struct SDL_version
|
||||||
*/
|
*/
|
||||||
#define SDL_MAJOR_VERSION 2
|
#define SDL_MAJOR_VERSION 2
|
||||||
#define SDL_MINOR_VERSION 0
|
#define SDL_MINOR_VERSION 0
|
||||||
#define SDL_PATCHLEVEL 10
|
#define SDL_PATCHLEVEL 11
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Macro to determine SDL version program was compiled against.
|
* \brief Macro to determine SDL version program was compiled against.
|
||||||
|
|
|
@ -96,7 +96,6 @@ typedef struct SDL_Window SDL_Window;
|
||||||
*/
|
*/
|
||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
/* !!! FIXME: change this to name = (1<<x). */
|
|
||||||
SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */
|
SDL_WINDOW_FULLSCREEN = 0x00000001, /**< fullscreen window */
|
||||||
SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */
|
SDL_WINDOW_OPENGL = 0x00000002, /**< window usable with OpenGL context */
|
||||||
SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */
|
SDL_WINDOW_SHOWN = 0x00000004, /**< window is visible */
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -278,6 +278,7 @@ SDL_HapticStopEffect
|
||||||
SDL_HapticUnpause
|
SDL_HapticUnpause
|
||||||
SDL_HapticUpdateEffect
|
SDL_HapticUpdateEffect
|
||||||
SDL_Has3DNow
|
SDL_Has3DNow
|
||||||
|
SDL_HasARMSIMD
|
||||||
SDL_HasAVX
|
SDL_HasAVX
|
||||||
SDL_HasAVX2
|
SDL_HasAVX2
|
||||||
SDL_HasAVX512F
|
SDL_HasAVX512F
|
||||||
|
@ -356,6 +357,7 @@ SDL_LockJoysticks
|
||||||
SDL_LockMutex
|
SDL_LockMutex
|
||||||
SDL_LockSurface
|
SDL_LockSurface
|
||||||
SDL_LockTexture
|
SDL_LockTexture
|
||||||
|
SDL_LockTextureToSurface
|
||||||
SDL_Log
|
SDL_Log
|
||||||
SDL_LogCritical
|
SDL_LogCritical
|
||||||
SDL_LogDebug
|
SDL_LogDebug
|
||||||
|
|
|
@ -275,6 +275,7 @@
|
||||||
++'_SDL_HapticUnpause'.'SDL2.DLL'..'SDL_HapticUnpause'
|
++'_SDL_HapticUnpause'.'SDL2.DLL'..'SDL_HapticUnpause'
|
||||||
++'_SDL_HapticUpdateEffect'.'SDL2.DLL'..'SDL_HapticUpdateEffect'
|
++'_SDL_HapticUpdateEffect'.'SDL2.DLL'..'SDL_HapticUpdateEffect'
|
||||||
++'_SDL_Has3DNow'.'SDL2.DLL'..'SDL_Has3DNow'
|
++'_SDL_Has3DNow'.'SDL2.DLL'..'SDL_Has3DNow'
|
||||||
|
++'_SDL_HasARMSIMD'.'SDL2.DLL'..'SDL_HasARMSIMD'
|
||||||
++'_SDL_HasAVX'.'SDL2.DLL'..'SDL_HasAVX'
|
++'_SDL_HasAVX'.'SDL2.DLL'..'SDL_HasAVX'
|
||||||
++'_SDL_HasAVX2'.'SDL2.DLL'..'SDL_HasAVX2'
|
++'_SDL_HasAVX2'.'SDL2.DLL'..'SDL_HasAVX2'
|
||||||
++'_SDL_HasAVX512F'.'SDL2.DLL'..'SDL_HasAVX512F'
|
++'_SDL_HasAVX512F'.'SDL2.DLL'..'SDL_HasAVX512F'
|
||||||
|
@ -353,6 +354,7 @@
|
||||||
++'_SDL_LockMutex'.'SDL2.DLL'..'SDL_LockMutex'
|
++'_SDL_LockMutex'.'SDL2.DLL'..'SDL_LockMutex'
|
||||||
++'_SDL_LockSurface'.'SDL2.DLL'..'SDL_LockSurface'
|
++'_SDL_LockSurface'.'SDL2.DLL'..'SDL_LockSurface'
|
||||||
++'_SDL_LockTexture'.'SDL2.DLL'..'SDL_LockTexture'
|
++'_SDL_LockTexture'.'SDL2.DLL'..'SDL_LockTexture'
|
||||||
|
++'_SDL_LockTextureToSurface'.'SDL2.DLL'..'SDL_LockTextureToSurface'
|
||||||
++'_SDL_Log'.'SDL2.DLL'..'SDL_Log'
|
++'_SDL_Log'.'SDL2.DLL'..'SDL_Log'
|
||||||
++'_SDL_LogCritical'.'SDL2.DLL'..'SDL_LogCritical'
|
++'_SDL_LogCritical'.'SDL2.DLL'..'SDL_LogCritical'
|
||||||
++'_SDL_LogDebug'.'SDL2.DLL'..'SDL_LogDebug'
|
++'_SDL_LogDebug'.'SDL2.DLL'..'SDL_LogDebug'
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue