Index: [thread] [date] [subject] [author]
  From: Marcus Sundberg <mackan@stacken.kth.se>
  To  : ggi-develop@eskimo.com
  Date: Fri, 11 Sep 1998 03:22:57 +0200

Re: Looked through the CVS ...

teunis wrote:
> 
> On Thu, 10 Sep 1998, Marcus Sundberg wrote:
> 
> > Steve Cheng wrote:
> > >
> [clip]
> > > > To answer your question, yes the new system was designed to support
> > > > any number of DBs per frame. If there are multiple ones you check
> > > > the db->type field to find out what it is.
> > >
> > > Any ways to determine the 'best' directbuffer for a given frame?  (I'm
> > > thinking applications usually only want to deal with one buffer per frame,
> > > even though libGGI may offer alternatives, as I found out.) The above just
> > > selects one with native endian if possible.  Or please provide another
> > > example...
> >
> > I've never even heard of any hardware that exports more than one
> > memory area per physical memory-block on the card, so I don't think
> > we should bother to much with this. In 99.9% of the cases there
> > will be one directbuffer per frame.
> >
> > The only important thing is that libggi _can_ support the remaining
> > 0.1%, details can be discussed when we have any target that supports
> > this.
> 
> S3's Trio64V+ and above (-all- chips above ie Aurora64V+, ViRGE, ...) can
> do this. Can reverse-endian the entire access to the chip (for
> PowerPC/etc as well as intel support) as well as do this [afaik] on it's
> sub-buffer support. [for different byte-ordered versions of directbuffer
> + STREAMs buffers (3!)]
>
> STREAMS buffers:
>         primary display (can do all kinda tricks including zooms; this
>                 I suspect is how you get 320x200)
>         sub-display (a window) - can be in a completely different graphic
>                 mode than primary display

Yes, the Millennium II supports this too. According too the docs
it supports an unlimited number of such buffers. Would be pretty
nice if XFree86 supported this! (SGIs does IIRC)

As for the original discussion: most cards can have a bunch of
different buffers, but what I was specificly talking about above
was cards that maps a normal-endian framebuffer at address foo and
a reverse-endian framebuffer at address bar _at the same time_, in
such a way that *bar = 0x12345678 produces the same result as
*foo = 0x78563412.

Can the Trios do THAT? ;)

//Marcus
-- 
-------------------------------+------------------------------------
        Marcus Sundberg        | http://www.stacken.kth.se/~mackan
 Royal Institute of Technology |       Phone: +46 707 295404
       Stockholm, Sweden       |   E-Mail: mackan@stacken.kth.se

Index: [thread] [date] [subject] [author]