ForceRotation

If you need the way to force some rotation of your N900 screen, this is for you.

/*
gcc rotate.c -lX11 -lXrandr
*/
#include <X11/Xlib.h>
#include <X11/extensions/Xrandr.h>
 
static void set_rotation (Rotation r_to) {
   Rotation r;
   int screen = -1;
   XRRScreenConfiguration* config;
   int current_size=0;
 
   Display* display;
   Window rootWindow;
 
       display = XOpenDisplay(":0");
       if (display == NULL) {
        return;
       }
 
       screen = DefaultScreen(display);
       rootWindow = RootWindow(display, screen);
       XRRRotations(display, screen, &r);
       config = XRRGetScreenInfo(display, rootWindow);
       current_size = XRRConfigCurrentConfiguration (config, &r);
       XRRSetScreenConfig(display, config, rootWindow, current_size, r_to, CurrentTime);
}
 
int main (int argc, char *argv[]) {
 set_rotation(RR_Rotate_90);
 //set_rotation(RR_Rotate_270);
 //set_rotation(RR_Rotate_180);
 //set_rotation(RR_Rotate_0);
}