Updated to 1.3.0, SDL_OPENGLBLIT is no longer supported SDL-1.3
authorSam Lantinga <slouken@libsdl.org>
Thu, 27 Apr 2006 05:30:05 +0000
branchSDL-1.3
changeset 16540a53c90a37f9
parent 1653 939d938d62df
child 1655 59227394023d
Updated to 1.3.0, SDL_OPENGLBLIT is no longer supported
TODO
configure.in
include/SDL_version.h
include/SDL_video.h
src/main/macos/exports/SDL.x
src/video/SDL_video.c
src/video/cybergfx/SDL_cgxvideo.c
src/video/quartz/SDL_QuartzVideo.m
src/video/x11/SDL_x11video.c
test/configure.in
test/testgl.c
     1.1 --- a/TODO	Thu Apr 27 05:19:10 2006 +0000
     1.2 +++ b/TODO	Thu Apr 27 05:30:05 2006 +0000
     1.3 @@ -2,6 +2,7 @@
     1.4  Wish list for the 1.3 development branch:
     1.5  http://bugzilla.libsdl.org/
     1.6  
     1.7 + * Support querying and setting refresh rate with video modes
     1.8   * Add mousewheel events (new unified event architecture?)
     1.9   * DirectInput joystick support needs to be implemented
    1.10   * Be able to enumerate and select available audio and video drivers
     2.1 --- a/configure.in	Thu Apr 27 05:19:10 2006 +0000
     2.2 +++ b/configure.in	Thu Apr 27 05:30:05 2006 +0000
     2.3 @@ -15,10 +15,10 @@
     2.4  # set SDL_BINARY_AGE and SDL_INTERFACE_AGE to 0.
     2.5  #
     2.6  SDL_MAJOR_VERSION=1
     2.7 -SDL_MINOR_VERSION=2
     2.8 -SDL_MICRO_VERSION=10
     2.9 -SDL_INTERFACE_AGE=3
    2.10 -SDL_BINARY_AGE=10
    2.11 +SDL_MINOR_VERSION=3
    2.12 +SDL_MICRO_VERSION=0
    2.13 +SDL_INTERFACE_AGE=0
    2.14 +SDL_BINARY_AGE=0
    2.15  SDL_VERSION=$SDL_MAJOR_VERSION.$SDL_MINOR_VERSION.$SDL_MICRO_VERSION
    2.16  
    2.17  AC_SUBST(SDL_MAJOR_VERSION)
     3.1 --- a/include/SDL_version.h	Thu Apr 27 05:19:10 2006 +0000
     3.2 +++ b/include/SDL_version.h	Thu Apr 27 05:30:05 2006 +0000
     3.3 @@ -36,8 +36,8 @@
     3.4  /* Printable format: "%d.%d.%d", MAJOR, MINOR, PATCHLEVEL
     3.5  */
     3.6  #define SDL_MAJOR_VERSION	1
     3.7 -#define SDL_MINOR_VERSION	2
     3.8 -#define SDL_PATCHLEVEL		10
     3.9 +#define SDL_MINOR_VERSION	3
    3.10 +#define SDL_PATCHLEVEL		0
    3.11  
    3.12  typedef struct SDL_version {
    3.13  	Uint8 major;
     4.1 --- a/include/SDL_video.h	Thu Apr 27 05:19:10 2006 +0000
     4.2 +++ b/include/SDL_video.h	Thu Apr 27 05:30:05 2006 +0000
     4.3 @@ -124,7 +124,7 @@
     4.4  #define SDL_DOUBLEBUF	0x40000000	/* Set up double-buffered video mode */
     4.5  #define SDL_FULLSCREEN	0x80000000	/* Surface is a full screen display */
     4.6  #define SDL_OPENGL      0x00000002      /* Create an OpenGL rendering context */
     4.7 -#define SDL_OPENGLBLIT	0x0000000A	/* Create an OpenGL rendering context and use it for blitting */
     4.8 +#define SDL_OPENGLBLIT_OBSOLETE 0x0000000A /* Obsolete, do not use! */
     4.9  #define SDL_RESIZABLE	0x00000010	/* This video mode may be resized */
    4.10  #define SDL_NOFRAME	0x00000020	/* No window caption or edge frame */
    4.11  /* Used internally (read-only) */
    4.12 @@ -807,14 +807,6 @@
    4.13   */
    4.14  extern DECLSPEC void SDLCALL SDL_GL_SwapBuffers(void);
    4.15  
    4.16 -/*
    4.17 - * Internal functions that should not be called unless you have read
    4.18 - * and understood the source code for these functions.
    4.19 - */
    4.20 -extern DECLSPEC void SDLCALL SDL_GL_UpdateRects(int numrects, SDL_Rect* rects);
    4.21 -extern DECLSPEC void SDLCALL SDL_GL_Lock(void);
    4.22 -extern DECLSPEC void SDLCALL SDL_GL_Unlock(void);
    4.23 -
    4.24  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
    4.25  /* These functions allow interaction with the window manager, if any.        */
    4.26  /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
     5.1 --- a/src/main/macos/exports/SDL.x	Thu Apr 27 05:19:10 2006 +0000
     5.2 +++ b/src/main/macos/exports/SDL.x	Thu Apr 27 05:30:05 2006 +0000
     5.3 @@ -178,9 +178,6 @@
     5.4  	SDL_GL_SetAttribute
     5.5  	SDL_GL_GetAttribute
     5.6  	SDL_GL_SwapBuffers
     5.7 -	SDL_GL_UpdateRects
     5.8 -	SDL_GL_Lock
     5.9 -	SDL_GL_Unlock
    5.10  	SDL_WM_SetCaption
    5.11  	SDL_WM_GetCaption
    5.12  	SDL_WM_SetIcon
     6.1 --- a/src/video/SDL_video.c	Thu Apr 27 05:19:10 2006 +0000
     6.2 +++ b/src/video/SDL_video.c	Thu Apr 27 05:30:05 2006 +0000
     6.3 @@ -131,12 +131,8 @@
     6.4  /* Various local functions */
     6.5  int SDL_VideoInit(const char *driver_name, Uint32 flags);
     6.6  void SDL_VideoQuit(void);
     6.7 -void SDL_GL_UpdateRectsLock(SDL_VideoDevice* this, int numrects, SDL_Rect* rects);
     6.8  
     6.9  static SDL_GrabMode SDL_WM_GrabInputOff(void);
    6.10 -#if SDL_VIDEO_OPENGL
    6.11 -static int lock_count = 0;
    6.12 -#endif
    6.13  
    6.14  
    6.15  /*
    6.16 @@ -577,6 +573,12 @@
    6.17  	int is_opengl;
    6.18  	SDL_GrabMode saved_grab;
    6.19  
    6.20 +	/* Handle obsolete flags */
    6.21 +	if ( (flags & SDL_OPENGLBLIT_OBSOLETE) == SDL_OPENGLBLIT_OBSOLETE ) {
    6.22 +		SDL_SetError("SDL_OPENGLBLIT is no longer supported");
    6.23 +		return(NULL);
    6.24 +	}
    6.25 +
    6.26  	/* Start up the video driver, if necessary..
    6.27  	   WARNING: This is the only function protected this way!
    6.28  	 */
    6.29 @@ -748,7 +750,7 @@
    6.30  
    6.31  #if SDL_VIDEO_OPENGL
    6.32  	/* Load GL symbols (before MakeCurrent, where we need glGetString). */
    6.33 -	if ( flags & (SDL_OPENGL | SDL_OPENGLBLIT) ) {
    6.34 +	if ( flags & SDL_OPENGL ) {
    6.35  
    6.36  #if defined(__QNXNTO__) && (_NTO_VERSION < 630)
    6.37  #define __SDL_NOGETPROCADDR__
    6.38 @@ -782,89 +784,6 @@
    6.39  		}
    6.40  	}
    6.41  
    6.42 -	/* Set up a fake SDL surface for OpenGL "blitting" */
    6.43 -	if ( (flags & SDL_OPENGLBLIT) == SDL_OPENGLBLIT ) {
    6.44 -		/* Load GL functions for performing the texture updates */
    6.45 -#if SDL_VIDEO_OPENGL
    6.46 -
    6.47 -		/* Create a software surface for blitting */
    6.48 -#ifdef GL_VERSION_1_2
    6.49 -		/* If the implementation either supports the packed pixels
    6.50 -		   extension, or implements the core OpenGL 1.2 API, it will
    6.51 -		   support the GL_UNSIGNED_SHORT_5_6_5 texture format.
    6.52 -		 */
    6.53 -		if ( (bpp == 16) &&
    6.54 -		     (SDL_strstr((const char *)video->glGetString(GL_EXTENSIONS), "GL_EXT_packed_pixels") ||
    6.55 -		     (SDL_atof((const char *)video->glGetString(GL_VERSION)) >= 1.2f))
    6.56 -		   ) {
    6.57 -			video->is_32bit = 0;
    6.58 -			SDL_VideoSurface = SDL_CreateRGBSurface(
    6.59 -				flags, 
    6.60 -				width, 
    6.61 -				height,  
    6.62 -				16,
    6.63 -				31 << 11,
    6.64 -				63 << 5,
    6.65 -				31,
    6.66 -				0
    6.67 -				);
    6.68 -		}
    6.69 -		else
    6.70 -#endif /* OpenGL 1.2 */
    6.71 -		{
    6.72 -			video->is_32bit = 1;
    6.73 -			SDL_VideoSurface = SDL_CreateRGBSurface(
    6.74 -				flags, 
    6.75 -				width, 
    6.76 -				height, 
    6.77 -				32, 
    6.78 -#if SDL_BYTEORDER == SDL_LIL_ENDIAN
    6.79 -				0x000000FF,
    6.80 -				0x0000FF00,
    6.81 -				0x00FF0000,
    6.82 -				0xFF000000
    6.83 -#else
    6.84 -				0xFF000000,
    6.85 -				0x00FF0000,
    6.86 -				0x0000FF00,
    6.87 -				0x000000FF
    6.88 -#endif
    6.89 -				);
    6.90 -		}
    6.91 -		if ( ! SDL_VideoSurface ) {
    6.92 -			return(NULL);
    6.93 -		}
    6.94 -		SDL_VideoSurface->flags = mode->flags | SDL_OPENGLBLIT;
    6.95 -
    6.96 -		/* Free the original video mode surface (is this safe?) */
    6.97 -		SDL_FreeSurface(mode);
    6.98 -
    6.99 -		/* Set the surface completely opaque & white by default */
   6.100 -		SDL_memset( SDL_VideoSurface->pixels, 255, SDL_VideoSurface->h * SDL_VideoSurface->pitch );
   6.101 -		video->glGenTextures( 1, &video->texture );
   6.102 -		video->glBindTexture( GL_TEXTURE_2D, video->texture );
   6.103 -		video->glTexImage2D(
   6.104 -			GL_TEXTURE_2D,
   6.105 -			0,
   6.106 -			video->is_32bit ? GL_RGBA : GL_RGB,
   6.107 -			256,
   6.108 -			256,
   6.109 -			0,
   6.110 -			video->is_32bit ? GL_RGBA : GL_RGB,
   6.111 -#ifdef GL_VERSION_1_2
   6.112 -			video->is_32bit ? GL_UNSIGNED_BYTE : GL_UNSIGNED_SHORT_5_6_5,
   6.113 -#else
   6.114 -			GL_UNSIGNED_BYTE,
   6.115 -#endif
   6.116 -			NULL);
   6.117 -
   6.118 -		video->UpdateRects = SDL_GL_UpdateRectsLock;
   6.119 -#else
   6.120 -		SDL_SetError("Somebody forgot to #define SDL_VIDEO_OPENGL");
   6.121 -		return(NULL);
   6.122 -#endif
   6.123 -	}
   6.124 -
   6.125  	/* Create a shadow surface if necessary */
   6.126  	/* There are three conditions under which we create a shadow surface:
   6.127  		1.  We need a particular bits-per-pixel that we didn't get.
   6.128 @@ -1511,155 +1430,6 @@
   6.129  	}
   6.130  }
   6.131  
   6.132 -/* Update rects with locking */
   6.133 -void SDL_GL_UpdateRectsLock(SDL_VideoDevice* this, int numrects, SDL_Rect *rects)
   6.134 -{
   6.135 -	SDL_GL_Lock();
   6.136 - 	SDL_GL_UpdateRects(numrects, rects);
   6.137 -	SDL_GL_Unlock();
   6.138 -}
   6.139 -
   6.140 -/* Update rects without state setting and changing (the caller is responsible for it) */
   6.141 -void SDL_GL_UpdateRects(int numrects, SDL_Rect *rects)
   6.142 -{
   6.143 -#if SDL_VIDEO_OPENGL
   6.144 -	SDL_VideoDevice *this = current_video;
   6.145 -	SDL_Rect update, tmp;
   6.146 -	int x, y, i;
   6.147 -
   6.148 -	for ( i = 0; i < numrects; i++ )
   6.149 -	{
   6.150 -		tmp.y = rects[i].y;
   6.151 -		tmp.h = rects[i].h;
   6.152 -		for ( y = 0; y <= rects[i].h / 256; y++ )
   6.153 -		{
   6.154 -			tmp.x = rects[i].x;
   6.155 -			tmp.w = rects[i].w;
   6.156 -			for ( x = 0; x <= rects[i].w / 256; x++ )
   6.157 -			{
   6.158 -				update.x = tmp.x;
   6.159 -				update.y = tmp.y;
   6.160 -				update.w = tmp.w;
   6.161 -				update.h = tmp.h;
   6.162 -
   6.163 -				if ( update.w > 256 )
   6.164 -					update.w = 256;
   6.165 -
   6.166 -				if ( update.h > 256 )
   6.167 -					update.h = 256;
   6.168 -			
   6.169 -				this->glFlush();
   6.170 -				this->glTexSubImage2D( 
   6.171 -					GL_TEXTURE_2D, 
   6.172 -					0, 
   6.173 -					0, 
   6.174 -					0, 
   6.175 -					update.w, 
   6.176 -					update.h, 
   6.177 -					this->is_32bit? GL_RGBA : GL_RGB,
   6.178 -#ifdef GL_VERSION_1_2
   6.179 -					this->is_32bit ? GL_UNSIGNED_BYTE : GL_UNSIGNED_SHORT_5_6_5,
   6.180 -#else
   6.181 -					GL_UNSIGNED_BYTE,
   6.182 -#endif
   6.183 -					(Uint8 *)this->screen->pixels + 
   6.184 -						this->screen->format->BytesPerPixel * update.x + 
   6.185 -						update.y * this->screen->pitch );
   6.186 -	
   6.187 -				this->glFlush();
   6.188 -				/*
   6.189 -				* Note the parens around the function name:
   6.190 -				* This is because some OpenGL implementations define glTexCoord etc 
   6.191 -				* as macros, and we don't want them expanded here.
   6.192 -				*/
   6.193 -				this->glBegin(GL_TRIANGLE_STRIP);
   6.194 -					(this->glTexCoord2f)( 0.0, 0.0 );	
   6.195 -					(this->glVertex2i)( update.x, update.y );
   6.196 -					(this->glTexCoord2f)( (float)(update.w / 256.0), 0.0 );	
   6.197 -					(this->glVertex2i)( update.x + update.w, update.y );
   6.198 -					(this->glTexCoord2f)( 0.0, (float)(update.h / 256.0) );
   6.199 -					(this->glVertex2i)( update.x, update.y + update.h );
   6.200 -					(this->glTexCoord2f)( (float)(update.w / 256.0), (float)(update.h / 256.0) );	
   6.201 -					(this->glVertex2i)( update.x + update.w	, update.y + update.h );
   6.202 -				this->glEnd();	
   6.203 -			
   6.204 -				tmp.x += 256;
   6.205 -				tmp.w -= 256;
   6.206 -			}
   6.207 -			tmp.y += 256;
   6.208 -			tmp.h -= 256;
   6.209 -		}
   6.210 -	}
   6.211 -#endif
   6.212 -}
   6.213 -
   6.214 -/* Lock == save current state */
   6.215 -void SDL_GL_Lock()
   6.216 -{
   6.217 -#if SDL_VIDEO_OPENGL
   6.218 -	lock_count--;
   6.219 -	if (lock_count==-1)
   6.220 -	{
   6.221 -		SDL_VideoDevice *this = current_video;
   6.222 -
   6.223 -		this->glPushAttrib( GL_ALL_ATTRIB_BITS );	/* TODO: narrow range of what is saved */
   6.224 -#ifdef GL_CLIENT_PIXEL_STORE_BIT
   6.225 -		this->glPushClientAttrib( GL_CLIENT_PIXEL_STORE_BIT );
   6.226 -#endif
   6.227 -
   6.228 -		this->glEnable(GL_TEXTURE_2D);
   6.229 -		this->glEnable(GL_BLEND);
   6.230 -		this->glDisable(GL_FOG);
   6.231 -		this->glDisable(GL_ALPHA_TEST);
   6.232 -		this->glDisable(GL_DEPTH_TEST);
   6.233 -		this->glDisable(GL_SCISSOR_TEST);	
   6.234 -		this->glDisable(GL_STENCIL_TEST);
   6.235 -		this->glDisable(GL_CULL_FACE);
   6.236 -
   6.237 -		this->glBindTexture( GL_TEXTURE_2D, this->texture );
   6.238 -		this->glTexEnvf( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE );
   6.239 -		this->glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST );
   6.240 -		this->glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST );
   6.241 -		this->glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT );
   6.242 -		this->glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT );
   6.243 -
   6.244 -		this->glPixelStorei( GL_UNPACK_ROW_LENGTH, this->screen->pitch / this->screen->format->BytesPerPixel );
   6.245 -		this->glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
   6.246 -		(this->glColor4f)(1.0, 1.0, 1.0, 1.0);		/* Solaris workaround */
   6.247 -
   6.248 -		this->glViewport(0, 0, this->screen->w, this->screen->h);
   6.249 -		this->glMatrixMode(GL_PROJECTION);
   6.250 -		this->glPushMatrix();
   6.251 -		this->glLoadIdentity();
   6.252 -
   6.253 -		this->glOrtho(0.0, (GLdouble) this->screen->w, (GLdouble) this->screen->h, 0.0, 0.0, 1.0);
   6.254 -
   6.255 -		this->glMatrixMode(GL_MODELVIEW);
   6.256 -		this->glPushMatrix();
   6.257 -		this->glLoadIdentity();
   6.258 -	}
   6.259 -#endif
   6.260 -}
   6.261 -
   6.262 -/* Unlock == restore saved state */
   6.263 -void SDL_GL_Unlock()
   6.264 -{
   6.265 -#if SDL_VIDEO_OPENGL
   6.266 -	lock_count++;
   6.267 -	if (lock_count==0)
   6.268 -	{
   6.269 -		SDL_VideoDevice *this = current_video;
   6.270 -
   6.271 -		this->glPopMatrix();
   6.272 -		this->glMatrixMode(GL_PROJECTION);
   6.273 -		this->glPopMatrix();
   6.274 -
   6.275 -		this->glPopClientAttrib();
   6.276 -		this->glPopAttrib();
   6.277 -	}
   6.278 -#endif
   6.279 -}
   6.280 -
   6.281  /*
   6.282   * Sets/Gets the title and icon text of the display window, if any.
   6.283   */
     7.1 --- a/src/video/cybergfx/SDL_cgxvideo.c	Thu Apr 27 05:19:10 2006 +0000
     7.2 +++ b/src/video/cybergfx/SDL_cgxvideo.c	Thu Apr 27 05:30:05 2006 +0000
     7.3 @@ -598,7 +598,7 @@
     7.4  
     7.5  		/* Clean up OpenGL */
     7.6  		if ( screen ) {
     7.7 -		screen->flags &= ~(SDL_OPENGL|SDL_OPENGLBLIT);
     7.8 +		screen->flags &= ~SDL_OPENGL;
     7.9  		}
    7.10  
    7.11  		if ( screen && (screen->flags & SDL_FULLSCREEN) ) {
     8.1 --- a/src/video/quartz/SDL_QuartzVideo.m	Thu Apr 27 05:19:10 2006 +0000
     8.2 +++ b/src/video/quartz/SDL_QuartzVideo.m	Thu Apr 27 05:30:05 2006 +0000
     8.3 @@ -1353,10 +1353,7 @@
     8.4  
     8.5  static void QZ_UpdateRects (_THIS, int numRects, SDL_Rect *rects) {
     8.6  
     8.7 -    if (SDL_VideoSurface->flags & SDL_OPENGLBLIT) {
     8.8 -        QZ_GL_SwapBuffers (this);
     8.9 -    }
    8.10 -    else if ( [ qz_window isMiniaturized ] ) {
    8.11 +    if ( [ qz_window isMiniaturized ] ) {
    8.12      
    8.13          /* Do nothing if miniaturized */
    8.14      }
     9.1 --- a/src/video/x11/SDL_x11video.c	Thu Apr 27 05:19:10 2006 +0000
     9.2 +++ b/src/video/x11/SDL_x11video.c	Thu Apr 27 05:30:05 2006 +0000
     9.3 @@ -585,7 +585,7 @@
     9.4  {
     9.5  	/* Clean up OpenGL */
     9.6  	if ( screen ) {
     9.7 -		screen->flags &= ~(SDL_OPENGL|SDL_OPENGLBLIT);
     9.8 +		screen->flags &= ~SDL_OPENGL;
     9.9  	}
    9.10  	X11_GL_Shutdown(this);
    9.11  
    10.1 --- a/test/configure.in	Thu Apr 27 05:19:10 2006 +0000
    10.2 +++ b/test/configure.in	Thu Apr 27 05:30:05 2006 +0000
    10.3 @@ -60,7 +60,7 @@
    10.4  AC_SUBST(MATHLIB)
    10.5  
    10.6  dnl Check for SDL
    10.7 -SDL_VERSION=1.2.10
    10.8 +SDL_VERSION=1.3.0
    10.9  AM_PATH_SDL($SDL_VERSION,
   10.10              :,
   10.11  	    AC_MSG_ERROR([*** SDL version $SDL_VERSION not found!])
    11.1 --- a/test/testgl.c	Thu Apr 27 05:19:10 2006 +0000
    11.2 +++ b/test/testgl.c	Thu Apr 27 05:30:05 2006 +0000
    11.3 @@ -15,12 +15,6 @@
    11.4  /* Define this to be the name of the logo image to use with -logo */
    11.5  #define LOGO_FILE	"icon.bmp"
    11.6  
    11.7 -/* The SDL_OPENGLBLIT interface is deprecated.
    11.8 -   The code is still available for benchmark purposes though.
    11.9 -*/
   11.10 -
   11.11 -static SDL_bool USE_DEPRECATED_OPENGLBLIT = SDL_FALSE;
   11.12 -
   11.13  static SDL_Surface *global_image = NULL;
   11.14  static GLuint global_texture = 0;
   11.15  static GLuint cursor_texture = 0;
   11.16 @@ -366,84 +360,6 @@
   11.17  	SDL_GL_Leave2DMode();
   11.18  }
   11.19  
   11.20 -/* This code is deprecated, but available for speed comparisons */
   11.21 -void DrawLogoBlit(void)
   11.22 -{
   11.23 -	static int x = 0;
   11.24 -	static int y = 0;
   11.25 -	static int w, h;
   11.26 -	static int delta_x = 1;
   11.27 -	static int delta_y = 1;
   11.28 -
   11.29 -	SDL_Rect dst;
   11.30 -	SDL_Surface *screen = SDL_GetVideoSurface();
   11.31 -
   11.32 -	if ( global_image == NULL ) {
   11.33 -		SDL_Surface *temp;
   11.34 -
   11.35 -		/* Load the image (could use SDL_image library here) */
   11.36 -		temp = SDL_LoadBMP(LOGO_FILE);
   11.37 -		if ( temp == NULL ) {
   11.38 -			return;
   11.39 -		}
   11.40 -		w = temp->w;
   11.41 -		h = temp->h;
   11.42 -
   11.43 -		/* Convert the image into the screen format */
   11.44 -		global_image = SDL_CreateRGBSurface(
   11.45 -				SDL_SWSURFACE,
   11.46 -				w, h,
   11.47 -				screen->format->BitsPerPixel,
   11.48 -				screen->format->Rmask,
   11.49 -				screen->format->Gmask,
   11.50 -				screen->format->Bmask,
   11.51 -				screen->format->Amask);
   11.52 -		if ( global_image ) {
   11.53 -			SDL_BlitSurface(temp, NULL, global_image, NULL);
   11.54 -		}
   11.55 -		SDL_FreeSurface(temp);
   11.56 -
   11.57 -		/* Make sure that the texture conversion is okay */
   11.58 -		if ( ! global_image ) {
   11.59 -			return;
   11.60 -		}
   11.61 -	}
   11.62 -
   11.63 -	/* Move the image around
   11.64 -           Note that we do not clear the old position.  This is because we
   11.65 -           perform a glClear() which clears the framebuffer and then only
   11.66 -           update the new area.
   11.67 -           Note that you can also achieve interesting effects by modifying
   11.68 -           the screen surface alpha channel.  It's set to 255 by default..
   11.69 -         */
   11.70 -	x += delta_x;
   11.71 -	if ( x < 0 ) {
   11.72 -		x = 0;
   11.73 -		delta_x = -delta_x;
   11.74 -	} else
   11.75 -	if ( (x+w) > screen->w ) {
   11.76 -		x = screen->w-w;
   11.77 -		delta_x = -delta_x;
   11.78 -	}
   11.79 -	y += delta_y;
   11.80 -	if ( y < 0 ) {
   11.81 -		y = 0;
   11.82 -		delta_y = -delta_y;
   11.83 -	} else
   11.84 -	if ( (y+h) > screen->h ) {
   11.85 -		y = screen->h-h;
   11.86 -		delta_y = -delta_y;
   11.87 -	}
   11.88 -	dst.x = x;
   11.89 -	dst.y = y;
   11.90 -	dst.w = w;
   11.91 -	dst.h = h;
   11.92 -	SDL_BlitSurface(global_image, NULL, screen, &dst);
   11.93 -
   11.94 -	/* Show the image on the screen */
   11.95 -	SDL_UpdateRects(screen, 1, &dst);
   11.96 -}
   11.97 -
   11.98  int RunGLTest( int argc, char* argv[],
   11.99                 int logo, int logocursor, int slowly, int bpp, float gamma, int noframe, int fsaa )
  11.100  {
  11.101 @@ -488,11 +404,7 @@
  11.102  	}
  11.103  
  11.104  	/* Set the flags we want to use for setting the video mode */
  11.105 -	if ( logo && USE_DEPRECATED_OPENGLBLIT ) {
  11.106 -		video_flags = SDL_OPENGLBLIT;
  11.107 -	} else {
  11.108 -		video_flags = SDL_OPENGL;
  11.109 -	}
  11.110 +	video_flags = SDL_OPENGL;
  11.111  	for ( i=1; argv[i]; ++i ) {
  11.112  		if ( strcmp(argv[i], "-fullscreen") == 0 ) {
  11.113  			video_flags |= SDL_FULLSCREEN;
  11.114 @@ -698,11 +610,7 @@
  11.115  
  11.116  		/* Draw 2D logo onto the 3D display */
  11.117  		if ( logo ) {
  11.118 -			if ( USE_DEPRECATED_OPENGLBLIT ) {
  11.119 -				DrawLogoBlit();
  11.120 -			} else {
  11.121 -				DrawLogoTexture();
  11.122 -			}
  11.123 +			DrawLogoTexture();
  11.124  		}
  11.125  		if ( logocursor ) {
  11.126  			DrawLogoCursor();
  11.127 @@ -780,11 +688,6 @@
  11.128  		}
  11.129  		if ( strcmp(argv[i], "-logo") == 0 ) {
  11.130  			logo = 1;
  11.131 -			USE_DEPRECATED_OPENGLBLIT = SDL_FALSE;
  11.132 -		}
  11.133 -		if ( strcmp(argv[i], "-logoblit") == 0 ) {
  11.134 -			logo = 1;
  11.135 -			USE_DEPRECATED_OPENGLBLIT = SDL_TRUE;
  11.136  		}
  11.137  		if ( strcmp(argv[i], "-logocursor") == 0 ) {
  11.138  			logocursor = 1;