Sunday, January 18, 2009

pygame port to S60 nokia phones.

Jussi Toivola has done some more on his pygame port to symbian s60 -- which many nokia phones run.

Here's some details of his progress on the port.


>>> Jussi Toivola writes:

new version is out(SVN 1844):
http://jtoivola.googlepages.com/pygame_20090117_signed.sisx

New features:
- png, jpg, gif and tif image support.
- Demo replaced with launcher application
-- liquid example ported to s60
-- Comes with initial pen\mouse support( no list scrolling yet )
- Lots of build script configuration
- Python embedded as a sis with byte-compiled libraries( PyS60 CE feature )

Detected limitations:
While implementing the launcher, I stumbled upon a problem with fonts.
Symbian's c-library (estlib) does not allow multiple open file handles
on a single file. This causes following code to fail on phone( works
on emulator ):

font1 = pygame.font.Font( None, 20 )
font2 = pygame.font.Font( None, 30)

On the second line pygame tries to open the default font file, but
fails in doing so. I worked around this by caching the surfaces of
rendered texts but it's good for static texts only. I don't know if
OpenC handles this better. Caching optimizes the screen updates anyway
so I'm not sure how severe limitation this actually is.

Also there is no event sent if S60 device's screen orientation
changes, thus it is not possible to handle it with pygame. Not with
events anyway and in portable way.

Sources:

Sources are available at: svn://seul.org/svn/pygame/branches/symbian_s60

The port is based on trunk revision 1760( pre 1.9.0 )

No comments: