Commit Graph

2184 Commits

Author SHA1 Message Date
Sam Lantinga
73cc09fedb More work in progress integrating SDL_Surface and the new SDL_Texture API 2007-08-18 01:44:21 +00:00
Sam Lantinga
59d6059cae More work in progress... 2007-08-17 06:58:20 +00:00
Sam Lantinga
99d8df4fc1 Enabled SSE2 intrinsics 2007-08-17 06:41:20 +00:00
Sam Lantinga
7f03398faa More work in progress, still doesn't compile... 2007-08-17 06:40:12 +00:00
Sam Lantinga
82908c483c Work in progress: merging new texture features into SDL blit system 2007-08-17 06:21:58 +00:00
Sam Lantinga
d5d655cc43 Enabled 3DNow! intrinsic support 2007-08-17 03:22:03 +00:00
Sam Lantinga
c120eaf9e4 indent 2007-08-17 02:55:21 +00:00
Sam Lantinga
a4e5bc25cc Date: Fri, 17 Aug 2007 01:12:31 +0200
From: Couriersud
Subject: fix for audio dsp exit crash / various dfb issues

improved cursor handling
fixes some mouse and event related bugs
2007-08-17 02:54:50 +00:00
Sam Lantinga
785b4a61c3 Date: Fri, 17 Aug 2007 01:12:31 +0200
From: Couriersud
Subject: fix for audio dsp exit crash / various dfb issues

The current code will crash on exiting an application. The attached diff
fixes the issue.
2007-08-17 02:54:12 +00:00
Sam Lantinga
65b59716be Moved the colorkey and per-surface alpha into the blit info,
in preparation for support for general color channel modulation.

Removed and consolidated some data in the blit info.
2007-08-17 00:54:53 +00:00
Sam Lantinga
367092a182 Getting ready to add slow blitters. Everyone will love me. :) 2007-08-16 22:56:18 +00:00
Sam Lantinga
a35d8c5da8 Use MMX intrinsics over GCC inline assembly 2007-08-16 22:18:53 +00:00
Sam Lantinga
47dfad08cc Oops, didn't want to rename those files... 2007-08-16 21:54:26 +00:00
Sam Lantinga
bcce9c56b0 Added notes on the next steps for SDL 1.3
Moved fill and copy routines to their own files.
2007-08-16 21:43:19 +00:00
Sam Lantinga
16c1080593 Removed unnecessary header (SDL_blit.h has SDL_cpuinfo.h) 2007-08-16 06:40:34 +00:00
Sam Lantinga
fd5ae1f46d SSE and MMX intrinsics work with Visual Studio now... 2007-08-16 06:37:22 +00:00
Sam Lantinga
b886cc3b5c Fixed a few compiler warnings.
Added SDL_blit_copy.c to the Visual C++ project

The SSE and MMX intrinsics don't compile on Visual Studio yet...
2007-08-16 06:20:51 +00:00
Sam Lantinga
65d361b41b Added SSE and MMX optimization for SDL_FillRect() 2007-08-16 05:56:24 +00:00
Sam Lantinga
f1b05ff63b Okay, I figured out the intrinsics for SIMD memcpy 2007-08-16 02:14:13 +00:00
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
377c3990ba Added code to enable multi-threaded OpenGL on Mac OS X, pending Ryan's PBO/VBO
changes.
2007-08-15 04:04:17 +00:00
Sam Lantinga
45891d1d50 Optimization suggested by Ryan:
Don't set the same OpenGL context multiple times
2007-08-15 03:52:31 +00:00
Sam Lantinga
47455281fd indent 2007-08-15 03:50:49 +00:00
Sam Lantinga
1b7386279e Date: Wed, 15 Aug 2007 01:08:38 +0200
From: Couriersud
Subject: Some SDL1.3 patches

LoadLibrary will call X11_GL_Initialize. If LoadLibrary is called before
a window is created, it will crash since structures are not properly set
up.
2007-08-15 03:34:14 +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
0fe1784459 Date: Wed, 15 Aug 2007 01:08:38 +0200
From: Couriersud
Subject: Some SDL1.3 patches

Modified UpdateTexture to lock and unlock DirectFB-Surface.
2007-08-15 03:19:21 +00:00
Sam Lantinga
74a291769a Fixed crash setting 0 bpp video mode. 2007-08-15 03:18:24 +00:00
Sam Lantinga
0c2f549390 Added SSE version of SDL_FillRect() for 32-bit ARGB surfaces 2007-08-13 06:24:56 +00:00
Sam Lantinga
2a2e08c995 Shark rules!
* Loop optimization for Mac OS X - should this generally be applied?
2007-08-13 03:03:23 +00:00
Sam Lantinga
cfd7794fec Advertise the most efficient format for the screen. Of course SDL code needs
to be fixed to handle framebuffers with alpha...
2007-08-13 02:38:59 +00:00
Sam Lantinga
2d2be66919 This is byte order dependent. 2007-08-12 18:53:51 +00:00
Sam Lantinga
1de747845b indent 2007-08-12 18:44:49 +00:00
Sam Lantinga
f2c7446b24 Gained 5 FPS in testsprite because Mac OS X memset is highly optimized 2007-08-12 18:27:44 +00:00
Sam Lantinga
6d8a22e975 Test using glTextureRangeAPPLE
This actually ends up being quite a bit slower on my MacBook, but I'm
checking it in to test on a PPC iMac.

Maybe someone knows why it's slower?
2007-08-12 16:53:58 +00:00
Sam Lantinga
49204a8cdd indent 2007-08-12 16:26:10 +00:00
Sam Lantinga
61ed776db3 Fixed compiling the Altivec blit code 2007-08-12 15:41:36 +00:00
Sam Lantinga
dbb114bdf1 Optimized OpenGL renderer for Mac OS X.
The SDL 1.2 API version of testsprite went from 120 FPS to 320 FPS. :)
2007-08-12 07:02:28 +00:00
Sam Lantinga
6a45ac924c Fixed crash if conversion fails. Use ISO name for Latin-1 2007-08-12 05:48:51 +00:00
Sam Lantinga
e9aa9188bf Fixed compile warnings with Visual C++ 2007-08-12 00:01:41 +00:00
Sam Lantinga
ed767d84cc Exported the software renderer texture functions to make easier to create
a renderer based on a framebuffer.

Fixed an initialization bug with the dummy video display mode.
2007-08-11 23:26:03 +00:00
Sam Lantinga
0693d77922 Date: Sat, 11 Aug 2007 02:03:16 +0200 (CEST)
From: couriersud arcor.de
To: slouken@libsdl.org
Subject: Directfb driver for SDL1.3

Hi,

the attachment contains a patch for a SDL1.3 directfb driver. It supports:

- Renderer "directfb":

Hardware acceleration as supported by the underlying directfb driver. With a
radeon X850, testsprite2 runs at 50% to 70% of OpenGL (X11, dri) performance.

Also supports hardware accelerated yuv overlays. This must be enabled by sett
ing:

export SDL_DIRECTFB_YUV_DIRECT=1

- Renderer "opengl"

Supports software opengl using mesa opengl (make linux-directfb).

Some more information may be found in README.DirectFB

There will certainly still be some bugs, and there is some debug code around.
 When I find some time, I will compile against directfb-0.9.25 as distributed
 with ubuntu 7.04.

The diff also contains a fix for SDL_LockYUVOverlay fixing a bug in  *pixels
and pitches initialization.

Kind regards,

couriersud
2007-08-11 21:51:19 +00:00
Sam Lantinga
1f37d8fe78 Updated the credits for SDL 1.3 2007-08-11 21:44:49 +00:00
Sam Lantinga
8a6126e90d Whoops, it's not quite that easy - fixed bug in SDL_ClearDirtyRects() 2007-08-11 21:42:36 +00:00
Sam Lantinga
ebe7769ae3 Optimized dirty rect code 2007-08-11 21:34:08 +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
ecf8db2e86 indent 2007-08-11 20:46:24 +00:00
Sam Lantinga
4b88504be7 Don't run indent on the Xcode templates 2007-08-11 18:51:12 +00:00
Sam Lantinga
600b035f58 Figured out how to optimize the SDL_compat path and simplify writing framebuffer drivers 2007-08-10 16:03:35 +00:00
Sam Lantinga
11b7672b33 1.3 video API design chat 2007-08-07 07:08:25 +00:00
Sam Lantinga
25a96a4cc1 Some thoughts on 1.3 video written down 2007-08-07 06:04:27 +00:00