I have installed Ubuntu 9.10 on an old PC and it is mostly working, except for some heavy drawing defects that show up whenever I start dragging a window or scrolling inside a window or menu. It looks like the video driver copies the rectangle being moved to the wrong location.
I have taken a look in
/var/log/Xorg.0.log and the following line shows the detected video card:
(--) PCI:*(0:0:8:0) 102b:0519:0000:0000 Matrox Graphics, Inc. MGA 2064W [Millennium] rev 1, Mem@ 0xf9800000/16384, 0xfb000000/8388608, BIOS @0x????????/65536
(==) Using default built-in configuration (30 lines) (==) ---
Start of built-in configuration ---
Identifier "Builtin Default mga Device 0"
How do I fix the drawing defects?
It turned out that the 24 bit color depth (automatically selected by ubuntu 9.10) was the problem; apparantly the mga driver doesn't handle this well for cards with little memory. I took the following steps to resolve the issue (you can skip the first three steps if you already have a semi-working xorg.conf file):
- Reboot ubuntu in recovery mode, to get a root console without X running.
Xorg -configureto generate a xorg.conf.new file
- Copy the file to /etc/X11/xorg.conf with
cp xorg.conf.new /etc/X11/xorg.conf(assuming it didn't exist yet; that's why I generated it)
Open the new config file with
sudo nano /etc/X11/xorg.confand make sure the screen section is configured for 16 bit color depth like this:
Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 16 SubSection "Display" Viewport 0 0 Depth 16 Modes "1024x768" EndSubSection EndSection
I can't guarantee those were the only important changes I made - I tried a few things in my attempts to create a valid xorg.conf file. But I'm pretty sure that the screen section was the important part.