Commit Graph

77 Commits

Author SHA1 Message Date
Sam Lantinga
58aa94ee7f Fixed some dependency issues with SDL_revision.h 2009-01-04 05:52:14 +00:00
Sam Lantinga
befb0f7f42 Updated copyright date 2008-12-08 00:27:32 +00:00
Sam Lantinga
9c4b835e49 Final merge of Google Summer of Code 2008 work...
Port SDL 1.3 to the Nintendo DS
by Darren Alton, mentored by Sam Lantinga
2008-08-27 15:10:03 +00:00
Sam Lantinga
fef51d48dc Date: Wed, 14 Nov 2007 22:20:27 -0500
From: Calvin Vette
Subject: Fix to compile SDL-1.2 SVN on OS X Leopard

I found I needed to add a conditional check for Leopard to compile
cleanly on 1.2-SVN (20071114):

#include <AudioUnit/AudioUnit.h>
#ifdef AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER
#include <AudioUnit/AUNTComponent.h>
#endif

where there is now just:
#include <AudioUnit/AudioUnit.h>
2007-12-28 18:16:42 +00:00
Patrice Mandin
7ae5ef388e Use correct function to free allocated mem 2006-09-05 19:32:35 +00:00
Sam Lantinga
4d17a22012 MacOS Classic is no longer supported. 2006-08-10 14:54:23 +00:00
Sam Lantinga
6bc598ea61 SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head. 2006-07-10 21:04:37 +00:00
Sam Lantinga
165c228d8e Date: Mon, 8 May 2006 14:19:30 -0700
From: Bob Ippolito
Subject: SDL trunk (r2346) and Mac OS X

As for all the Carbon warnings.. the two File Manager ones should be
easy to get rid of, the QuickDraw ones won't be so easy since that
requires actual refactoring.

PBUnmountVol -> FSEjectVolumeSync
FSClose -> FSCloseFork
2006-05-09 07:52:04 +00:00
Sam Lantinga
4ffa1daabc Make sure code is only compiled if the appropriate subsystem is enabled 2006-04-14 04:46:47 +00:00
Sam Lantinga
e1ae9a0b81 Fixed bug #175
Removed obsolete .cvsignore files... whee!
2006-03-23 21:39:58 +00:00
Sam Lantinga
310df05e46 *** empty log message *** 2006-03-21 16:04:44 +00:00
Sam Lantinga
b12fa835ee Fixed bug #46
Date: Fri, 13 Jan 2006 18:09:45 -0500
From: mhall4400 vipmail kvcc edu
Subject: Possible SDL bug

Greetings

I believe Ive come across a bug in your SDL product (1.2.9), in the CD-ROM
control portion of the library.

When calling the SDL_CDPlay() function to play the last track of a CD using the
offset and length from an SDL_CD structure generated by SDL_CDOpen(), I get the
following error from a call to SDL_Error():

mciSendCommand() error: The specified parameter is out of range for the
specified command.

The code returning the error is:
SDL_CDPlay(g_playingDriveSDLCD,
g_playingDriveSDLCD->track[trackNumberInt].offset,
g_playingDriveSDLCD->track[trackNumberInt].length)

Subtracting one from the length of the provided length seems to repair the
problem:
SDL_CDPlay(g_playingDriveSDLCD,
g_playingDriveSDLCD->track[trackNumberInt].offset,
(g_playingDriveSDLCD->track[trackNumberInt].length) - 1)

Ive replicated this problem on Windows 98 SE (several months since last
patch), fully-patched Window ME, seldom-patched Windows XP SP1, and
fully-patched Windows XP SP2.

While investigating the issue, I came across a line in your librarys win32
source code in file \src\cdrom\win32\SDL_syscdrom.c (source code zip archive
from your download page), function: SDL_SYS_CDGetTOC(), line 226 where you add
1 to the value for length to fix MCI last track length bug.  This may be the
source of the issue (because subtracting 1 from the length seems to resolve the
issue).  Microsoft may have patched the referenced bug since you wrote that
line.

Mike Hall
2006-03-14 05:34:39 +00:00
Sam Lantinga
887d7dce86 Cleaning up warnings on MacOS X 2006-03-09 06:33:21 +00:00
Sam Lantinga
aedd3e4511 QNX changes from Mike Gorchak 2006-03-08 01:55:32 +00:00
Sam Lantinga
f496c3b272 Updated for Dreamcast KOS June 2005 snapshot:
http://cadcdev.sourceforge.net/svn/snapshots/
http://gamedev.allusion.net/softprj/kos/dcsetup.php
2006-03-02 13:16:02 +00:00
Sam Lantinga
62c5e3a5d5 Fixed a bunch of 64-bit compatibility problems 2006-03-01 09:43:47 +00:00
Sam Lantinga
aaf71291d0 Updated OS/2 build, yay! 2006-02-26 19:30:21 +00:00
Sam Lantinga
e2c692b018 Date: Sun, 26 Feb 2006 11:25:09 +0900
From: Hayashi Naoyuki
Subject: Re: [SDL] CVS stable again, please update SDL ports

Some problems are caused on Tru64 UNIX.
If applying SDL12-osf1.path, these problems are fixed.


1. configure-script say "recursive mutexes... no" and "pthread
semaphores... no".
checking for pthreads... yes
checking for recursive mutexes... no
checking for pthread semaphores... no

This is because it compiled without pthread_cflags and pthread_lib when
checking recursive mutexes and pthread semaphores.


2. Compiling src/audio/mme/SDL_mmeaudio.c fails.
cc: Severe: ./src/audio/mme/SDL_mmeaudio.c, line 25: Cannot find file
<mme_api.h> specified in #include directive. (noinclfilef)
#include <mme_api.h>
-^

This is because BUILD_CFLAGS is wrong.


3. Compiling src/cdrom/osf/SDL_syscdrom.c fails.
cc: Warning: ./src/cdrom/osf/SDL_syscdrom.c, line 176: Too few actual
parameters in the invocation of the macro "SDL_stack_alloc". (toofewactuals)
        cdpath = SDL_stack_alloc(len);
------------------------------------^
cc: Error: ./src/cdrom/osf/SDL_syscdrom.c, line 176: Invalid expression.
(badexpr)
        cdpath = SDL_stack_alloc(len);
-----------------^

SDL_stack_alloc is defined in include/SDL_stdinc.h.
#define SDL_stack_alloc(type, count)    (type*)alloca(sizeof(type)*count)


4. Linking fails if running configure with --enable-x11-shared=yes.
/usr/ccs/bin/ld:
Warning: Unresolved:
p_XData32


5. Compiling src/video/x11/SDL_x11dyn.c fails if running configure with
--enable-x11-shared=no.
cc: Error: ./src/video/x11/SDL_x11sym.h, line 149: In this statement,
"_SmtBufferOverflow" is not declared. (undeclared)
SDL_X11_SYM(1,void,_SmtBufferOverflow,(Display *dpy,register smtDisplayPtr))
^
cc: Error: ./src/video/x11/SDL_x11sym.h, line 150: In this statement,
"_SmtBufferOverflow" is not declared. (undeclared)
SDL_X11_SYM(1,void,_SmtBufferOverflow,(Display *dpy,register smtDisplayPtr))
^
cc: Error: ./src/video/x11/SDL_x11sym.h, line 150: In this statement,
"_SmtIpError" is not declared. (undeclared)
SDL_X11_SYM(1,void,_SmtIpError,(Display *dpy,register smtDisplayPtr, int))
^
2006-02-26 04:54:01 +00:00
Sam Lantinga
2861771aa5 SDL_windows.h is no longer necessary 2006-02-25 22:18:25 +00:00
Sam Lantinga
61ae237dcb Catch the C++ and Objective C sources too... 2006-02-21 08:47:46 +00:00
Sam Lantinga
190b425364 Use consistent identifiers for the various platforms we support.
Make sure every source file includes SDL_config.h, so the proper system
headers are chosen.
2006-02-21 08:46:50 +00:00
Sam Lantinga
0ef73d9eae Use only safe string functions 2006-02-19 23:46:34 +00:00
Sam Lantinga
f05187e232 New configure-based build system. Still work in progress, but much improved 2006-02-16 10:11:48 +00:00
Sam Lantinga
769424426d More header massaging... works great on Windows. ;-) 2006-02-10 06:48:43 +00:00
Patrice Mandin
c309a78b29 Fixes for new SDL embedded libc stuff 2006-02-08 18:59:49 +00:00
Sam Lantinga
d72a9898ed Configure dynamically generates SDL_config.h
I'm still wrestling with autoheader, but this should work for now...
Fixed lots of build problems with C library support disabled
2006-02-07 12:11:33 +00:00
Sam Lantinga
1e037cc218 Removed uses of stdlib.h and string.h 2006-02-07 09:29:18 +00:00
Sam Lantinga
02cc6c0f11 Use SDL_ prefixed versions of C library functions.
FIXME:
Change #include <stdlib.h> to #include "SDL_stdlib.h"
Change #include <string.h> to #include "SDL_string.h"
Make sure nothing else broke because of this...
2006-02-07 06:59:48 +00:00
Sam Lantinga
82bfaee73a It's now possible to build SDL without any C runtime at all on Windows,
using Visual C++ 2005
2006-02-06 08:28:51 +00:00
Sam Lantinga
808a16717c Updated copyright information and removed rcs id lines (problematic in branch merges)
I batch edited these files, so please let me know if I've accidentally removed anybody's
credit here.
2006-02-01 06:32:25 +00:00
Ryan C. Gordon
406ef7dae9 OS/2 port!
This was mostly, if not entirely, written by "Doodle" and "Caetano":
    doodle@scenergy.dfmk.hu
    daniel@caetano.eng.br

--ryan.
2005-11-23 07:29:56 +00:00
Ryan C. Gordon
ca5a162985 SDL_CDROMInit() shouldn't be a stub in the dummy driver, since that's
implemented in the higher-level CD code.
2005-10-02 00:50:03 +00:00
Ryan C. Gordon
1153e32122 Updates to PocketPC (WinCE) support, thanks to Dmitry Yakimov at
activekitten.com.
2005-09-29 09:43:00 +00:00
Ryan C. Gordon
302ab99664 Replaced Mac OS X's C++ cdrom code with almost-direct translation to C. Sam
requested this effort on the mailing list, apparently because of binary
 compatibility issues between 10.4 and earlier systems (or gcc4 and earlier
 compilers?).

Works fine with SDL12/test/testcdrom.c, with this command line:

./testcdrom -status -list -play -sleep 5000 -pause -sleep 3000 -resume \
            -sleep 5000 -stop -sleep 3000 -play -sleep 3000 -stop \
            -sleep 3000 -eject

Unix Makefiles work, XCode project still need updating for new filenames.
2005-09-22 08:48:16 +00:00
Ryan C. Gordon
6dd11863bd Fix for bug reported by Michael Benfield on the SDL mailing list:
"I'm on Mac OS 10.3.9 with a CVS SDL 1.2.9.

My understanding is that SDL_CDResume is supposed to resume play after
calling SDL_CDPlay. It doesn't on my system. It returns 0 but nothing happens.

Any ideas?

Thanks.

Mike Benfield"

--ryan.
2005-08-22 14:38:31 +00:00
Sam Lantinga
65f934caa3 Date: Tue, 22 Mar 2005 23:50:20 +0100
From: Johannes Schmidt
Subject: [PATCH] Re: [SDL] SDL 1.2.8 Prerelease

On Saturday 18 December 2004 13:59, Stephane Marchesin wrote:
> >#error "The kernel sources in /usr/src/linux are not yet configured."
> >#error "Please run 'make cloneconfig && make dep' in /usr/src/linux/"
> >#error "to get a kernel that is configured like the running kernel."
> >#error "Alternatively, you can copy one of the config files"
> >#error "arch/$ARCH/defconfig.* to .config, and run"
> >#error "'make oldconfig && make dep' to configure the kernel"
> >#error "for that configuration."
> >-
>
> That's the Suse kernel sources...
> I think the only way out is to add a test in ./configure

Attached is a patch (it works for me[TM]) which adds a CheckLinuxVersion() to
configure.in and a check for HAVE_LINUX_VERSION_H to
src/cdrom/linux/SDL_syscdrom.c.
2005-05-20 07:34:34 +00:00
Ryan C. Gordon
c04dafcbf9 SDL_CDOpen() fails on Linux if data track on disc is mounted in the
filesystem. Removing O_EXCL from open() call fixes this.

Problem and solution noted by "Fosters":
 http://www.libsdl.org/pipermail/sdl/2005-March/068028.html
2005-04-17 10:36:03 +00:00
Sam Lantinga
c2113a949a Select patches included from The NetBSD Package Collection (www.pkgsrc.org) 2005-01-12 06:04:48 +00:00
Sam Lantinga
3da2c5f3f9 Date: Fri, 31 Dec 2004 04:14:09 +0900
From: Hayashi Naoyuki
Subject: SDL patch for Tru64 UNIX 4.0X

SDL-1.2.8 support only Tru64 5.X.
This patch is for Tru64 UNIX 4.X.(tested on Tru64 UNIX 4.0G and 5.1B)

SDL-1.2.8/configure.in:
ld doesn't accept -pthread option.
cc -pthread has same effect as -D_REENTRANT when compiling,
and has same effect as -lpthread -lexc when linking.

SDL-1.2.8/include/begin_code.h:
Old Compaq C Compiler accept not inline but __inline.

SDL-1.2.8/src/audio/SDL_mixer_MMX.c:
SDL-1.2.8/src/audio/SDL_mixer_MMX.h:
Old Compaq C Compiler doesn't accept //.

SDL-1.2.8/src/cdrom/osf/SDL_syscdrom.c:
When becoming Tru64 v5.0 from Tru64 v4.0,
the arrangement of the cd-rom device was changed.
2005-01-02 05:05:21 +00:00
Sam Lantinga
89d9ce8288 Date: Wed, 24 Nov 2004 01:25:48 +0100
From: Stephane Marchesin
Subject: Re: [SDL] Problem compiling SDL 1.2.7

- there is a bug that was introduced in the kernel headers for 2.6.9
which is fixed in 2.6.10. This bug *will* byte when compiling the cdrom
subsystem. A patch that works around this bug is attached. Note that
users affected are not those running 2.6.9, but those using the 2.6.9
kernel headers for their system (i.e. whose libc is built against 2.6.9
headers).
2004-11-30 14:45:08 +00:00
Sam Lantinga
a7e1a25cc0 Audio improvements from Max Horn, including a new CoreAudio driver for MacOSX 2004-08-21 02:06:30 +00:00
Sam Lantinga
13bc764867 Date: Fri, 16 Jul 2004 17:25:45 +0200
From: "A. Umbach"
Subject: Patch for bug in SDL cdrom resume handling

Black| pointed out a bug on #sdl today, that when you pause CD playback,
and then Resume it, it'll play until the end of the disk, and not until
the track you specified.

Attached is a patch that fixes the issue, by saving the desired end position
in the SDL_CD struct, and seting it again upon resume

- Andreas
2004-07-18 19:01:27 +00:00
Sam Lantinga
5894574057 Date: Thu, 11 Mar 2004 18:45:17 +0900
From: Hayashi Naoyuki
Subject: Re: Tru64 cdrom and pthread option fix

I wrote
/* Some CD-ROM drives cannot play the first 150 frames. */
in src/cdrom/osf/SDL_syscdrom.c
and
Some CD-ROM drives(ex. TEAC CD-532E) cannot play first 150 frames(aka gap).

but this is not right.

It is written in MMC that LBA = 4500*M + 75*S + F - 150.
2004-03-11 12:59:41 +00:00
Sam Lantinga
8493c3e7ad Date: Sun, 07 Mar 2004 22:54:11 +0900
From: Hayashi Naoyuki
Subject: Tru64 cdrom and pthread option fix

SDL-1.2.7/src/cdrom/osf/SDL_syscdrom.c Fixes
Some CD-ROM drives(ex. TEAC CD-532E) cannot play
first 150 frames(aka gap).
CheckDrive() fix.
The end of comment is "* /" in AddDrive().

SDL-1.2.7/configure.in Fixes
Add *-*-osf pthread option and
delete line SDL_LIBS="$SDL_LIBS -lrt".
2004-03-07 16:40:15 +00:00
Sam Lantinga
844d72f37c *** empty log message *** 2004-02-24 16:21:19 +00:00
Sam Lantinga
acea3c774d Doh! 2004-02-23 15:49:28 +00:00
Sam Lantinga
9abfdc34dd Fixed playback problems with MacOSX 10.1 2004-01-05 12:08:38 +00:00
Sam Lantinga
5004d1c95d Date: Sun, 4 Jan 2004 23:48:19 +0100
From: Max Horn
Subject: Re: Again Audio CD patch

Am 04.01.2004 um 22:38 schrieb Sam Lantinga:

>
> Okay, I fixed the buffering problems by simply using a 4 second buffer
> instead of a 1 second buffer.  However, using your code I can't play an
> entire CD - the playback stops after the first song.
>
Found the problem: FSReadFork returns eofErr when the file is finished.
However, we check its return value for errors, and if anything but
noErr occurs, the reader thread aborts its current iteration. That is
bad, because it aborts before it can ever set the flag which tells that
the file is over (also, any remaining data which FSRead did return is
lost - so you'd not hear about to 4 seconds from the end of the file.

Furthermore, the computed data size was 8 bytes to high (I forgot to
account for the fact that the size of an (A)IFF chunk always contains
the chunk header & size fields, too). This is enough to make it work.
However, the end condition is rather fragile, so I tuned some other
things to be pessimistic (check for <= 0 instead of == 0, when eofErr
is encountered enforce mReadFilePosition == mFileLength). You never
know...

The attached patch fixes the issue for me.
2004-01-05 00:57:51 +00:00
Sam Lantinga
6a7c426236 Fix buffer underrun problems on slow iBooks 2004-01-04 21:32:47 +00:00
Sam Lantinga
a0db91cab5 Fixed track detection on MacOS X 10.1 2004-01-04 18:50:26 +00:00