[Debian-eeepc-devel] Video out toggling
Phil Endecott
spam_from_debian_eee at chezphil.org
Tue Sep 9 21:42:35 UTC 2008
Hi Everyone,
I have been playing with Fn+F5 video out toggling on my '901. I would
guess that most of this applies equally to the smaller Eees. Assorted
observations follow:
1. If the external monitor is attached when X starts, it chooses a size
based on the DDC from the external monitor and the LCD just displays
the top left corner (I don't think there's a way to pan this, is
there?). This was surprising; I have no idea how to fix it.
2. Attempting to toggle when the XDM login screen is displayed doesn't
work. My guess is that DISPLAY and/or XAUTHORITY is not being set
correctly in this case. This could presumably be fixed in the
scripts. (Where do errors from e.g. the xrandr command in the
vga-toggle.sh script go to?)
3. The default script (well, the version that I have) sets the mode for
the external monitor to 640x480, so only the top left portion of the
screen is shown. Changing it to 1024x600 in
/etc/default/eeepc-acpi-scripts fails because 1024x600 is not a mode
that my external monitor advertises in its DDC. (In fact, I guess that
very few if any monitors would advertise this mode; it's not one of the
standard modes that needs only one bit of DDC data, and there's limited
space in the DDC ROM for advertising non-standard modes.) However, I
would be very surprised if there are any monitors made this millennium
that would fail to display this mode if given it; at most you would
need to press the "auto" button. And X already knows the timings for
it because it's supplying it to the panel, so all that you need to do is
xrandr --addmode VGA 1024x600
before the existing "xrandr --output VGA --mode" and it will just
work. A minor snag is that the current split between
/etc/acpi/actions/vga-toggle.sh and /etc/default/eeepci-acpi-scripts
doesn't suit this configuration.
4. 1024x600 renders no worse than 640x480 on my 1600x1200 external
monitor; however, the scaling that the monitor does does not look
great. 1024x768 looks much better after scaling because it's the same
scale factor in X and Y. But 1024x768 is better than the LCD. The
solution is to use a 1024x600 "letter box" mode where there are 600
active lines and 168 blank lines, so that the monitor thinks it's
1024x768. I got this to work with the following:
xrandr --newmode 1024x600LB 78.8 1024 1040 1136 1312 600 601 604 800
xrandr --addmode VGA 1024x600LB
xrandr --output VGA --mode 1024x768LB
That works, though it puts all the blank lines at the top of the
image. For some reason my monitor didn't like it when I tried to put
half the lines above and half below, but I may have mis-typed
something. I'll have to get my scope out and try again.
Presumably with some clever scripting you could cycle through all these
various possibilities.
Still to do:
- I would be interested to hear from anyone with a widescreen monitor
(e.g. 1440x900) who can try this.
- Is there any way to use the native resolution of the external monitor
and to show a scaled-down version on the Eee?
- I am very keen to get external monitor switching working for the
console. Also I'd like to get a 1024x600 console, which I think needs
either a BIOS fix or some serious surgery in the intelfb driver. If
anyone knows anything at all about this, _please_ get in touch!
Cheers, Phil.
More information about the Debian-eeepc-devel
mailing list