Mercurial > sdl-ios-xcode
view README.DirectFB @ 3097:0d12e8f1de3c
Date: Thu, 05 Feb 2009 18:07:35 +0100
From: Stefan Klug
Subject: [SDL] SDL 1.3 WinCE backend
as promised, I've started to work on the WinCE backend of SDL 1.3
I've modified the win32 video backend and the gdi renderer, to work
properly in WinCE.
The results till now are great, but there is still some work to do.
Attached are two patches with my changes.
I would be happy if someone could review and propably commit them.
The first one (configure.in.patch) should be straight forward without
any side effects.
The second one does the necessary changes to the win32 backend. I was
really unhappy to start slicing this shiny new backend with
#ifdef/#endif but I saw no other option.
The most problematic issues are:
- WinCe has no GetDIBits, so its practically impossible to fill a
BITMAPINFO with correct values. I therefore removed the bmi member from
the GDI_RenderData in SDL_gdirender.c to prevent usage of a not or not
properly initialized bmi.
- In SDL_win32window.c I exchanged some ASCII function by their general
counterparts, (In CE only the Unicode versions are available). I don't
know if this has a negative effect when running in win32
Cheers
Stefan
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 23 Mar 2009 05:35:21 +0000 |
parents | d72a0dd80e8b |
children | b196d2758026 |
line wrap: on
line source
SDL on DirectFB Supports: - Hardware YUV overlays - OpenGL - software only - 2D/3D accelerations (depends on directfb driver) - multiple displays - windows What you need: DirectFB 1.0.1, 1.2.x, 1.3.0 Kernel-Framebuffer support: required: vesafb, radeonfb .... Mesa 7.0.x - optional for OpenGL /etc/directfbrc This file should contain the following lines to make your joystick work and avoid crashes: ------------------------ disable-module=joystick disable-module=cle266 disable-module=cyber5k no-linux-input-grab ------------------------ To disable to use x11 backend when DISPLAY variable is found use export SDL_DIRECTFB_X11_CHECK=0 To disable the use of linux input devices, i.e. multimice/multikeyboard support, use export SDL_DIRECTFB_LINUX_INPUT=0 To use hardware accelerated YUV-overlays for YUV-textures, use: export SDL_DIRECTFB_YUV_DIRECT=1 This is disabled by default. It will only support one YUV texture, namely the first. Every other YUV texture will be rendered in software. In addition, you may use (directfb-1.2.x) export SDL_DIRECTFB_YUV_UNDERLAY=1 to make the YUV texture an underlay. This will make the cursor to be shown. Simple Window Manager ===================== The driver has support for a very, very basic window manager you may want to use when runnning with "wm=default". Use export SDL_DIRECTFB_WM=1 to enable basic window borders. In order to have the window title rendered, you need to have the following font installed: /usr/share/fonts/truetype/freefont/FreeSans.ttf OPENGL Support ============== As of this writing 20070810 you need to pull Mesa from git and do the following: ------------------------ cd mesa make linux-directfb make echo Installing - please enter sudo pw. sudo make install INSTALL_DIR=/usr/local/dfb_GL cd src/mesa/drivers/directfb make sudo make install INSTALL_DIR=/usr/local/dfb_GL ------------------------ To run the SDL - testprograms: export SDL_VIDEODRIVER=directfb export LD_LIBRARY_PATH=/usr/local/dfb_GL/lib export LD_PRELOAD=/usr/local/dfb_GL/libGL.so.7 ./testgl