nanogui: Panning and double buffering
Subject:
Re: Panning and double buffering
From:
"Jordan Crouse" ####@####.####
Date:
24 Apr 2006 05:26:39 +0100
Message-Id: <20060424042851.GC12016@cosmic.amd.com>
On 21/04/06 10:52 -0600, Greg Haerr wrote:
> It's a little tricky exactly how to handle this, since you'll effectively
> have two hw framebuffers, but Microwindows normally clips all
> output to the displayed framebuffer. One way might be to add
> two new GrXXX API calls, one that sets the hw framebuffer
> currently displayed, and another that changes the the low level
> memory-mapped address for the Microwindows drawing
> framebuffer, scrdev.addr. Perhaps both these values are
> set in one call. In this way, you could display from one
> fb while drawing in another, and then swap.
You don't have to change the framebuffer address - when you set up a
framebuffer for panning, you establish the memory area for the entire
virtual space, and then tell the framebuffer driver the only display
the physical view area.
So as far as Nano-X is concerned, the entire space is there so you can
draw on the non-visible area without changing anything around. All you
will need is the Gr call to change the window viewpoint, and you're golden.
I have some patches I wrote about a year ago to test our Geode framebuffer.
They're old, but they should be useful. I'll send it forward tomorrow.
Jordan
--
Jordan Crouse
Senior Linux Engineer
AMD - Personal Connectivity Solutions Group
<www.amd.com/embeddedprocessors>