--- Felix K&#252;hling <[EMAIL PROTECTED]> wrote:
> On Fri, 26 Mar 2004 10:53:40 -0800 (PST)
> Alex Deucher <[EMAIL PROTECTED]> wrote:
> 
> > 
> > --- Felix K&#252;hling <[EMAIL PROTECTED]> wrote:
> > > On Thu, 25 Mar 2004 20:38:43 -0800 (PST)
> > > Alex Deucher <[EMAIL PROTECTED]> wrote:
> > > 
> > > > 
> > > > --- Felix K_hling <[EMAIL PROTECTED]> wrote:
> > > [snip]
> > > > > 
> > > > > Don't know which changes that would be. The only thing where
> the
> > > > > tiling
> > > > > of the front buffer would make a difference for normal double
> > > > > buffered
> > > > > rendering is on buffer swaps. The swapping didn't change. So
> > > possibly
> > > > > blitting to a linear frame buffer is faster than blitting to
> a
> > > tiled
> > > > > one. Anyway, from Keith's comments about double-buffered
> visuals
> > > > > where
> > > > > the app switches between rendering to front and back buffer,
> it
> > > > > sounds
> > > > > like we really want to have a tiled front buffer.
> > > > > 
> > > > 
> > > > I fixed tiled mode today.  I'll be checking in a fix tomorrow. 
> I
> > > need
> > > > to clean up my tree, isolate the changes, and make sure I
> didn't
> > > break
> > > > savage4.
> > > 
> > > I just saw your commit. Nice work (though I havn't tested it yet
> ;-).
> > > Are you going to fix the 3D driver too, to render directly to the
> > > front
> > > buffer? Or should I look into it?
> > 
> > I could try it, but you're probably more familiar with where the
> > changes need to be made.  Also how to we want to handle linear
> mode? 
> 
> Ok, I have the necessary changes ready for committing (see the
> attached
> patch). I havn't found any regressions and pipes is now nice and
> fast.
> drawpix from the Mesa demos works with front and back buffers now
> that
> they both have the same pitch. I don't know any test that switches
> between front- and back buffer drawing and draws accelerated
> primitives
> though.

Patch looks good at a glance.  I'll test it tomorrow, but feel free to
commit it in the meantime :)

> 
> > should we disable 3D if linear mode is enabled? it works now, but
> only
> > because the rendering is done to the back buffer.  if we want to
> leave
> > it in, we'll have to add a check in the 3d driver to only render to
> the
> > back buffer.
> 
> Good question. The 3D driver would work correctly as long as the
> application doesn't try to draw to the front buffer. We could detect
> that in savageDDDrawBuffer and fail when it happens.
> 

Works for me.

> > 
> > Alex
> > 
> 
> Felix
> > --- ./savageioctl.c.~1.7.~  2004-03-25 01:54:03.000000000 +0100
> +++ ./savageioctl.c   2004-03-26 23:21:03.000000000 +0100
> @@ -71,7 +71,7 @@
>                   pbox->y2 > imesa->savageScreen->height)
>                       continue;
>  
> -             if ( (pclear->flags & SAVAGE_FRONT) && imesa->IsFullScreen) {
> +             if ( pclear->flags & SAVAGE_FRONT ) {
>                       bciptr = savageDMAAlloc (imesa, 8);
>                       WRITE_CMD((bciptr) , 0x4BCC8C00,uint32_t);
>                       WRITE_CMD((bciptr) , 
> imesa->savageScreen->frontOffset,uint32_t);
> @@ -81,7 +81,7 @@
>                       WRITE_CMD((bciptr) , (height << 16) | width,uint32_t);
>                       savageDMACommit (imesa, bciptr);
>               }
> -             else if ( pclear->flags & (SAVAGE_BACK|SAVAGE_FRONT) ) {
> +             if ( pclear->flags & SAVAGE_BACK ) {
>                       bciptr = savageDMAAlloc (imesa, 8);
>                       WRITE_CMD((bciptr) , 0x4BCC8C00,uint32_t);
>                       WRITE_CMD((bciptr) , imesa->savageScreen->backOffset,uint32_t);
> --- ./savagestate.c.~1.12.~   2004-03-25 12:28:14.000000000 +0100
> +++ ./savagestate.c   2004-03-26 22:56:08.000000000 +0100
> @@ -642,18 +642,11 @@
>      case DD_FRONT_LEFT_BIT:
>          imesa->IsDouble = GL_FALSE;
>        
> -        if(imesa->IsFullScreen)
> -        {
> -            imesa->drawMap = (char
> *)imesa->apertureBase[TARGET_FRONT];
> -            imesa->readMap = (char
> *)imesa->apertureBase[TARGET_FRONT];
> -        }
> -        else
> -        {
> -            imesa->drawMap = (char
> *)imesa->apertureBase[TARGET_BACK];
> -            imesa->readMap = (char
> *)imesa->apertureBase[TARGET_BACK];
> -        }
[snip]

I don't think it's used anymore, but FWIW, the fullscreen code in
savage_dri.c is broken for all chips except prosavages/twisters.  It's
trivial to fix, but if it's going away...

Also, I think I figured out how to properly support the DVI port on
savage4 cards.  It works right now, but like a crt.  I should be able
to get expansion and dpms working on it, which will be nice for panels
like mine that don't have their own scaler.

Alex



__________________________________
Do you Yahoo!?
Yahoo! Finance Tax Center - File online. File on time.
http://taxes.yahoo.com/filing.html


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
--
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to