Mon, 13 Apr 2009 08:42:09 +0000Fixed bug #618 SDL-1.2
Sam Lantinga [Mon, 13 Apr 2009 08:42:09 +0000] rev 4170
Fixed bug #618

Description From Tim Angus 2008-08-30 12:23:56 (-) [reply]

As we all know SDL 1.2 doesn't handle dead keys well since one key press
potentially equals two (or more) characters. For example, on many layouts,
keying <backquote>,<space> results in <no character>,<backquote><space>. Since
the unicode member of the SDL_keysym struct only has room for one character,
only one can be returned.

On Linux, the first character is returned. On Windows however, unless the exact
number of characters generated by the keypress is 1, nothing is returned. The
following patch addresses this inconsistency.

Updated patch which includes a further fix to the handling of the numpad when
numlock is on. This further fix is courtesy Amanieu d'Antras.

Mon, 13 Apr 2009 08:38:04 +0000Fixed bug #611 SDL-1.2
Sam Lantinga [Mon, 13 Apr 2009 08:38:04 +0000] rev 4169
Fixed bug #611

Comment #22 From Tim Angus 2009-04-02 08:45:52 (-) [reply] -------

First of all, thanks for committing this. Unfortunately it seems the patch has
only partially applied to wincommon/SDL_sysevents.c and currently a clean SDL
1.2 checkout doesn't build. The new patch here
( fixes this.

Mon, 13 Apr 2009 00:53:12 +0000Fixed bug #526 SDL-1.2
Sam Lantinga [Mon, 13 Apr 2009 00:53:12 +0000] rev 4168
Fixed bug #526

Comment #1 From Simon Howard 2009-03-20 16:50:56


I'm the author of Chocolate Doom, one of the other source ports that James
mentioned. This is a patch against the current SVN version of SDL 1.2 that
fixes the bug. It has been tested and hopefully should be obviously correct
from examining the changes. I'll give a brief explanation.

When the palette is set with SDL_SetPalette, the IDirectDrawPalette_SetEntries
DirectX function is invoked. However, when this happens, a WM_PALETTECHANGED
message is sent to the window.

A WM_PALETTECHANGED message can also be received if the palette is changed for
some other reason, like if the system palette is changed. Therefore, the
palette change handler (DX5_PaletteChanged) has code to deal with this case.
It distinguishes "expected" palette changes (set with SDL_SetPalette) from
"unexpected" palette changes using the colorchange_expected variable, which is
set before calling IDirectDrawPalette_SetEntries. However, the code to set
this variable is missing in the fullscreen code path. By setting this
variable, the palette change is handled properly and the freezes go away.

Thu, 02 Apr 2009 04:43:36 +0000Fixed bug #611 SDL-1.2
Sam Lantinga [Thu, 02 Apr 2009 04:43:36 +0000] rev 4167
Fixed bug #611

From Tim Angus 2008-08-12 11:18:06

I'm one of the maintainers of, an updated version of the
Quake 3 engine. Relatively recently, we moved ioq3 to use SDL as a
replacement for 95% of the platform specific code that was there. On the
whole it's doing a great job but unfortunately since the move we've been
getting complaints about the quality of the mouse input on the Windows
platform to the point where for many the game is unplayable. Put in
other terms, the current stable SDL 1.2 is basically not fit for purpose
if you need high quality mouse input as you do in a first person shooter.

Over the weekend I decided to pull my finger out and actually figure out
what's going on. There are basically two major problems. Firstly, when
using the "windib" driver, mouse input is gathered via the WM_MOUSEMOVE
message. Googling for this indicates that often this is known to result
in "spurious" and/or "missing" mouse movement events; this is the
primary cause of the poor mouse input. The second problem is that the
"directx" driver does not work at all in combination with OpenGL meaning
that you can't use DirectInput if your application also uses OpenGL. In
other words you're locked into using the "windib" driver and its poor
mouse input.

In order to address these problems I've done the following:

* Remove WM_MOUSEMOVE based motion event generation and replace with
calls to GetCursorPos which seems much more reliable. In order to
achieve this I've moved mouse motion out into a separate function that
is called once per DIB_PumpEvents.

* Remove the restriction on the "directx" driver being inoperable in
combination with OpenGL. There is a bug for this issues that I've
hijacked to a certain extent
( I'm the first to admit
I don't really understand why this restriction is there in the first
place. The commit message for the bug fix that introduced this
restriction (r581) isn't very elaborate and I couldn't see any other bug
tracking the issue. If anyone has more information on the bug that was
avoided by r581 it would be helpful as I/someone could then look into
addressing the problem without disabling the "directx" driver.

* I've also removed the restriction on not being allowed to use
DirectInput in windowed mode. I couldn't see any reason for this, at
least not from our perspective. I have my suspicions that it'll be
something like matching up the cursor with the mouse coordinates...

* I bumped up the DirectInput API used to version 7 in order to get
access to mouse buttons 4-7. I've had to inject a little bit of the DX7
headers into SDL there as the MinGW ones aren't up to date in this respect.

Thu, 02 Apr 2009 04:09:40 +0000Added credits for the PS3 code SDL-1.2
Sam Lantinga [Thu, 02 Apr 2009 04:09:40 +0000] rev 4166
Added credits for the PS3 code

Thu, 02 Apr 2009 04:06:55 +0000Hello. SDL-1.2
Sam Lantinga [Thu, 02 Apr 2009 04:06:55 +0000] rev 4165

This patch provides basic support for video on the Sony PS3
Linux framebuffer. Scaling, format-conversion, and drawing is
done from the SPEs, so there is little performance impact to
PPE applications. This is by no means production quality code,
but it is a very good start and a good example of how to use the
PS3's hardware capabilities to accelerate video playback on
the box.

The driver has been verified to work with ffplay, mplayer and xine.
This piece of software has been developed at the IBM R&D Lab
in Boeblingen, Germany and is now returned to the community.

Enjoy !

Signed-off-by: D.Herrendoerfer < d.herrendoerfer [at] de [dot] ibm [dot] com >

Tue, 17 Mar 2009 03:58:53 +0000Date: Fri, 6 Mar 2009 12:41:17 -0800 SDL-1.2
Sam Lantinga [Tue, 17 Mar 2009 03:58:53 +0000] rev 4164
Date: Fri, 6 Mar 2009 12:41:17 -0800
From: scott mc
Subject: Re: [SDL] patch for building on haiku

Ok. I've combined the various Haiku patches for the SDL-1.2 branch
into one .diff file

Tue, 17 Feb 2009 05:25:25 +0000Fixed bug #646 SDL-1.2
Sam Lantinga [Tue, 17 Feb 2009 05:25:25 +0000] rev 4163
Fixed bug #646

Description From Pavol Rusnak 2008-11-27 05:51:44 (-) [reply]

src/video/fbcon/SDL_fbvideo.c:283: warning: ordered comparison of pointer with
integer zero

The source code is

if (fgets(line,length,f)<=0)

Suggest replace with

if (fgets(line,length,f) == 0)

Mon, 16 Feb 2009 22:32:34 +0000GAPI fixes from Stefan Klug SDL-1.2
Sam Lantinga [Mon, 16 Feb 2009 22:32:34 +0000] rev 4162
GAPI fixes from Stefan Klug

Fri, 30 Jan 2009 01:40:44 +0000Corrected documentation for SDL_rwops::read() SDL-1.2
Ryan C. Gordon [Fri, 30 Jan 2009 01:40:44 +0000] rev 4161
Corrected documentation for SDL_rwops::read()