delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/08/20/05:45:54

Message-ID: <35DBD016.EE071EAD@geocities.com>
From: Merlin <merlin__ AT geocities DOT com>
MIME-Version: 1.0
Newsgroups: comp.os.msdos.djgpp
Subject: Re: VESA: hints, clue but no examples
References: <1998081519323200 DOT PAA25189 AT ladder01 DOT news DOT aol DOT com> <35D66C0C DOT 8D8F94C8 AT geocities DOT com> <35D70CC1 DOT BCA4F4EF AT unb DOT ca> <35D93933 DOT 40CF1D5 AT geocities DOT com> <35D98CF1 DOT F906723E AT unb DOT ca> <35DA8319 DOT B27A2AD8 AT geocities DOT com> <35DB1276 DOT 7EEBF3D AT unb DOT ca>
Lines: 53
Date: Thu, 20 Aug 1998 07:32:08 GMT
NNTP-Posting-Host: 230-cy-wpg.ilos.net
NNTP-Posting-Date: Thu, 20 Aug 1998 02:32:08 CDT
Organization: MBnet Networking Inc.
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

Endlisnis wrote:

> Merlin wrote:
>
> > > > do all vesa 1.2 modes use bank switching?
> > > >       Merlin.
> > > To
> > > make things even worse, if you are in a 24-bit mode, a bank can switch in the middle of
> > > the 24-bits.
> >
> > banks switch every 64k right?
>
>     Again, not nessecarily.  Some cards (Cirrus Logic) use 4k granularity of their 64k pages.
>

wouldn't that make it extriemly slow compared with other vga cards? since you'd have to change
banks to often....

> You should not expect all card to have 64k granularity, the ModeInfoBlock returned by SVGA
> function #1 has a field for the granularity of the pages.  You must use that if you expect your
> programs to run on all graphics cards.  You also should worry about read/write windows.  When I
> made my library, I was using a Trident card that only had one VESA1.2 window which supported
> reading and writing.  So I made my libraries only use one window.  The result was when I
> upgraded to an ATI card, my programs could no longer read pixel values properly.  That info is
> in the ModeInfoBlock as well.
>
> > Where do you think i should start:
> > using the linear frame buffer in vbe2.0
> > or
> > using bank switching in vbe1.2
> >
> > i suppose i'll eventually hve to learn both (i have a feeling bank switching and vbe1.2 are
> > still going to be around for a while) but which is better to begin with..ie easier...?
>
>     I am still working with VESA1.2, because more than 50% of my target machines only have
> that.  My machine at work doesn't even have that.  I don't think it even knows what VESA is.
> (old 486)  It is slower, especially for bank-switching (simulate_real_mode_procedure_retf, or
> something like that) but, I try to use off-screen buffers alot, and the blits are fast enough
> (1100Hz at 320x200, 250Hz AT 640x480, 120Hz AT 800x600, 88Hz AT 1024x768 on a P150 in 256 color mode).
> And if you want your programs to work under NT, then don't use '__djgpp_nearptr_enable()',

> instead make your own seletors.  It makes pixel-setting much slower, but blits work just as
> fast.
>

really?? what is it about __djgpp_nearptr_enable() that screws up NT?
guess i'll have to learn how to make a selector then... oh well..


L8r,
    Merlin.


- Raw text -


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