Valid XHTML 1.0! Valid CSS! Made in NANO

One website on your browser is worth two on your alarm clock.

E-Machines M6805 64-bit - Double the bits, double the fun!

This laptop has surprising specs, especially considering the price ($1500 retail, $1250 after rebates in June2004).
  • AMD Athlon-64 3000+ 1.8GHz with 1MB L2 cache
  • 15.4" Widescreen LCD - 1280x800, 300:1 Contrast Ratio, 185 nits brightness
  • ATI Radeon Mobility 9600 - 64MB
  • 8X DVD/24x24x24 CD-RW Drive
  • 60GB 4200rpm Hard Drive
  • 512MB PC2700 Ram (2 sticks) - Upgradable to 2GB
  • 802.11G 54Mbit Wireless (Broadcom Chipset)
  • 10/100 Ethernet (Via Rhine Chipset)
  • 56K v.92 Modem
  • 6-in-1 Media Reader (CompactFlash/Microdrive, MMC/SD, Memory Stick/Memory Stick Pro)
  • PC2001 Compliant AC97 Audio
  • Touchpad w/Vertical Scroll (Synaptics)
Microsoft Windows 64-bit doesn't excite me very much, especially considering the lack of driver support and supposed performance issues. Standard Windows XP runs just great, and the gaming capabilities of this laptop are amazing.

But there are more ways to have fun with a system like this. Forget Windows - I want Linux.
M6805 Laptop

Diving into Windows Alternatives

The wonders of the Linux kernel are many, but the fun really comes in choosing an appropriate distribution to create a complete Linux system. The M6805 has an AMD64 processor - and any geek knows it would be a sin to settle for a measly 32-bit operating system. 64-bit Linux, here we come!

My favorite Linux distro is the venerable Gentoo. I started with a Gentoo 2004.1 AMD64 Universal LiveCD, and did some hard drive wiping. Left space for Windows - gotta do my gaming still! My first experience was actually pretty scary - there are ACPI problems, and my laptop went NUTS spewing what looked like cyrilic voodoo curses at me when I simply attempted to adjust my screen brightness. Yikes. Having not researched the issue at the time, I decided to give my other favorite 'nix a shot. OpenBSD 64-bit!

The install was painless and the results were mediocre. Using the ever-handy ports and packages system in OpenBSD, I installed a few handy utilities, and got X up and running. Wow, it auto-configured my resolution and settings - there was no XF86Config! Definitely a cool new feature of recent XFree86 versions. To my disappointment, though, Gnome refused to work correctly, even though it installed just fine. Fluxbox worked great, though, and so did Firefox and Gaim. What worked: wired network, 2D acceleration at native res, sound (after installing a mixer program and adjusting levels), fluxbox, playing DVDs and other video, and burning CDs. One thing to note, many of the ports spewed warnings about casting to data types of different sizes. Looks like many things aren't 64-bit clean. Some applications installed and didn't work at all - like Gnome and XMMS. Mplayer handled my video and sound files fine, though. To my dismay, I found out that XFree was auto-configured to 16-bit color. Without a config file, how do you change it? I didn't check if power management was doing its thing correctly, but I suspect it was not. Never tried to suspend or check if the CPU was throttling on battery power. At least adjusting my brightness didn't result in proclimations of doom.

Proclimations of DOOM! Gentoo Linux 64-bit

OpenBSD is my favorite server OS - but a great desktop system it does not make. FreeBSD may have worked great, but instead I just jumped back into Gentoo. A little research showed that this little Arima gem has some strange things going on in its BIOS. Linux ACPI support in v2.6.5 and earlier makes things crazy-go-nuts. The Gentoo LiveCD includes a special kernel that has the right options tweaked, but it needs to be booted with options to disable ACPI, like so: "emachines pci=noacpi noapic". TYPE CAREFULLY, exact spelling matters! When ACPI is disabled, the voodoo curses are no longer spewed whenever brightness is adjusted, or the lid is shut. Whenever I boot, the damn thing defaults my screen brightness to minimum, though. It should also be noted that ACPI conflicts with the network.

The Gentoo installation is always fun, and I whipped through a v2004.1 stage-3 install and mounted up a GRP package CD ISO (mkdir /mnt/iso; mount -o loop -t iso9660 packages-amd64-2004.1.iso /mnt/iso; export PKGDIR=/mnt/iso). I installed a bunch of utilities, then installed XFree. Here's where the headaches really started.

Unlike BSD, Gentoo came with a version of XFree that did not thoughtfully auto-detect my settings. I couldn't for the life of me get it to work. XF86cfg did crazy things, and xf86config asked me for monitor settings I did not know. I grabbed a config file from muru.com, but it didn't work right. It complained about the screen being missing. From here I decided it was time to sync up my portage. An emerge sync and emerge -u portage later, and portage was up to date. The XFree version, however, was still behind the supposed 4.3.99 that the Internet informed me I needed for auto-detection. This is where I gave up and decided to give in..

..to manually installing XFree v4.4! The nice folks over at XFree made an easy install script that instructed me which files to download, and what I should backup. In no time a new version of X was installed and working - and my video was autodetected and configured! WARNING: portage may be angry because of this. A few programs seemed confused that I had a newer XFree version installed than portage listed, though portage seemed to recognize the version number of what was installed. At one point I injected the newest version that was listed. I honestly don't know if it made a difference, but I managed to install a slew of programs without a problem.

No wait, I lied. I did have a problem that annoyed the heck out of me - Firefox emerged successfully via the portage system, but refused to run! It kept giving me crap about "No running windows found" and wouldn't bring up a browser. I finally found an instance of this same problem on the web, and noticed that I could run firefox as root. In my home directory were some configuration directories for firefox, and they were owned by root! A bunch of recursive chowns later on .mozilla, .phoenix, and everything else that was root-owned in my directory, and now I have a great web browser working.

I didn't like the idea of no power management, though, so I poked around the Intar-web some more. It seems that the Linux Kernel v2.6.6 and later works around the ACPI issues with the M6805 (and related familes)! I checked out portage, and found a shiny new Linux v2.6.7-r9 waiting for me to emerge and install. I did so, and compiled it with genkernel /usr/share/genkernel/x86_64/kernel-config-2.6-emachines all. The config file was from an earlier version, but it seemed fine. ACPI options were enabled, and so was 32-bit compatibility support. Saving my old stable v2.6.5 kernel, I chucked a few lines into my grub.conf (I use Grub for my bootloading) for the v2.6.7 kernel without disabling ACPI support.

Success! The kernel works great. I popped into Gnome and merrily created a battery meter in my top bar. It cheerfully informed me that ACPI support was disabled. WHAT?! I read a little farther: "you may need to run acpid". Oh. I emerged this mysterious acpid and ran it. *POOF* my battery meter sprang to life! I added it to my default runlevel with a quick rc-update add acpid default. The meter doesn't seem to realize when AC power is connected or disconnected, but it gets the percentage right, and that's good enough for me. To celebrate, I stealthily added a GXeyes panel to the right of my top bar, and another to the left of my bottom bar. Muahaha. By the way, Xeyes can be added to Gnome panels via the aply-named Amusements category.

More to come later, it's 3 AM and I got a job interview tomorrow (er..later today)!