This should reduce unnecessary hardware interrupts. Apparently improves the
ALSA target on some systems.
Fixes Bugzilla #1170.
Thanks to Paul Cercueil for the patch!
--HG--
branch : SDL-1.2
The license on IOHIDLib.h says we have to distribute a copy of the APSL with
every copy of SDL, and include a "prominent notice" in the documentation, and
that's annoying for something that's only there because Apple forgot to copy
a file in an ancient SDK.
--HG--
branch : SDL-1.2
The new behavior is triggered by setting the environment variable
SDL_FBCON_DONT_CLEAR.
This is useful in certain circumstances (specifically: a game launcher on an
embedded device can leave a "now loading!" screen on the framebuffer while
another process is starting up).
Fixes Bugzilla #1251.
Thanks to Paul Cercueil for the patch!
--HG--
branch : SDL-1.2
I'm not sure if there was a way to make CGLSetFullScreen() work, but the
Cocoa path works fine on all Intel Macs.
Please note that the "official" way to do fullscreen in 10.7 is just to make
a window the size of the display mode, and OS X is now smart enough to
recognize this as "fullscreen", but this helps earlier versions of the OS in
any case.
--HG--
branch : SDL-1.2
"Centering" is a little off-center, vertically. Apparently in non-fullscreen
apps, this is more aestetically pleasing or something.
Fixes positioning on fullscreen video modes on Mac OS X.
--HG--
branch : SDL-1.2
Mac OS X Lion (10.7) always returns NULL from CGDisplayBaseAddress(), so all
the direct framebuffer access code has been replaced with something a little
higher level. This also necessitated taking out the scary SDL_DOUBLEBUF
codepath that was trying to time out vsync by hand. :)
--HG--
branch : SDL-1.2
Newer kernels seem to report bogus axes in the higher ranges, for example
with a standard PlayStation 3 controller plugged in via USB.
--HG--
branch : SDL-1.2
Apparently these pointers can change if the user has multiple displays and
moves a window between them, and probably other similar cases.
Thanks to Kirk Baker for the patch!
--HG--
branch : SDL-1.2
Gleb Natapov to sdl
If application installs SIGINT/SIGTERM signal handler with
sigaction(SA_SIGINFO) syscall before initializing SDL, after
initialization
of SDL signal handler will be reinstalled without SA_SIGINFO flag which
brings havoc when the signal handler is called. The breakage is done by
SDL_QuitInit()/SDL_QuitQuit() function. They use signal() to detect that
signal handler is already installed even in sigaction() is available.
--HG--
branch : SDL-1.2
Stephen Anthony to SDL
Using SDL_VIDEO_CENTERED in Linux OpenGL mode issue an unwanted
ConfigureNotify event *after* the SDL screen has already been resized.
When going from a smaller to a larger screen, this event causes the mouse
tracking to be clamped at the *smaller* screen size, even though that
screen no longer exists.
The fix is to not issue a ConfigureNotify when the window is moved because
of the SDL_VIDEO_CENTERED environment variable. The included patch fixes
this bug. It seems the hints must be set before the window is moved.
--HG--
branch : SDL-1.2
nasm-2.09 makes `elf' alias to `elf32', thus __OUTPUT_FORMAT__ macro
becomes `elf32' instead of `elf' (on x86). Unmatched macro value causes
omitting .note.GNU-stack marker and creates ELFs with executable stack.
This is unneeded and attracts security policies like SELinux.
--HG--
branch : SDL-1.2
Chusslove Illich 2011-02-13 04:30:28 PST
Currently SDL_JOYSTICK_DEVICE environment variable can be used to add
exactly one topmost device. I think it would be nice if one could also set
several devices (e.g. a stick and a throttle) in this way, as a colon-
separated list. The attached patch implements this
--HG--
branch : SDL-1.2
kwm@rainbow-runner.nl 2011-01-30 06:28:27 PST
When building sdl 1.2.14 with the Clang compiler http://clang.llvm.org .
The build fails in src/video/mmx.h with the following error:
--------------------------------------------------
./src/video/SDL_RLEaccel.c:831:5: error: invalid operand for instruction
CHOOSE_BLIT(RLECLIPBLIT, alpha, fmt);
^
./src/video/SDL_RLEaccel.c:831:17: note: instantiated from:
CHOOSE_BLIT(RLECLIPBLIT, alpha, fmt);
^
./src/video/SDL_RLEaccel.c:831:5: note: instantiated from:
CHOOSE_BLIT(RLECLIPBLIT, alpha, fmt);
^
./src/video/SDL_RLEaccel.c:647:23: note: instantiated from:
blitter(2, Uint8, ALPHA_BLIT16_565MMX); \
^
./src/video/SDL_RLEaccel.c:282:4: note: instantiated from:
movq_r2m(mm3, *dstp); \
^
In file included from ./src/video/SDL_RLEaccel.c:99:
./src/video/mmx.h:379:28: note: instantiated from:
#define movq_r2m(reg, var) mmx_r2m(movq, reg, var)
^
<scratch space>:192:1: note: instantiated from:
"movq"
^
<inline asm>:1:2: note: instantiated into assembly here
movq %mm3, %dx
^
--------------------------------------------------
According to the clang developers this is a invalid inline assembly.
Using the attached patch from the last commit in the below bug report fixes the
compile.
More details from: http://llvm.org/bugs/show_bug.cgi?id=6730
--HG--
branch : SDL-1.2
the pthread implementation of SDL_SemWaitTimeout() uses busy waiting, while
pthread's sem_timedwait() does work. Attached are patches that make use of it
--HG--
branch : SDL-1.2
Markus Rathgeb 2011-01-23 14:34:23 PST
With kernel 2.6.31 the struct input_absinfo defined in linux/input.h changed.
A field "__s32 resolution" was added at the end of the struct.
Because the macro EVIOCGABS(abs) is using the struct input_absinfo, it would be
better (IMHO) to change the declaration of variable values to
"int values[sizeof(struct input_absinfo) / sizeof(int)];" or using "struct
input_absinfo" directly.
--HG--
branch : SDL-1.2
I came across further issues with SDL 1.2.14 on win32 in combination
with touch screens.
When you touched the screen older SDLs reported
SDL_MOUSEMOTION to the touch position
SDL_MOUSEBUTTONDOWN at the touch position
1.2.14 reports
SDL_MOUSEBUTTONDOWN at the last mouse position before the touch
and then a
SDL_MOUSEMOTION to the touch position
I found that to fix it in the file SDL_sysevents.c i had to put back the
following lines from 1.2.12 to get it working correctly again:
if ( mouse_relative ) {
/* RJR: March 28, 2000
report internal mouse position if in relative mode */
x = 0; y = 0;
} else {
x = (Sint16)LOWORD(lParam);
y = (Sint16)HIWORD(lParam);
#ifdef _WIN32_WCE
if (SDL_VideoSurface)
GapiTransform(this->hidden->userOrientation,
this->hidden->hiresFix, &x, &y);
#endif
}
posted = SDL_PrivateMouseButton(
state, button, x, y);
where there was only
posted = SDL_PrivateMouseButton(
state, button, 0, 0);
in 1.2.14 (appx. line 484)
please feel free to put that change into any SDL lib you like in any way
you like and thanks for your great work !
--HG--
branch : SDL-1.2
Ozkan Sezer 2010-02-06 12:31:06 PST
Hi:
Here are some small fixes for compiling SDL against mingw-w64.
(see http://mingw-w64.sourceforge.net/ . Despite the name, it
supports both win32 and win64.) Two patches, one for SDL-1.2
and one for SDL-1.3 attached.
src/audio/windx5/directx.h and src/video/windx5/directx.h (both
SDL-1.2 and SDL-1.3.) I get compilation errors about some union
not having a member named u1 and alike, because of other system
headers being included before this one and them already defining
DUMMYUNIONNAME and stuff. This header probably assumes that those
stuff are defined in windef.h, but mingw-w64 headers define them
in _mingw.h. Easily fixed by moving NONAMELESSUNION definition to
the top of the file. SDL_dx5yuv.c (SDL-1.2-only) also needs to
include the header before SDL_video.h to avoid the same problem.
src/thread/win32/SDL_systhread.c (both SDL-1.2 and SDL-1.3.) :
The __GNUC__ case for pfnSDL_CurrentBeginThread is 32-bit centric
because _beginthreadex returns uintptr_t, not unsigned long which
is 32 bits in win64. Changing the return type to uintptr_t fixes
it.
Hope these are useful. Thanks.
--HG--
branch : SDL-1.2