We are currently migrating Bugzilla to GitHub issues.
Any changes made to the bug tracker now will be lost, so please do not post new bugs or make changes to them.
When we're done, all bug URLs will redirect to their equivalent location on the new bug tracker.

Bug 84

Summary: no software surfaces with svgalib driver?
Product: SDL Reporter: Sam Lantinga <slouken>
Component: videoAssignee: Ryan C. Gordon <icculus>
Status: RESOLVED FIXED QA Contact: Sam Lantinga <slouken>
Severity: normal    
Priority: P2    
Version: HG 1.2   
Hardware: x86   
OS: Linux   
Attachments: SDL_svgavideo.diff

Description Sam Lantinga 2006-01-26 03:11:35 UTC
Date: Sun, 23 Oct 2005 16:39:03 +0200
From: "A. Schmid" <sahib@phreaker.net>
Subject: [SDL] no software surfaces with svgalib driver?

Hi,

I noticed that the SDL (1.2.9) svgalib driver only makes use of linear
addressable (framebuffer) video modes. On older systems (like one of
mine), linear addressable modes are often not available.
Especially for cards with VESA VBE < 2.0 the svgalib vesa driver is
unusable, since VESA only supports framebuffering for VBE 2.0 and later.

The changes necessary to add support for software surfaces seem to be
relatively small. I only had to hack src/video/svga/SDL_svgavideo.c (see
attached patch). The code worked fine for me, but it is no more than a
proof of concept and should be reviewed (probably has a memory leak when
switching modes). It also uses the vgagl library (included in the
svgalib package) and needs to be linked against it.

-Alex
Comment 1 Sam Lantinga 2006-01-26 03:12:06 UTC
Created attachment 39 [details]
SDL_svgavideo.diff
Comment 2 Ryan C. Gordon 2006-01-27 11:23:25 UTC
Setting Sam as "QA Contact" on all bugs (even resolved ones) so he'll definitely be in the loop to any further discussion here about SDL.

--ryan.

Comment 3 Sam Lantinga 2006-03-19 07:04:30 UTC
A modified version of this patch is now in CVS, thanks!

FIXME: It looks like it wouldn't be too hard to support banked modes directly...
Comment 4 Sam Lantinga 2006-03-19 14:06:41 UTC
I reverted this patch and actually implemented a banked update, which should be slightly faster.