/* Return a pointer to an array of available screen dimensions for the given format, sorted largest to smallest. Returns NULL if there are no dimensions available for a particular format, or (SDL_Rect **)-1 if any dimension is okay for the given format. If 'format' is NULL, the mode list will be for the format given by SDL_GetVideoInfo()->vfmt  */
SDL_Rect** SDL_ListModes(SDL_PixelFormat *format, Uint32 flags)
/* Return a pointer to an array of available screen dimensions for the given format, sorted largest to smallest. Returns NULL if there are no dimensions available for a particular format, or (SDL_Rect **)-1 if any dimension is okay for the given format. If 'format' is NULL, the mode list will be for the format given by SDL_GetVideoInfo()->vfmt  */
SDL_Rect** SDL_ListModes(SDL_PixelFormat *format, Uint32 flags)
{
	SDL_VideoDevice *video = current_video;
	SDL_VideoDevice *this  = current_video;
	SDL_Rect **modes;
	modes = NULL;
	if ( SDL_VideoSurface ) {
		if ( format == NULL ) {
			format = SDL_VideoSurface->format;
		}
		modes = video->ListModes(this, format, flags);
	}
	return(modes);
}