SDL 1.3 progress update

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added SSE3, SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?On Sun, 13 Feb 2011, Sam Lantinga wrote:

Software rendering wasn’t removed, but the altivec and 3dnow
instruction sets aren’t used much now, and I was cleaning up the API.On Sun, Feb 20, 2011 at 4:35 PM, wrote:

On Sun, 13 Feb 2011, Sam Lantinga wrote:

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added SSE3,
    SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


? ? -Sam Lantinga, Founder and CEO, Galaxy Gameworks

Software rendering wasn’t removed, but the altivec and 3dnow
instruction sets aren’t used much now, and I was cleaning up the API.

I assume your reasoning is that any new apps/games developed using SDL
1.3 will not be programmed for 3dnow and Altivec? Were they really that
much of a maintenance burden?

There are to people still using these instructions such as myself with
an Athlon XP where BlitRGBtoRGBPixelAlphaMMX3DNOW within SDL still
provided a speed up.

Alan.On Sun, 2011-02-20 at 18:46 -0800, Sam Lantinga wrote:

On Sun, Feb 20, 2011 at 4:35 PM, wrote:

On Sun, 13 Feb 2011, Sam Lantinga wrote:

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added SSE3,
    SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?

Hi,

Also, OLPC is the main modern ‘modern’ CPU which supports 3dnow but
not(much) SSE.

For that platform you need all the performance you can get :slight_smile:

I guess xbox360 supporting altivec is still quite common, even if the amount
of PPC macs floating around isn’t.

cya.On Mon, Feb 21, 2011 at 8:56 AM, Alan Swanson wrote:

On Sun, 2011-02-20 at 18:46 -0800, Sam Lantinga wrote:

Software rendering wasn’t removed, but the altivec and 3dnow
instruction sets aren’t used much now, and I was cleaning up the API.

I assume your reasoning is that any new apps/games developed using SDL
1.3 will not be programmed for 3dnow and Altivec? Were they really that
much of a maintenance burden?

There are to people still using these instructions such as myself with
an Athlon XP where BlitRGBtoRGBPixelAlphaMMX3DNOW within SDL still
provided a speed up.

Alan.

On Sun, Feb 20, 2011 at 4:35 PM, wrote:

On Sun, 13 Feb 2011, Sam Lantinga wrote:

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added
    SSE3,

SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

On the PS3 too, but i hope stop using software renderer soon

On the other hand i believe what slows down the most is the throughput of
the CPU/Mem -> GPU, not the CPU power…On Mon, Feb 21, 2011 at 12:59 PM, Ren? Dudfield wrote:

Hi,

Also, OLPC is the main modern ‘modern’ CPU which supports 3dnow but
not(much) SSE.

For that platform you need all the performance you can get :slight_smile:

I guess xbox360 supporting altivec is still quite common, even if the
amount of PPC macs floating around isn’t.

cya.

On Mon, Feb 21, 2011 at 8:56 AM, Alan Swanson wrote:

On Sun, 2011-02-20 at 18:46 -0800, Sam Lantinga wrote:

Software rendering wasn’t removed, but the altivec and 3dnow
instruction sets aren’t used much now, and I was cleaning up the API.

I assume your reasoning is that any new apps/games developed using SDL
1.3 will not be programmed for 3dnow and Altivec? Were they really that
much of a maintenance burden?

There are to people still using these instructions such as myself with
an Athlon XP where BlitRGBtoRGBPixelAlphaMMX3DNOW within SDL still
provided a speed up.

Alan.

On Sun, Feb 20, 2011 at 4:35 PM, wrote:

On Sun, 13 Feb 2011, Sam Lantinga wrote:

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added
    SSE3,

SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

Hey Sam

This is all really cool, I’m really impressed with the work being done on SDL 1.3. Only question is, how is the documentation (the wiki specifically) going to be managed? With the new rendering stuff, there are sure to be a lot of questions for people, and the wiki is going to need a lot of work. I guess it needs a GSoC type thing where people write (boo) instead of code (yay!) with some kind of mentor/project manager overseeing each part of the API. Maybe something to think about?

With a top-class wiki I am sure SDL will become even more popular.

Ed

Okay, I’ll add those back in when I get a chance.

Thanks for the feedback!On Mon, Feb 21, 2011 at 3:59 AM, Ren? Dudfield wrote:

Hi,
Also, OLPC is the main modern ‘modern’ CPU which supports 3dnow but
not(much) SSE.

For that platform you need all the performance you can get :slight_smile:
I guess xbox360 supporting altivec is still quite common, even if the amount
of PPC macs floating around isn’t.

cya.

On Mon, Feb 21, 2011 at 8:56 AM, Alan Swanson wrote:

On Sun, 2011-02-20 at 18:46 -0800, Sam Lantinga wrote:

Software rendering wasn’t removed, but the altivec and 3dnow
instruction sets aren’t used much now, and I was cleaning up the API.

I assume your reasoning is that any new apps/games developed using SDL
1.3 will not be programmed for 3dnow and Altivec? Were they really that
much of a maintenance burden?

There are to people still using these instructions such as myself with
an Athlon XP where BlitRGBtoRGBPixelAlphaMMX3DNOW within SDL still
provided a speed up.

Alan.

On Sun, Feb 20, 2011 at 4:35 PM, ? wrote:

On Sun, 13 Feb 2011, Sam Lantinga wrote:

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added
    SSE3,
    SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


? ? -Sam Lantinga, Founder and CEO, Galaxy Gameworks

Okay, the 3DNow! and AltiVec instruction support is back!

I’ve also added the appropriate intrinsic includes into SDL_cpuinfo.h
so you can directly start using the intrinsics if they’re supported by
your compiler.On Mon, Feb 21, 2011 at 5:26 PM, Sam Lantinga <@slouken> wrote:

Okay, I’ll add those back in when I get a chance.

Thanks for the feedback!

On Mon, Feb 21, 2011 at 3:59 AM, Ren? Dudfield wrote:

Hi,
Also, OLPC is the main modern ‘modern’ CPU which supports 3dnow but
not(much) SSE.

For that platform you need all the performance you can get :slight_smile:
I guess xbox360 supporting altivec is still quite common, even if the amount
of PPC macs floating around isn’t.

cya.

On Mon, Feb 21, 2011 at 8:56 AM, Alan Swanson wrote:

On Sun, 2011-02-20 at 18:46 -0800, Sam Lantinga wrote:

Software rendering wasn’t removed, but the altivec and 3dnow
instruction sets aren’t used much now, and I was cleaning up the API.

I assume your reasoning is that any new apps/games developed using SDL
1.3 will not be programmed for 3dnow and Altivec? Were they really that
much of a maintenance burden?

There are to people still using these instructions such as myself with
an Athlon XP where BlitRGBtoRGBPixelAlphaMMX3DNOW within SDL still
provided a speed up.

Alan.

On Sun, Feb 20, 2011 at 4:35 PM, ? wrote:

On Sun, 13 Feb 2011, Sam Lantinga wrote:

  • Updated CPU info API, removed Altivec, and 3DNow! queries, added
    SSE3,
    SSE4.1 and SSE4.1 queries.

why was altivec and 3dnow removed, were these only used for software
rendering which i think was removed too ?


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


? ? -Sam Lantinga, Founder and CEO, Galaxy Gameworks


? ? -Sam Lantinga, Founder and CEO, Galaxy Gameworks

Here’s a summary of the things that have changed in the SDL snapshot recently:
http://www.libsdl.org/tmp/SDL-1.3.zip

  • Fixed compiling on Mac OS X 10.4.
  • Fixed bug 1136 (problems with testgles on iOS)
  • Fixed bug 1137, updated the iOS keyboard demo with latest rendering
    API changes.
  • Fixed the iOS fireworks demo.
  • Fixed bug 1105 (SDL_GetMouseState returns wrong location upon window
    re-activation)
  • Fixed mouse coordinate clipping (valid range is 0,0 -> w-1,h-1)
  • Fixed building SDL for iOS 3.1.3.
  • Implemented Mac OS X icon support.
  • Implemented Mac OS X cursor support.
  • Implemented Mac OS X mouse warp/relative mode support.
  • Added SDL_ConvertSurfaceFormat() utility function.
  • Added disabled “Preferences” menu option so SDL application menu
    looks more correct on Mac OS X.
  • Windows are shown by default, you can pass SDL_WINDOW_HIDDEN to
    SDL_CreateWindow() to override this behavior.
  • Re-added the 3DNow! and AltiVec instruction support.
  • Fixed bug 1145 (GL Context creation fails for OpenGL 3.2 + Alpha
    buffer with X11 BadMatch)
  • Fixed crashes on Mac OS X with multiple streaming textures
  • The windowed size and position are restored when returning from
    fullscreen mode.
  • Fixed removing the title bar on fullscreen windows on Mac OS X.
  • Fixed minimizing fullscreen windows (needed to restore the video mode first)
  • The Xinerama and xf86vmode extensions are now dynamically loaded.
  • OSF and IRIX are no longer supported.

A full log can be found here:
http://hg.libsdl.org/SDL

See ya!–
? ? -Sam Lantinga, Founder and CEO, Galaxy Gameworks

Here’s a summary of the things that have changed in the SDL snapshot
recently:
http://www.libsdl.org/tmp/SDL-1.3.zip

  • Fullscreen doesn’t automatically grab the cursor, for multi-monitor
    configurations
  • Finished support for cursors on Windows and Linux
  • Updated 2D render code for Nintendo DS (thanks Frank Zago!)
  • Fixed bitmap order interpretation; SDL defaults to MSB ordering so a
    bitstream corresponds to a pixel stream.
  • Fixed blitting to ARGB1555 surfaces
  • Enabled mult-touch support on iOS
  • Fixed bug 1161 (Setting GL_ACCELERATED_VISUAL to 1 forces software
    rendering in Windows XP)
  • Fixed compiling all targets in Visual Studio 2010 (Debug/Release,
    Win32/x64)
  • Fixed testgesture so it works on the iPhone with reasonable performance
  • Fixed bug 1163 (SDL_TEXTINPUT not being received on iPhoneOS)
  • Include an updated Version.rc in Visual Studio builds
  • Added screenshot hotkey support for all tests using common.c.
  • Fixed bug 1162 (Error calling SDL_RenderReadPixels() with format=0)
  • Gamma support is back, with new functions for multi-window support:
  • SDL_SetWindowBrightness()
  • SDL_GetWindowBrightness()
  • SDL_SetWindowGammaRamp()
  • SDL_GetWindowGammaRamp()
  • SDL_CalculateGammaRamp()
  • Added a function to create color cursors: SDL_CreateColorCursor()

A full log can be found here:
http://hg.libsdl.org/SDL

See ya!–
-Sam Lantinga, Founder and CEO, Galaxy Gameworks