Edit: This post is obselete now. Please see MySDL-02.

This is a all-in-one solution for those who are tired or scared of downloading/compiling/fixing SDL and SDL libraries for Pocket PC. I have gathered some handy libraries into a VS2008 solution and all files you need are compiled without any pain. I also provide binaries too. Hope this helps.


  • SDL-1.2.13: SDL library itself.
  • SDL_ttf-2.0.9: TTF support
  • SDL_draw: Some basic and fast drawing functions
  • SDL_image-1.2.7: with BMP GIF PCX PNG TGA XPM support

Download here MySDL-01

WARNING: In debug builds, program exits if you try to load PNG file. I’m working on a fix.

Using Directions:

  1. Copy compiled files from bin\0x501 folder to your application folder
  2. Include lib files from lib\0x501 folder to your project
  3. Include header files from include folder.

Compiling Directions:

  • MySDL has ONLY ONE configuration for platform: Windows Mobile 5.0 Pocket PC SDK (ARMV4I). I choose WM5 because PPC2003 is enough old and WM6 is too new-there are still many devices with WM5. Thus WM5.0 keeps a balance between portability and new technology. I also think that there is no need to use latest WM SDK for a SDL project, as it doesn’t use OS functions, though.
  • To compile the solution, navigate to src folder, open MySDL solution file in VS2008 and build.
  • Project outputs are copied into bin and lib folders in root folder of the project via post build step.
  • Projects:
    • SDL: Two projects: SDL and SDLmain in SDL-1.2.13\VisualCE\ folder.
    • SDL_ttf: Project file is in SDL_ttf-2.0.9\VisualC folder.
    • SDL_draw: in SDL_draw folder
    • SDL_image: in SDL_image-1.2.7\VisualC folder
  • All projects’ output folders are set to 0x501, which is version number for WM 5.0. I choose to use this name, because CAB Project has some problems with original long fancy folder names that VS use.

10 Comments to “MySDL: All-in-one solution for SDL with Windows Mobile 5.0 Pocket PC SDK (ARMV4I)”  

  1. 1 David


    gathering these SDL modules within a unique MVS2008 solution is a great idea.
    I downloaded it, compiled it an now use it in my own projects. Thx a lot.

    I have a question though: do you think it is possible to include SDL_mixer into the package?

    I am currently searching for some Audio open library for Windows Mobile, with no avail yet.
    Do you know one?

    Best regards,


  2. 2 o_0_dot_circle

    We need to use SDL in WM6.
    I will download MySDL-01, and try it on WM6.
    I hope it works well.

    We also need a GUI library.
    I knew that CEGUI supports SDL also.
    If we want to use CEGUI and SDL on WM6,
    could you give some comments?

  3. 3 Emre

    Thanks for your comments.

    I have never tried to compile SDL_mixer but I know I will have to do it sometime. I simply used
    BOOL WINAPI PlaySoundW(LPCWSTR pszSound, HMODULE hmod, DWORD fdwSound);
    And it simply works.
    Ex: PlaySound(L”mysound.wav”, NULL, SND_ASYNC | SND_FILENAME)

    Actually I have implemented a basic UI library which I will post on my free time. It is really basic: Currently there are forms, buttons, image boxes and text boxes with event handling.

    Also I will update MySDL with some fixes and enhancements.


  4. 4 Andi

    Hi I have bee looking at trying to compile Wesnoth for windows CE, your version of SDL so far has been invaluable but Wesnoth requires SDL Mixer and it looks like my knowledge of CE v WIN32 isn’t enough to get this up and running 🙁 I would be very interested in any progress you have made compiling the rest of SDL.

    If you have any hints or tips that would also be great!



  5. 5 Emre

    Hi Andi,

    My first advice would be making a copy of one of the projects in MySDL and replacing all source files with SDL_Mixer source files. This should kill most of the problems you will crash into.

    Good luck!

  6. 6 Emre

    MySDL-02 is out. SDL_Mixer is included also.


  7. 7 hang

    GAPI_RealizePalette NOT IMPLEMENTED !
    Prefetch Abort: Thread=8f00a7fc Proc=8c3b8290 ‘TestGles.exe’
    AKY=00008001 PC=00000000(??? 0x00000000) RA=013d65b0(sdl.dll 0x000265b0) BVA=00000000 FSR=00000005
    Video properties:
    display bpp: 16
    display width: 240
    display height: 320
    x pitch: 2
    y pitch: 480
    gapi flags: 0xa0
    video memory: 0x4ab00020
    need update: 1
    hi-res fix: 0
    VGA is available on the device: 1
    use raw framebuffer: 0
    video surface bpp: 16
    video surface width: 240
    video surface height: 320

    pls help me,tks!

  8. 8 Emre

    @hang: Please see MySDL-2 (http://emreburhan.com/blog/?p=159) then try again. It looks like Palette support is not available for your system. Try a RGB mode instead. If everything fails, you can send me your source code and I can have a look at it.

  9. 9 Anonymous

    bug too much

  10. 10 hang

    thanks for Emre,i fixed the bug.

Leave a Reply