Help fixing csync output with video-ati

Fernando Carrijo fcarrijo at yahoo.com.br
Wed Mar 17 17:49:39 PDT 2010


Hi Arvid!

Arvid Brodin <arvidb at kth.se> wrote:
> Hello list-dwellers!
> 
> I have a PAL TV hooked up via RGB to my graphics card. It needs
> composite sync:
> 
> $ ./xrandr --newmode "960x576 at 50i" 18.479 960 991 1078 1183 576 592 601
> 625 interlace -csync
> 
> [+|-]csync is supported by the xrandr application, but not shown in
> 'xrandr --help' - also, all csync options just give +hsync +vsync
> (checked with oscilloscope) - so my guess is part of the implementation
> is missing.
> 
> I long for watching movies from my couch again, and so I would like to
> fix this. :) I'm not asking for a bug fix/new feature, but rather I'm
> looking at this as an opportunity to learn something of the inner
> workings of X.
> 
> XRRCreateMode() is called to create the new mode, but I cannot step into
> this function with gdb [...]

I'm not sure how did you set up your development environment, but being
not able to use GDB to step into a function call most of the time means
that it was not compiled with what is called a 'debugging symbols flag'.
GCC, for example, has the -g flag which is supposed to be used for this
sole purpose. Here is something you may find entertaining:

  http://gcc.gnu.org/onlinedocs/gcc-3.4.6/gcc/Debugging-Options.html

If you haven't compiled this library yourself, maybe you would like to
know that most distros, for the joy of developers, offer debugging
symbols enabled versions of the libraries they ship.

> [...] and I haven't been able to find out where it is implemented.

Dealing with large code bases like X one's is a challenging task even
for experienced developers. For this reason, people usually use indexing
tools to (guess what?) index and locate identifiers scattered throughout
the source code. One of the most used indexing tools is cscope, which
with the help or the right plugin, may be integrated into your editor.

  http://cscope.sourceforge.net

By using cscope you'll be able to discover almost instantaneously that
the function you were looking for, XRRCreateMode(), is in fact defined
in libXrandr/src/XrrMode.c.

Besides, if for any reason you realize that cscope doesn't fit your
needs, you may want to ask Google if it could locate the function in
your behalf.

  http://www.google.com/codesearch?q=XRRCreateMode

You take your pick!  :)

> If some nice developer could step me through this I would appreciate it
> a lot! (I.e. give hints on how to continue, tell me why the function is
> not "steppable", that it's no use, or whatever comes to mind. :) Perhaps
> my question belongs on xorg-driver-ati at lists.x.org or
> xorg at lists.freedesktop.org?
> 
> 
> 
> I'm running:
> X.Org X Server 1.6.5
> 
> $ xrandr --version
> xrandr program version       1.3.2
> Server reports RandR version 1.3
> 
> xf86-video-ati-6.12.4 on a Radeon HD 3870.
> 
> -- 
> Thanks,
> Arvid Brodin



More information about the xorg-devel mailing list