On 4/23/07, Phillip Ezolt <[EMAIL PROTECTED]> wrote:
> Oliver,
>   I've been hacking on the RS480 (Radeon 200M) for a while, and Dave
> has (aweseomely) brought it to a point where it has the working GART,
> and a limping Mesa.
>
> Currently triangles are broken, and I have a very simple test case
> (the depth example) which demonstrates the problem.  I want to fix
> that.
>
> I would like to use your tool (revenge) to compare the binary blob
> with the current Mesa.  How do I use it?
>
> I've checked it out, but the README is empty.  Do you have any
> docs/examples?
>
> (Even a "typescript" of you running it a few times would help)
>
> Cheers,
> --Phil

I haven't written a README yet because it's still very experimental. Actually I
do have a draft README I should clean up...

You should just be able to start an X server and run ./revenge, after the usual
./configure && make. You will need to be root or setup setuid for revenge as it
needs access to /dev/mem. It will print the information to stdout.

# startx &
# ./revenge

All it does is look at the ring head/tail before executing some GL commands
(usually drawing a triangle) and checks the ring head/tail again afterwards. It
then does and analyses the packets that were added to find out the register
writes.

It does not display the register names in a human readable format yet so you
must instead use: grep -i 'f00' radeon_reg.h r300_reg.h. I plan to add rules-ng
support and convert the header files into an XML database so that the register
names can be printed in human readable format.

I also don't analyze the indirect buffer's yet, but this should be trivial to
add; it just needs some different shifts/masks on the packets. For now, you can
use pretty_print_command_stream.tcl from glxtest (see DRI wiki) to print the
indirect buffers, and it can (to a limited extent) display in human readable
format.

I also have to add support for disassembling fragment and vertex programs
intelligently.

So there is quite a bit of work still left to do before it's especially useful;
you can use it now, but some manual work is required. I would appreciate any
feedback from you, and I also don't mind answering other questions. :)

You can see a (old) example of the output at
http://z3ro.name/tmp/revenge_null_tri.diff.

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to