Il y a deux extensions différentes X qui gèrent la rotation interne des fenêtres. Le plus fondamental est RANDR et son code source se trouve dans le répertoire randr de niveau supérieur de la source X Server. L'extension MODES qui prend en charge les périphériques à plusieurs têtes et qui expose les sorties et les CRTC répertoriés dans les résultats de l'appel de xrandr, est la deuxième extension qui fonctionne avec les fenêtres tournantes. MODES peut être trouvé dans le sous-répertoire hw/xfree86/modes de la source du serveur X.
Si un pilote X utilise directement RANDR, il doit fournir un certain nombre de fonctions permettant à RANDR de tourner et d'afficher les fenêtres. Si vous utilisez MODES, il se positionne comme une couche entre RANDR et votre pilote, et vous devez donner à MODES un ensemble de fonctions plus limité et gérer une grande partie du travail. Cela dit, je n'ai pas encore eu de MODES pour faire tourner une fenêtre dans le X Driver que j'écris, probablement parce que RANDR et MODES sont pratiquement non documentés et qu'il est loin d'être clair quels sont leurs modèles de traitement d'image.