# HG changeset patch # User Sam Lantinga # Date 1227736775 0 # Node ID 8133d1d278da614f8c9c3b184ec0d5b972bffb3d # Parent 8c9fa61a521c14cef9dbdede26eaaf64276a8df2 Date: Wed, 26 Nov 2008 19:50:31 +0100 From: Couriersud Subject: LPGL and closed-source license / Re: [Bug 607] Texture palette not up Permission granted to release code under both LPGL and closed-source commercial license. Please find attached a minor patch fixing vsync handling in the directfb driver and containing a small update to README.directfb diff -r 8c9fa61a521c -r 8133d1d278da README.DirectFB --- a/README.DirectFB Wed Nov 26 15:52:00 2008 +0000 +++ b/README.DirectFB Wed Nov 26 21:59:35 2008 +0000 @@ -27,6 +27,15 @@ sudo make install INSTALL_DIR=/usr/local/dfb_GL ------------------------ +/etc/directfbrc + +This file should contain the following two lines to make +your joystick work: +------------------------ +disable-module=joystick +disable-module=linux_input +------------------------ + To run the SDL - testprograms: export SDL_VIDEODRIVER=directfb @@ -39,7 +48,14 @@ export SDL_DIRECTFB_YUV_DIRECT=1 -This is disabled by default. It will only support one concurrent -overlay and may behave strange if not used with SDL_CreateYUvOverlay -from SDLcompat.c. - +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 + +export SDL_DIRECTFB_YUV_UNDERLAY=1 + +to make the YUV texture an underlay. This will make the cursor to +be shown. + diff -r 8c9fa61a521c -r 8133d1d278da src/video/directfb/SDL_DirectFB_render.c --- a/src/video/directfb/SDL_DirectFB_render.c Wed Nov 26 15:52:00 2008 +0000 +++ b/src/video/directfb/SDL_DirectFB_render.c Wed Nov 26 21:59:35 2008 +0000 @@ -87,7 +87,8 @@ "directfb", (SDL_RENDERER_SINGLEBUFFER | SDL_RENDERER_PRESENTCOPY | SDL_RENDERER_PRESENTFLIP2 | SDL_RENDERER_PRESENTFLIP3 | - SDL_RENDERER_PRESENTDISCARD | SDL_RENDERER_ACCELERATED), + SDL_RENDERER_PRESENTVSYNC | SDL_RENDERER_PRESENTDISCARD | + SDL_RENDERER_ACCELERATED), (SDL_TEXTUREMODULATE_NONE | SDL_TEXTUREMODULATE_COLOR | SDL_TEXTUREMODULATE_ALPHA), (SDL_TEXTUREBLENDMODE_NONE | SDL_TEXTUREBLENDMODE_MASK | @@ -231,9 +232,10 @@ data->flipflags = DSFLIP_PIPELINE | DSFLIP_BLIT; if (flags & SDL_RENDERER_PRESENTVSYNC) { - data->flipflags = DSFLIP_ONSYNC; + data->flipflags |= DSFLIP_WAITFORSYNC; renderer->info.flags |= SDL_RENDERER_PRESENTVSYNC; - } + } else + data->flipflags |= DSFLIP_ONSYNC; SDL_DFB_CHECKERR(data->surface->GetCapabilities(data->surface, &scaps)); if (scaps & DSCAPS_DOUBLE) @@ -863,7 +865,7 @@ /* Send the data to the display */ SDL_DFB_CHECKERR(data->surface-> - Flip(data->surface, NULL, 0 * data->flipflags)); + Flip(data->surface, NULL, data->flipflags)); return; error: