www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/12/17/21:15:24

From: akallio AT finlink DOT net (Aleksi Kallio)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: VESA 1.2 Problem
Date: Tue, 16 Dec 1997 19:51:39 GMT
Message-ID: <34969933.9536895@195.10.154.8>
References: <3492C4EC DOT AD434EF0 AT juno DOT com>
NNTP-Posting-Host: dial046.finlink.net
Lines: 22
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

>I'll get to the point. I'm programming a game using VESA 1.2. I write
>all of my graphics to a memory buffer, and copy them to the screen when
>it's ready. My problem is, I can't afford to check every single pixel
>for a change in bank. I need some kind of routine that will copy the
>memory buffer to the screen as fast as possible, without having to do as
>many tests for changing banks. Any help would be appriciated.

Well, my first answer is: Get VESA 2.0 specs, and learn to use LFB.
That stands for Linear Frame Buffer, and means that you have all data
in one big array, no banks or other rubbish. But of course LFB
requires support from hardware, or driver like UniVBE.

But if you want to stick with bank swithching..
First, you said that you have double buffer, and you copy it to
screen. And check bank for every pixel. Why? Just switch bank one,
copy as much as bank holds, switch bank two etc.. until you have
copied all the data.

If this wasn't clear enough, ask more!

    -=  Mikko Aleksi Kallio   -   Acute / Hubris^BoSH  =-
 -=  www.finlink.net/~akallio/   -   akallio AT finlink DOT net  =-

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019