On Saturday 19 March 2005 10:55, Attila Kinali wrote:
> On Fri, 18 Mar 2005 14:24:22 -0500
>
> Daniel Phillips <[EMAIL PROTECTED]> wrote:
> > We have a command stream, commands have command
> > fields, there may be no simple mapping between command fields and
> > registers.
>
> Do you mean something like filling the ring buffer with
> commands like:
>
> draw line x1,y1,x2,y2
> do dma from,to,count
> blit from,to
> ...

If I understand correctly, the plan (or at least one plan) is to only have DMA 
commands in the ring buffer. If you want to draw something, you make a list 
of drawing commands, and put it in DMAable memory somewhere. Then you add a 
command to the ring buffer that will make the card DMA that list of commands 
to its local drawing FIFO (or wherever it needs to go to get them executed). 
The drawing command set itself is limited: it does not contain any privileged 
commands. This way, an (unprivileged) 3D client can draw things, but not 
change any important settings, simply because it can not express such a 
request. This is what Timothy and Daniel call "indirect DMA", because the 
card first gets a command from the ring buffer (via DMA), and then uses that 
command to do a second DMA transfer which transfers the actual commands 
issued by the 3D program.

Lourens

_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to