Commit Graph

351 Commits

Author SHA1 Message Date
Sam Lantinga
fc16af50b2 Removed hermes since it's LGPL and not compatible with a commercial license.
Prepping for using MMX and SSE intrinsics instead of inline assembly.
.. except for memcpy equivalents which only get faster if they can
   exploit the parallelism of loading into multiple SIMD registers. :)
2007-08-15 08:21:10 +00:00
Sam Lantinga
62a3c00b46 Date: Wed, 15 Aug 2007 01:08:38 +0200
From: Couriersud
Subject: Some SDL1.3 patches

fixed a compiler warning
2007-08-15 03:20:55 +00:00
Sam Lantinga
16792e5ed3 Emphasized the separation between SDL_Surface and SDL_Texture
- SDL_Surface is a system memory representation of pixel data
 - SDL_Texture is a video memory representation of pixel data

The concept of SDL_Surface with SDL_HWSURFACE is no longer used.

Separated SDL_Texture types by usage rather than memory type
 - SDL_TEXTUREACCESS_STATIC is for rarely changed pixel data,
   can be placed in video memory.
 - SDL_TEXTUREACCESS_STREAMING is for frequently changing pixel
   data, usually placed in system memory or AGP memory.

Optimized the SDL_compat usage of the OpenGL renderer by only
using one copy of the framebuffer instead of two.
2007-08-11 20:54:31 +00:00
Sam Lantinga
5c79673fa0 Fixed bug #467
Remove trailing commas from enums
2007-07-22 13:22:47 +00:00
Sam Lantinga
7f9e338fe8 Fixed bug #460
Added SDL_VIDEO_OPENGL_CGL to the default Mac OS X config file.
2007-07-16 14:19:47 +00:00
Sam Lantinga
0527f061ac Warn Visual C++ users if they have a stale configure generated SDL_config.h 2007-07-12 03:14:49 +00:00
Sam Lantinga
f1a7210ec4 Oh yeah, they're boolean values... 2007-07-10 05:29:56 +00:00
Sam Lantinga
4148b45eb1 Updated to use size_t instead of int for amounts of data. 2007-07-10 05:25:19 +00:00
Sam Lantinga
dc327d9d79 Merged read-ahead support for Win32 file I/O from SDL 1.2 revision 3183 2007-07-10 05:01:22 +00:00
Sam Lantinga
e9a87fd5e2 Fixed bug #451
SDL_memset4 copies a 32-bit value, not an 8-bit value.
2007-07-08 14:24:55 +00:00
Sam Lantinga
581076f3aa Reverted mousewheel support in 1.2, since it breaks binary compatibility. 2007-07-06 13:45:10 +00:00
Sam Lantinga
49c02d670f Fixed bug #382
Added horizontal scrolling support
2007-07-06 09:22:18 +00:00
Sam Lantinga
bdab6824fd Fix for bug #447 merged from SDL 1.2 2007-07-04 08:01:04 +00:00
Sam Lantinga
c123a18337 Fixed bug #349
Solaris doesn't support the LATIN1 character set alias.

Merged from 1.2 svn revision 3133f
2007-07-04 07:08:16 +00:00
Ryan C. Gordon
8ed68c97b0 Patched to compile (missing #endif from a mismerge). Thanks to Peter Mackay
for pointing it out.
2007-06-29 11:08:53 +00:00
Sam Lantinga
9822c65fd8 Merge iconv const changes from 1.2
I'm not entirely happy with them.  Maybe the right way to go is to leave
SDL_iconv() taking a non-const inbuf?  How often are we converting const
strings anyway?
2007-06-28 06:57:08 +00:00
Ryan C. Gordon
71f0c038e0 Fixed previous VC6 patch. 2007-06-21 18:50:00 +00:00
Ryan C. Gordon
65d8a6d38f Merged r3094:3095 from branches/SDL-1.2: Visual C++ 6.0 fixes. 2007-06-21 18:21:49 +00:00
Bob Pendleton
613ad2c0d5 Added a WindowID to the user event and cleaned up a little bit of formating 2007-06-20 00:01:04 +00:00
Sam Lantinga
2fca78dd3e Key repeat is handled by the OS, since text input is now decoupled from physical key events. 2007-06-16 15:32:04 +00:00
Ryan C. Gordon
04d6e513a9 Removed EPOC port from the 1.3 branch. 2007-06-15 15:54:07 +00:00
Ryan C. Gordon
43feb9f42f Merged r3075:3076 from branches/SDL-1.2: Careful with __inline__ #define. 2007-06-15 07:21:01 +00:00
Sam Lantinga
b6ab6bf6d5 make indent 2007-06-14 13:21:29 +00:00
Ryan C. Gordon
f7db77be6a Merged r3037:3038 from branches/SDL-1.2: Mac OS X memcpy/memset selection. 2007-06-03 08:39:23 +00:00
Ryan C. Gordon
3855f51eff Merged r3007:3008 from branches/SDL-1.2: MapRGB/MapRGBA const correctness. 2007-04-04 09:43:53 +00:00
Ryan C. Gordon
bf91e03c10 Merge of r2554:2995 from branches/SDL-1.2: AvailabilityMacros.h for Mac OS X. 2007-03-27 00:39:03 +00:00
Ryan C. Gordon
929f8883e6 Merged r2981:2982 from branches/SDL-1.2: fbcon getpagesize() compile fix. 2007-02-15 23:57:07 +00:00
Ryan C. Gordon
f1ccde91dd Merged r2956:2957 from branches/SDL-1.2: Digital Mars stdint.h usage.
Fixes Bugzilla #376.
2007-02-12 11:46:08 +00:00
Ryan C. Gordon
1330f6b999 Merge r2918:2919 from 1.2 branch: alloca macro params in parentheses. 2006-11-29 10:34:05 +00:00
Ryan C. Gordon
b932761626 Fixed building of Windows waveout audio. 2006-11-11 06:48:57 +00:00
Ryan C. Gordon
b94f08253a Removed AmigaOS code for 1.3 branch. 2006-10-29 04:09:17 +00:00
Sam Lantinga
c91d18d6ad indent is evil 2006-10-28 16:48:03 +00:00
Ryan C. Gordon
7f17eb8863 Merged SDL-ryan-multiple-audio-device branch r2803:2871 into the trunk. 2006-10-17 09:15:21 +00:00
Ryan C. Gordon
e475d47d2a Double Whoops. :P 2006-10-01 16:10:41 +00:00
Sam Lantinga
c7e5b9cf89 Whoops. :) 2006-10-01 16:07:32 +00:00
Sam Lantinga
9d4b500741 Formatting update 2006-09-24 15:56:55 +00:00
Sam Lantinga
b21b05ee5d Fixed bug #329
On tracing it turns out to fail from SDL_WM_SetCaption()

On going through the function it looks like the SDL_free() function is called
every alternate time with an invalid pointer that has already been freed.
2006-09-23 22:51:37 +00:00
Sam Lantinga
f105c474a1 Cleanup for the last checkin 2006-08-28 03:27:59 +00:00
Sam Lantinga
7462d2796b Added source color and alpha modulation support.
Added perl script to generate optimized render copy functions.
2006-08-28 03:17:39 +00:00
Ryan C. Gordon
1ee9fc8f50 Added SDL_SwapFloat* function/macros. Reference Bugzilla #293. 2006-08-24 12:49:59 +00:00
Ryan C. Gordon
2de95c23ba Forgot to check in updated SDL_audio.h ... 2006-08-24 12:48:16 +00:00
Sam Lantinga
dd630ba3e7 The GGI driver hasn't been maintained in 8 years. It's probably safe to remove. :) 2006-08-10 15:15:06 +00:00
Sam Lantinga
06a7b965e7 Missed a Qtopia change. 2006-08-10 14:55:45 +00:00
Sam Lantinga
4d17a22012 MacOS Classic is no longer supported. 2006-08-10 14:54:23 +00:00
Sam Lantinga
00de315a97 David Hedbor is no longer maintaining the Qtopia code. 2006-08-10 14:35:42 +00:00
Sam Lantinga
34b09cb9e1 Clarified the difference between render drivers and render contexts 2006-08-06 00:09:04 +00:00
Sam Lantinga
5559b37173 Updated header documentation 2006-08-05 22:41:33 +00:00
Sam Lantinga
b59f1d5aff In general, fill in pointers to structures, rather than return them. 2006-08-05 22:34:23 +00:00
Sam Lantinga
dac1c877d9 Removed old function 2006-08-05 17:12:22 +00:00
Sam Lantinga
5b0dc2c1d5 SDL constants are all uppercase. 2006-08-05 17:09:42 +00:00
Ryan C. Gordon
13894e5028 1.3 API proposals for audio subsystem. Nothing in here is guaranteed to
stay as-is! And none of it is implemented yet!

 Use at own risk!
2006-08-03 19:34:05 +00:00
Sam Lantinga
c6ca286be1 Added SDL_GetCurrentVideoDisplay() 2006-08-02 03:20:52 +00:00
Sam Lantinga
9617df5b60 Implemented Cocoa mouse wheel events 2006-07-29 22:42:48 +00:00
Sam Lantinga
453f45eaca Simplified driver window creation code.
Implemented several Cocoa window functions
2006-07-29 21:51:00 +00:00
Sam Lantinga
b27343c5db Implemented X11 OpenGL support.
Added support for the SDL_VIDEO_OPENGL environment variable.
2006-07-28 08:43:17 +00:00
Sam Lantinga
90bdbbe865 PicoGUI is no longer maintained by the author. 2006-07-26 03:55:56 +00:00
Sam Lantinga
8f13f6729b The AAlib driver is fun, but not worth rewriting for SDL 1.3 2006-07-26 03:24:27 +00:00
Sam Lantinga
74a48d3fd5 Hopefully glSDL has been superceded by the OpenGL render driver. 2006-07-26 03:12:05 +00:00
Sam Lantinga
b9c9f87e6d Removing DGA support for SDL 1.3 - it's still buggy years later, and now
it's deprecated by the developers in favor of the render APIs.
2006-07-26 03:06:07 +00:00
Sam Lantinga
bcbb41b25f Implemented OpenGL support on Mac OS X
The OpenGL renderer works without changes, yay! :)
2006-07-25 06:22:42 +00:00
Sam Lantinga
ab6710f259 The Mac OS X Cocoa video driver is under construction...
Note that SDLmain is no longer necessary on Mac OS X. :)
2006-07-23 09:11:10 +00:00
Sam Lantinga
f6948f99cb Added SDL_GL_ExtensionSupported()
Use GL_ARB_texture_rectangle in the OpenGL renderer, if supported.
2006-07-22 21:58:17 +00:00
Sam Lantinga
d533be8505 Convert SDL_malloc to SDL_calloc if appropriate, slightly faster on operating systems which map the zero page for memory allocations.
OpenGL renderer in progress
2006-07-22 08:33:18 +00:00
Sam Lantinga
dcd15904cd Added a test program framework for easy initialization.
Started work on multi-window OpenGL demo
2006-07-18 07:49:51 +00:00
Sam Lantinga
c71b106d69 Setting up the OpenGL support 2006-07-16 09:34:01 +00:00
Sam Lantinga
ed287169af Streamlined the API a bit and optimized the software renderer. 2006-07-15 09:46:36 +00:00
Sam Lantinga
0c86ca7a06 More of the Direct3D renderer is implemented, I'm not sure why it's not showing texture copies yet... 2006-07-14 06:40:53 +00:00
Sam Lantinga
f3567e6d90 Removed libc dependency on Windows again, to fix building with Visual C++ 2005 Express Edition.
Fixed performance problem with testsprite2 on the D3D driver.
2006-07-13 08:13:02 +00:00
Sam Lantinga
c1ff714652 Solved the performance problems by introducing the concept of a single-buffered
display, which is a fast path used for the whole-surface SDL 1.2 API.
Solved the flicker problems by implementing a backbuffer in the GDI renderer.

Unfortunately, now using the GDI renderer with a backbuffer and HBITMAPs is
significantly slower than SDL's surface code.  *sigh*
2006-07-12 06:39:26 +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
5ffeed6e77 Updated the version to 1.2.11 2006-06-25 18:07:34 +00:00
Sam Lantinga
a3ab9747a9 2006-06-25 17:14:39 +00:00
Sam Lantinga
7e37690ca4 Fixed including stdint.h with gcc on Win32 2006-06-25 17:12:08 +00:00
Sam Lantinga
2e6c98ee3a Fixed bug #256 2006-06-21 07:35:02 +00:00
Sam Lantinga
61cc023f8a Moved DirectInput joystick code to 1.3 branch 2006-05-21 17:26:40 +00:00
Sam Lantinga
c0441f5cf0 Closed bug #74
Added DirectInput joystick code, contributed by Glenn Maynard.

This fixes a problem with the Windows Multimedia joystick driver
not showing all 6 axes on a GameCube controller converter, which
was donated by Jacob Kolding.
2006-05-21 16:47:41 +00:00
Sam Lantinga
0e9999cdab Fixed thread callback calling conventions, updated OS/2 DLL name to SDL12.dll 2006-05-17 18:57:04 +00:00
Sam Lantinga
530fd10d07 Fixed alloca declaration for MPW 2006-05-14 05:20:36 +00:00
Sam Lantinga
26a61f597c Hey, whaddy know! MacOS Classic has 64-bit types! 2006-05-13 16:30:59 +00:00
Sam Lantinga
b775d4c6b8 Fixed bug #221
The Carbon build on Mac OS X uses the toolbox video driver, not quartz.
2006-05-10 07:25:37 +00:00
Sam Lantinga
0083eea4ff Prevent both __MACOS__ and __MACOSX__ from being defined in Codewarrior 2006-05-10 07:08:41 +00:00
Sam Lantinga
01facc50f8 Fixed bug #218
Currently there are two Classic-only drivers defined in "SDL_config_macos.h",
and the ones in "SDL_config_macosx.h" are Mach-O/framework-only (i.e. not CFM)

As a workaround, I disabled CDROM and JOYSTICK when building SDL for CFM
Carbon.
2006-05-09 15:14:48 +00:00
Sam Lantinga
556a504e41 Fixed bug #203
Disable screensaver and DPMS blanking while SDL app is running.
2006-05-08 06:38:13 +00:00
Sam Lantinga
1195dd8133 Fixed bug #215
The current SVN trunk is missing the SDLCALL specifier at numerous locations.

It has to be added for all (possibly user provided) callbacks.

I stumbled over this while creating a makefile for the OpenWatcom compiler for
Win32.
2006-05-07 03:40:06 +00:00
Sam Lantinga
064511501d Patch from Dmitry Yakimov to fix building on WinCE 2006-05-03 04:11:38 +00:00
Sam Lantinga
7fdf065976 We want to wrap HAVE_ALLOCA_H, not HAVE_ALLOCA. :) 2006-04-30 08:57:02 +00:00
Ryan C. Gordon
4845d174e1 fatbuild fixes:
- A change to define CXX in fatbuild, which comforts the configure script a little, even if we don't use C++ anywhere.
- Some code to see how many CPU cores exist and parallelize make across them.
- CFLAGS that apply to both archs are specified seperately (-O3, -pipe, etc)
- -fvisibility=hidden for the gcc4 builds
- a "clean", "clean-ppc" and "clean-x86" command
- Fix to SDL_config_macosx.h for the HAVE_ALLOCA_H thing.

Now builds on an Intel Mac.
2006-04-27 11:18:03 +00:00
Sam Lantinga
bc35de2e30 Implemented bug #5
Added SDL_GL_ACCELERATED_VISUAL to guarantee hardware acceleration.
2006-04-27 08:39:51 +00:00
Sam Lantinga
2a622cd891 Implemented bug #2, 117:
Date: Mon, 21 Mar 2005 12:06:14 +0100
From: Per Inge Mathisen
Subject: Re: [SDL] Outstanding patches?

The patch adds support for setting SDL_GL_SWAP_CONTROL to Windows and
X11. In Windows you can also query this enum to check that it is
working, or see what the default is - such functionality does not
exist in GLX. For more information on the standards implemented:
http://oss.sgi.com/projects/ogl-sample/registry/SGI/swap_control.txt
http://oss.sgi.com/projects/ogl-sample/registry/EXT/wgl_swap_control.txt
2006-04-27 07:59:16 +00:00
Sam Lantinga
60b9732963 subversion conversion complete! 2006-04-26 20:30:11 +00:00
Sam Lantinga
61cc027d1e Miscellaneous Mac OS X fixes 2006-04-17 03:34:28 +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
1bae55e771 Fixed MacOS X and Solaris detection 2006-04-13 14:59:34 +00:00
Sam Lantinga
b062c353b4 Fixed bug #185
The SDL platform header shouldn't dictate the OS target API for other
applications.  The build system should define the target API for building
SDL internally.
2006-04-13 14:14:06 +00:00
Sam Lantinga
1374682c44 Fixed bug #176
[I'm fixing this for the public headers, but I'm not going to bother for the SDL library code (yet)]

To clarify: Normaly, GCC (or, to be precise, the preprocessor) will ignore
this, and compile the code happily. However, one can specify -Wundef to get a
warning about this.

One can probably argue whether to consider this a bug or not; but I think that
(a) from a semantic point of view, using "#if FOO" when FOO is not defined is
strange, and (b) since it is possible to trigger a warning about this, and a
trivial fix exists, it should be corrected.

I can think of two alternative patches, BTW:
1) Simply use #define HAVE_FOO 0, instead of not defining HAVE_FOO at all
2) Change
  #if HAVE_FOO
to
  #if HAVE_FOO+0
which always does the right thing.

But I think I still prefer the attached patch :-).
2006-04-13 13:38:40 +00:00
Sam Lantinga
b0519469db Fixes bug #195:
The proper name of Apple's operating system is "Mac OS X" not "MacOS X", as can
bee seen in many places, for example http://www.apple.com/macosx/). This
contrasts the naming of the old operating system, which was called "MacOS" and
today is often refered to as "MacOS Classic".

The attached patches fixes the misuse of the name "MacOS X" in both the SDL12
and sdlweb CVS modules.
2006-04-13 13:08:26 +00:00
Sam Lantinga
80c113cde7 From Anders F Bjorklund:
The current definition of int32_t, uint32_t, uintptr_t
doesn't match what the Mac system headers already have...

Since it's an old 16/32 bit platform, the system headers
expect the types to use "long" and not "int" like they do.
2006-04-12 14:38:47 +00:00
Sam Lantinga
150575a5cf From Anders F Bjorklund:
When switching to "UNIX-style paths" as needed for the new includes,
including <GL/gl.h> and <GL/glu.h> doesn't work anymore on Mac OS...

The two headers are really located in the OpenGL SDK 1.2 CFM like this:
OpenGL:Headers:gl.h
OpenGL:Headers:glu.h

There are also some compat copies, that *used* to work with Mac paths:
OpenGL:Headers:GL/gl.h
OpenGL:Headers:GL/glu.h

The easiest fix is to make SDL_opengl.h include the proper header names,
by adding a special case for the MACOS platform in addition to the MACOSX
2006-04-12 14:37:05 +00:00
Sam Lantinga
dcc7daa066 A less rude way of doing the same thing... 2006-03-23 21:55:13 +00:00
Sam Lantinga
07a8850934 These files should be included from SDL_config.h (so they get SDL_platform.h) 2006-03-23 21:52:47 +00:00