iPhone SDL weekly update

Hello!

Here is this week’s iPhone SDL progress update:

– Finished testing all programs listed in the ‘test’ directory (yes,
all of them). All of them work except for the following:

testalpha:
Program crashes. Problem appears to affect Mac OS X as well (using
trunk code).

testpalette:
“SDL error: blitting boat: Blit combination not supported.” Happens
on Mac OS X as well (using trunk code).

testsprite2:
SDL_CreateTextureFromSurface ends up requesting an ARGB pixel
format. OpenGL ES doesn’t support this format. This tends to be an
issue in a lot of places because a lot of the SDL code doesn’t bother
to check what formats the renderer supports.

threadwin:
Works if -threaded is not on. Otherwise it doesn’t work, but this is
true under Mac OS X as well (using trunk code).

I should also note that doing 2D graphics through SDL_compat calls is
EXTREMELY slow on iPhone. I mean, just unbelievably slow – you’d
never get realtime frame-rates doing it. The culprit, I think, is
uploading the dirty rect data to OpenGL ES all the time. So stick to
using SDL 1.3 calls on this platform – which are screaming fast.

– Added support for the OpenGL ES extension GL_OES_draw_texture.
This greatly reduces the number of function calls required to draw 2D
graphics in the render driver (SDL_RenderCopy). The render driver
automatically checks for support, and uses the extension if it is
available. Otherwise it uses glDrawArrays.

– Cleaned up a lot of the UIKit video driver code

– Committed everything to the svn repository, which has been made
private. That way when the NDA is lifted the code should be available
immediately.

Still on the todo list is keyboard support and the multi-touch API.
Also, I’m looking into bringing paletted color support to the OpenGL
ES render driver, through ES extensions.

over and out,

  • Holmes

Hello !

– Committed everything to the svn repository, which has been made
private. That way when the NDA is lifted the code should be available
immediately.

Is this a NDA about the iPhone SDK ?
What is the content of this NDA ?
How does this affect the SDL port to the iPhone ?

CU

Torsten Giebl wrote:

Hello !

– Committed everything to the svn repository, which has been made
private. That way when the NDA is lifted the code should be available
immediately.

Is this a NDA about the iPhone SDK ?
What is the content of this NDA ?
How does this affect the SDL port to the iPhone ?

Hi,

I was wondering about the same thing. By downloading the iPhone SDK you
agree to the “iPhone SDK Agreement”. The agreement itself is marked
confidential, so we can’t tell you. If you are an ADC member (free) you
can download both (agreement and SDK).

I’m not sure what it means to lift the NDA. I suspect it will require
additional text in the agreement to permit usage and distribution as
required by a library such as SDL.

Cheers,
Frank.

Torsten Giebl wrote:

Hello !

– Committed everything to the svn repository, which has been made
private. That way when the NDA is lifted the code should be available
immediately.

Is this a NDA about the iPhone SDK ?
What is the content of this NDA ?
How does this affect the SDL port to the iPhone ?

I haven’t seen this NDA, but I’ve seen some others, and they’re all more or less alike. “You may not tell anyone about the contents of <insert whatever’s covered by the NDA here> or we will sic our pack of ravenous lawyers on you.”>From what people have been saying, apparently this NDA will only apply for a little while longer, and then the SDK will be made public, at which time the iPhone SDL port will be available for anyone to use.

Hello !

I was wondering about the same thing. By downloading the iPhone SDK you
agree to the “iPhone SDK Agreement”. The agreement itself is marked
confidential, so we can’t tell you. If you are an ADC member (free) you
can download both (agreement and SDK).

I’m not sure what it means to lift the NDA. I suspect it will require
additional text in the agreement to permit usage and distribution as
required by a library such as SDL.

The problem is will this NDA ever be lifted by Apple ?
They created it to make money with the iphone.

What about the other side ?

I think it will not be possible to use LGPL v2 with
the iPhone SDK. It is good that SDL 1.3/2.0 has an alternative
dual licensing, which i think needs more to allow
than just static linking if you want to use it with the iPhone SDK.

I know this is all about law and legal stuff so OT, but as there
is so much visible work going into the SDL port for the iPhone, it
might also get others attention.

CU

Torsten Giebl wrote:

Hello !

I was wondering about the same thing. By downloading the iPhone SDK you
agree to the “iPhone SDK Agreement”. The agreement itself is marked
confidential, so we can’t tell you. If you are an ADC member (free) you
can download both (agreement and SDK).

I’m not sure what it means to lift the NDA. I suspect it will require
additional text in the agreement to permit usage and distribution as
required by a library such as SDL.

The problem is will this NDA ever be lifted by Apple ?

I think so, but you never know.

There was a post on CocoDev which says: “When the SDK is lifted an
announcement will be made here.” - Note “When” not “If”.

See:

Cheers,
Frank.

Hello!

Here is this week’s iPhone SDL progress update:

  • looked into paletted texture support for OpenGL ES render driver.
    Turns out it’s not practical, because in OpenGL ES (unlike OpenGL) you
    are not allowed to re-upload the palette to the texture. This means
    that every time you change the palette, you’d have to re-create the
    entire texture. But this defeats the purpose because the whole point
    of a paletted texture (besides possibly a smaller size) is to be able
    to quickly cycle the colors. In addition, support for this would be
    through an extension. So overall there is little to no benefit for
    adding this feature.

    • added keyboard support. In order to do this it was necessary to
      add a few calls in order to show or hide the onscreen keyboard. The
      calls are not part of SDL (as they are iPhone specific), so I’m
      thinking I will put their declaration in a separate
      SDL_iphoneadditions.h, which a programmer could download and include
      in their project if they so wished.

Here is a youtube video which shows a demo (bitmapped font) of
keyboard support:

Still on the to do list is the multi-touch API. Other than multi-
touch I don’t see much left to do other than polishing things up.

over and out

  • HolmesOn Jul 28, 2008, at 8:01 AM, Sam Lantinga wrote:

As we get closer to the August wrap up dates, I’d like you to start
being prompt on the status updates. I’d also like each of you to send
a status update to the SDL mailing list sometime this week.

On other news, I bought an iPod touch this past week, so as soon as
things settle down at work, I’ll be trying out Holmes’ work on the
iPhone port! :slight_smile:

See ya!
-Sam Lantinga, Lead Software Engineer, Blizzard Entertainment