Commit graph

2425 commits

Author SHA1 Message Date
Sam Lantinga
6a11032c87 Fixed bug #570
SDL_SemWaitTimeout in src/thread/generic/SDL_syssem.c line 179 (SVN trunk):

--sem->count;

should be

if (retval == 0) {
    --sem->count;
}

Without this, sem->count will underflow on timeout effectively breaking the
semaphore. It appears that the implementation has been wrong since the initial
revision.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403843
2009-09-21 07:32:26 +00:00
Sam Lantinga
a9c2258117 Updated the version to 1.2.14 for the next release.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403842
2009-09-21 07:28:03 +00:00
Sam Lantinga
b0f6c3e99b Fixed bug #562
this patch by Diego Pettenò <flameeyes@gentoo.org> for SDL-1.2:

The attached patch applies over latest ~arch SDL version, and allows to use the
xinerama support to launch an application full screened on the head "0".

The SDL_VIDEO_FULLSCREEN_HEAD environment variable sets the head on which the
full screen will be displayed, but if you set it to 0, the code simply ignores
it as unset. My patch changes the unset value to -1, so that the 0 value can be
used correctly. Without this, trying to get fullscreen on head 0 would get the
same result than not having xinerama enabled at all.

http://sources.gentoo.org/media-libs/libsdl/files/libsdl-1.2.11-xinerama-head-0.patch

SDL-1.3 doesnt seem to have any code like this, but it's still good for SDL-1.2

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403841
2009-09-21 07:20:51 +00:00
Sam Lantinga
7b806a14f0 The sound manager code is outdated and should only be used on Mac OS 9 now.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403840
2009-09-21 07:03:29 +00:00
Ryan C. Gordon
79e2c42e21 Use correct value when calculating audio conversion length.
Fixes Bugzilla #477.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403839
2009-09-21 06:18:52 +00:00
Ryan C. Gordon
b5dc26cf71 1.2 Quartz video: Ripped out QuickDraw and QuickTime.
Now we use the software path for YUV, and CoreGraphics for 2D stuff.

There are several other 10.6 fixes in here, too...now we can build a 64-bit
SDL for Snow Leopard!

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403838
2009-09-21 06:08:23 +00:00
Ryan C. Gordon
ddb6f9bd6d Patched to compile on Mac OS X <= 10.4 SDKs.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403836
2009-09-21 04:34:22 +00:00
Patrice Mandin
4ba3f48db5 Make the list NULL terminated.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403833
2009-09-20 18:14:35 +00:00
Patrice Mandin
4c2eb9da70 Forgot to allocate memory for native video mode data.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403832
2009-09-20 18:05:52 +00:00
Patrice Mandin
90c7bf5459 Oops, need to compile first, before commit.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403831
2009-09-20 12:48:51 +00:00
Patrice Mandin
8e0b16286d Set video mode, allocate buffers, and enable new Milan video xbios support, need a tester now :).
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403830
2009-09-20 12:46:46 +00:00
Patrice Mandin
8eeb1d6d6e Define flags for double line and c2p operations. More Milan video work.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403829
2009-09-20 12:08:51 +00:00
Patrice Mandin
266ad8cf88 Use loop to allocate needed buffers, instead of code duplication. Add missing header.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403826
2009-09-19 21:58:59 +00:00
Patrice Mandin
1fda3574b9 Enumerates custom modes
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403824
2009-09-19 13:31:41 +00:00
Patrice Mandin
76e370437b Start Milan video support
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403822
2009-09-19 13:21:05 +00:00
Patrice Mandin
ccc4e6507a Preliminary work to support the Milan video bios, that will gives access to 24 or 32 bpp modes. I used the svga driver as model to dynamically build video modes list.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403820
2009-09-19 12:46:00 +00:00
Ryan C. Gordon
1aeda60ecc GCC 3.03 support on OS/2.
Fixes Bugzilla #588.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403801
2009-09-14 00:08:12 +00:00
Ryan C. Gordon
0df68f95cb Made NAS target dynamic, so you can safely include it in shipping binaries.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403800
2009-09-13 22:19:56 +00:00
Ryan C. Gordon
dfa102877a Put some extra parentheses around some logic, to clarify order of operations.
Fixes Bugzilla #740.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403799
2009-09-12 19:41:54 +00:00
Ryan C. Gordon
a787ace055 Fixed CD-ROM code to work with Mac OS X 10.6 SDK and 64-bit targets.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403798
2009-09-12 15:06:16 +00:00
Ryan C. Gordon
ea2239b3e6 Fixed CoreAudio to compile with Mac OS X 10.6 SDK and 64-bit targets.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403797
2009-09-12 15:04:32 +00:00
Ryan C. Gordon
39abd7a238 Updated some URLs in the comments.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403796
2009-09-12 14:05:39 +00:00
Ryan C. Gordon
ec866d8b96 Fixed compiler warning on 64-bit systems (but this is still broken, really).
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403795
2009-09-12 13:16:33 +00:00
Ryan C. Gordon
4f6a3faff5 Fixed compiler warnings on Mac OS X 10.6 SDK.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403794
2009-09-12 13:15:27 +00:00
Ryan C. Gordon
4376c393e3 Don't use NASM on x86_64 builds.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403793
2009-09-12 13:10:16 +00:00
Ryan C. Gordon
2e36ae9839 Disable Sound Manager support on Mac OS X.
It's an OS 9 API that was exposed via Carbon, but is gone in the 10.6 SDK.
 OS X uses CoreAudio. We only had it in here for debugging purposes anyhow,
 as SDL would never use it unless forced to with an environment variable.

It remains in SDL for OS 9, of course.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403792
2009-09-12 12:50:25 +00:00
Ryan C. Gordon
0e083b2a15 Patched X11 code to compile on Mac OS X 10.6 SDK.
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403791
2009-09-12 06:25:36 +00:00
Sam Lantinga
0add77f02c Fixed bug #746
Fixed freeze when trying to memset with 0 length

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403757
2009-08-07 10:20:40 +00:00
Sam Lantinga
e0fc48cf28 Fixed type size for test_bit()
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403732
2009-08-02 20:45:40 +00:00
Ryan C. Gordon
7d38d7ef76 Patch from Fedora project to fix crashes with SDL_HasSSE() on amd64.
Fixes Bugzilla #760. (...and bugzilla.redhat.com #487720).

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403683
2009-07-01 19:06:31 +00:00
Sam Lantinga
a220b6ab6c Date: Fri, 24 Apr 2009 17:47:07 +0200
From: Stefan Klug
Subject: Re: [SDL] SVN doesn't compile for wince

the patch applied for Revision 4483 was seemingly not checked for side
effects.
It broke the WinCE build.
The attached patch should fix these problems. I'm not using SDL 1.2 on
CE anymore, and therefore haven't tested the patch... but at least it
compiles ;-)

Regards Stefan

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403602
2009-05-07 12:40:16 +00:00
Sam Lantinga
aaf1b51fe0 Fixed dynamic loading on Windows CE
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403599
2009-05-07 12:03:51 +00:00
Patrice Mandin
881a4d0755 Disable debug code
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403587
2009-04-27 10:33:21 +00:00
Patrice Mandin
2699d4f82a Enable Xbios audio for Magic
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403586
2009-04-26 07:15:29 +00:00
Patrice Mandin
9943e1dd38 Enable Xbios audio for Magic
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403585
2009-04-26 07:14:29 +00:00
Patrice Mandin
5a62fe69b5 Add Teamtap autodetection, to avoid generating ghost events if it is not present
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403584
2009-04-24 19:04:02 +00:00
Sam Lantinga
df5650a8ad Fixed bug #421
Comment #3 From  esigra@gmail.com   2008-04-09 11:46:46   (-) [reply] -------

This bug also needs to be fixed for SDL_GetRGB and SDL_GetRGBA (those should
not change the format of the surface either). Until this is fixed, I still need
to const_cast the format parameter in calls to those functions.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403581
2009-04-13 09:03:35 +00:00
Sam Lantinga
3b082cfe3a Fixed bug #675
Description From  maf6@cornell.edu   2009-01-10 14:07:52   (-) [reply]

Assuming the SDL project doesn't just want to pick these up from dinput8.lib or
whatever instead, the definitions in SDL_dx5video.c should be:

const DIDATAFORMAT c_dfDIKeyboard = { sizeof(DIDATAFORMAT),
sizeof(DIOBJECTDATAFORMAT), 0x00000002, 256, 256, KBD_fmt };
const DIDATAFORMAT c_dfDIMouse = { sizeof(DIDATAFORMAT),
sizeof(DIOBJECTDATAFORMAT), 0x00000002, 16, 7, PTR_fmt };
const DIDATAFORMAT c_dfDIJoystick = { sizeof(DIDATAFORMAT),
sizeof(DIOBJECTDATAFORMAT), 0x00000001, 80, 44, JOY_fmt };

This way the call to IDirectInputDevice2_SetDataFormat in SDL_dx5events.c will
succeed on x64.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403580
2009-04-13 08:49:41 +00:00
Sam Lantinga
86701def0d Fixed bug #619
Description From  Tim Angus   2008-08-31 03:38:36   (-) [reply]

When pressing "system keys" e.g. ALT+F4 etc., the default for the windib driver
is to ignore them completely, whereas with the directx driver they're handled
(badly as it turns out).

As the windib driver is the default, I assume its behaviour is considered
correct, so the following patch makes the directx driver the same in this
regard.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403579
2009-04-13 08:44:48 +00:00
Sam Lantinga
0cc0d8eb60 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.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403578
2009-04-13 08:42:09 +00:00
Sam Lantinga
2ff43fab29 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
(http://bugzilla.libsdl.org/attachment.cgi?id=316) fixes this.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403577
2009-04-13 08:38:04 +00:00
Sam Lantinga
9b8a930448 Fixed bug #526
Comment #1 From  Simon Howard   2009-03-20 16:50:56

Hi,

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.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403576
2009-04-13 00:53:12 +00:00
Sam Lantinga
140163c34e Fixed bug #611
From  Tim Angus   2008-08-12 11:18:06

I'm one of the maintainers of ioquake3.org, 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
(http://bugzilla.libsdl.org/show_bug.cgi?id=265). 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.

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403572
2009-04-02 04:43:36 +00:00
Sam Lantinga
f38807a19a Added credits for the PS3 code
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403571
2009-04-02 04:09:40 +00:00
Sam Lantinga
253ad7146d Hello.
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 >

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403570
2009-04-02 04:06:55 +00:00
Sam Lantinga
910c3af8d3 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

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403560
2009-03-17 03:58:53 +00:00
Sam Lantinga
c413a1c589 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)

--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403534
2009-02-17 05:25:25 +00:00
Sam Lantinga
008ece6f9a GAPI fixes from Stefan Klug
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403531
2009-02-16 22:32:34 +00:00
Ryan C. Gordon
10fcf368c7 Corrected documentation for SDL_rwops::read()
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403515
2009-01-30 01:40:44 +00:00
Patrice Mandin
c2c1b45685 Update Email
--HG--
branch : SDL-1.2
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/branches/SDL-1.2%403507
2009-01-15 22:16:04 +00:00