If you need any help with stratagus, send us a line, I did the GP2X port. Its pretty messy codewise. Hopefully it'll be a lot easier for you since you won't have to resize everything to 320x240.
What's GLES2D ?
Stratagus is already running fine.
GLES2D is a 2d graphic library for the pandora i'm working on, that use openGL ES for rendering, SDL/SDL_image for image/texture loading and input, and Freetype for TTF fonts support. For now it's able to do that (I plan to add Touch Screen support next and propably simple collision support) :
CODE
int GLES2D_InitVideoMode(int w, int h, int bpp, int fullscreen, int fsaa);
GLES2D_Texture *GLES2D_LoadTexture( char *filename );
GLES2D_Texture *GLES2D_CopyBufferToTexture();
void GLES2D_FreeTexture(GLES2D_Texture *texture);
void GLES2D_DrawTextureSimple( GLES2D_Texture *texture, int x, int y );
void GLES2D_DrawTextureCentered( GLES2D_Texture *texture, int x, int y );
void GLES2D_DrawTextureScaled( GLES2D_Texture *texture, int x, int y, int w, int h );
void GLES2D_DrawTextureScaledCentered( GLES2D_Texture *texture, int x, int y, int w, int h );
void GLES2D_DrawTextureAlpha( GLES2D_Texture *texture, int x, int y, float alpha);
void GLES2D_DrawTextureAlphaCentered( GLES2D_Texture *texture, int x, int y, float alpha);
void GLES2D_DrawTexture( GLES2D_Texture *texture_struct, int x, int y, int wScale, int hScale, int centered, GLfloat alpha, GLfloat rotation);
void GLES2D_DrawLine( int ax, int ay, int bx, int by, int width, GLfloat *color );
void GLES2D_DrawTriangle( int ax, int ay, int bx, int by, int cx, int cy, GLfloat *color );
void GLES2D_DrawRectangle( int ax, int ay, int bx, int by, GLfloat *color );
void GLES2D_DrawCircle (int circleSegments, GLfloat circleSize, int x, int y, int filled, GLfloat *color);
int GLES2D_InitFont(GLES2D_Font *font, const char *filename, int size);
void GLES2D_DrawText(GLES2D_Font *font, const char *msg ,GLfloat x, GLfloat y, GLfloat *color);
void GLES2D_DrawTextShadow(GLES2D_Font *font, const char *msg ,GLfloat x, GLfloat y, GLfloat shadowGap, GLfloat *mainColor, GLfloat *shadowColor);
void GLES2D_DrawTextScroll(GLES2D_Font *font, const char *msg, GLfloat x, GLfloat y, GLfloat x_min, GLfloat x_max, GLfloat *color);
void GLES2D_DrawTextBox(GLES2D_Font *font, char *msg, int x, int y, int width, int height, GLfloat *color);
int GLES2D_GetTextHeight(GLES2D_Font *font, const char *text );
int GLES2D_GetTextWidth(GLES2D_Font *font, const char *text );
void GLES2D_ClearScreen( GLfloat *color );
void GLES2D_SwapBuffers();
void GLES2D_FpsCounterInit();
void GLES2D_FpsCounterUpdate();
int GLES2D_GetFps();
void GLES2D_Quit();