Cartoon drawing of a man with a grey beard and glasses.

Martin Kenny's blog

Vertical Retrace Revisited

Well it turns out there was another solution to eliminating tearing, while using no extra CPU time.

It turns out that the Trident display controller has built-in anti-tear support. Basically, this amounts to double-buffering where the controller lets you update the pointers to the next page to display, while not actually changing pages until the vertical retrace is in progress. It took quite a bit of messing around to actually get it to work, because the data-sheet was short on details, and somewhat misleading, but I’ve finally got a version of the Trident Xv driver that works tear-free with mplayer.