.comment: A Two-Pound UNIX Workstation On the Cheap

By: Dennis E. Powell
Wednesday, January 2, 2002 03:13:46 PM EST
URL: http://www.linuxplanet.com/linuxplanet/opinions/3981/1/

And A Great Pinball Game, Too

Sometimes it's important to do something just to see if you can; indeed, the search for that lone datum is all that separates it from the completely meaningless gesture.

It is because of my quest for dubious knowledge that I come to you today from a keyboard so tiny that I could probably type faster on it with chopsticks than with my fingers. But hey, it works.

The machine is a Toshiba Libretto 100CT. These were not, in my estimation, worth the couple grand they cost when new, but are pretty cool if you can find one on eBay for a few hundred bucks. (Do remember, if you're gonna emptor on over to eBay, to caveat -- for instance, one of the two batteries I got with my Libretto was in sorry shape, though the other one was fine.)

The Libretto series first appeared in Japan in the mid-90s with AMD 486 chips; a couple years later they were upgraded to Pentium-70 and P-120 chips (the 50CT and 70CT respectively) that would hold only 32 megs of memory and had very bright screens that topped out at 640x480. Those were marketed outside Japan. In 1998, the 100CT was unveiled with a P-166, a maximum of 64 megs of memory, and an 800x480 (yup!) screen. This in turn gave way to the 110CT, which was a 100CT with a P-233 chip. Just in terms of feel, it seems to me as if the 100CT was the acme of the line -- there are a lot of 110CTs with dead displays on the market, and replacement screens are expensive.

Mine arrived with its two batteries, an external charger, the PCMCIA floppy drive, PCMCIA modem (28.8) and PCMCIA network card, as well as a decent leather case. It came with no port replicator, which would have been a problem but for the fact that someone else had the advanced port replicator, new in the box, for cheap. This provides USB, a couple extra PCMCIA slots, and printer, serial, and keyboard, PS/2 mouse, and monitor ports. This means that if you wanted to, you could use it as a grown-up PC at your desk, then take it with you when you hit the road. I'm disinclined to go that far -- P-166s with 64 megs are not exactly high-ticket items nowadays -- but having the port replicator on the desk with the network card and power plugged in does save wear on the PCMCIA slots and power c connector (which is a little delicate for my tastes, and not of a standard size, so replacements are at the mercy of Toshiba).

The machine also arrived with a 2.1-gig drive containing Windows 2000. I hadn't spent any time to speak of with Windows since 95, so I poked around a little. A couple of observations: Performance was just awful. Truly bad. Really miserable. I was impressed with the Internet connection wizard, which, when I plugged in the network card had me online in under a minute, never prompting me for a single address or anything else. (Bill Day on the Caldera users mailing list was quick to point out that just days earlier this wonderful ability was revealed to be an enormous security hole; the FBI and Department of Defense are actually recommending that network plug'n'play be turned off. So much for that particular miracle.) But I was absolutely enslaved by the pinball game, which played easily on the dinky Libretto keyboard, though it might quickly wear out the z and / keys, which work the flippers.

Fortunately, I was to find an excellent Linux pinball game online, free as in beer, from a brewery in the Netherlands (really!). Now, all I had to do was get Linux on the machine.

Which was surprisingly easy. Of course, I cheated.

That Awful PCMCIA Floppy

I actually owned a Libretto 70CT, brand new, briefly in early 1998. I'd gotten it after learning on the Toshiba website that OS/2 was supported. The Toshiba website was wrong, as Toshiba finally admitted in taking the machine back.

The problem was the PCMCIA floppy drive, which disappears as soon as the booted kernel takes over from the BIOS. There are probably a couple of ways around this, but they involve dual booting, copying the floppy images to a Windows partition, and editing some files to point to that partition. But the fact is that I can find no record of unqualified success getting OS/2 onto a Libretto.

Linux faces the same problems, but because Linux is Linux they are more readily got around, as I'll explain in due course.

As with OS/2, they have at their heart the PCMCIA floppy drive. The Linux kernel boots and instantly can no longer see the drive whence it booted -- so when it prompts you for the modules floppy and you insert it, it does you no good. (It is said that the Red Hat CD contains a floppy image that includes a kernel with PCMCIA support and the PCMCIA stuff itself, which might allow a network or FTP install; I do not know, because until Red Hat pulls desktops out of /usr, it'll not be a distribution that I willingly use.) There is, kicking around on the Web, a kernel patch that supports the PCMCIA floppy; it works with 2.2.x kernels and, apparently, some early 2.4.x ones, though not the current versions, but this does no good at the install.

When installing to a machine of limited resources, one needs to be circumspect. It is sad that modern Linux distributions tend to be a little sluggish on slower Pentiums with "merely" 64 megs of memory, but that's the situation we're stuck with. Certainly, no one is going to do much compiling on a Libretto. Thus, we have the one situation where Debian's legendary reticence to release anything the same decade that everyone else did -- and therefore its ability to run on low-end machines -- is a definite plus. Debian's package manager blows the whiskers off everything else as well, and this is, as I mentioned, a machine in which software is going to arrive, chiefly, in binary form.

Which has nothing to do with the fact that what's on the machine right now is a combination of SuSE 7.2 and 7.3. It's a combination because the update function of SuSE 7.3 doesn't work very well. And it's on the machine because I already had a notebook drive containing it.

Dropping in the replacement drive, a 4.2-gig IBM, was a piece of cake, though the fit was a little tight. (The 100CT is supposed to accommodate a 9.5-mm-thick drive, but the one that came with it is 8.45mm.) I powered up the machine, and Linux booted.

This was of course just the beginning. XFree86 did surprisingly well first time I started it, because the machine whence the drive came also had a NeoMagic chipset. Problem was, it expected an 800x600 display, so the bottom 120 pixels were not available. These are sometimes important.

SuSE's SaX2 X configurator worked, sort of. It even allowed me to specify a screen resolution of 800x480 -- not that this had any actual effect on the display when I fired up X.

There are lots of XF86Config files for portable machines available on the Web. But most of the ones that involve older hardware are for XFree86-3.3.x, and I wanted to use 4.1. I went through a lot of other people's configurations, trying all kinds of strange modelines, before I found the magic words: Option "override_validate_mode", which is XFree86 language for "I said 800x480 and I meant 800x480, so do it, dammit!" The magic words proved convincing.

KDE looks pretty cool on the little machine, particularly because font anti-aliasing is supported with the NeoMagic chip and XFree86-4.1, but all is not well in some respects. To put it another way, knowledge of the files in ~/.kde/share/config is helpful, because KDE-2.2.2 don' do no steenkin' 800x480 -- the buttons at the bottoms of the configuration screens are all below the screen itself, even though the desktop is well-behaved. (This could be a Qt thing, because I encountered the same problem with Opera. Or it could be that there is a configuration option as yet undiscovered that brings everything into line. And this problem affected only the configuration windows -- everything else, including the KWord-1.1.1 I'm using to write this, fits on the screen.) It helps to have a second machine running KDE, so you can see what the hotkeys are. It was by this method that I discovered that the first page of the Konqueror file manager setup has two settings determined by alt-o. Oops. Because the screen space is fairly limited, it's good to turn off toolbars and status lines and other fripperies that are useful on big screens but expensive luxuries on little ones.

The machine's hardware clock insisted that it was July 18, 2001, which it wasn't. The syntax for the date command was dreamt up by a sadist, and "hwclock --systohw" isn't exactly intuitive, either. It is little details such as this that impart the notion that Linux is not easy to use. And I did not exceed in convincing YaST2 that I have an OPL2-SA3 sound chip instead of the Ensoniq 1688 that resided on the machine where the original install took place, though this could be a function of the terribly broken online update feature in SuSE.

KDE is slow but tolerable on the Libretto except for initial loading, which is deadly. Fortunately, the Libretto's hibernate (suspend-to-disk) function works if it is set up properly. Setting it up means making sure that there's nothing on the last 66 megs of the drive; if there is, it will be overwritten. This space needn't be on a partition. The Libretto doesn't care -- it doesn't consult the partition table when hibernating. (There is potential trouble if you're using a drive greater than 8.4 megs, because the Libretto's bios doesn't support them. People have cooked up all kinds of tricks for sorting out where the hibernate space is, but I've seen nothing that I'd call reliable.) I copied all the stuff from /dev/hda4, the last partition on the drive and the one normally mounted as /home to /dev/hda3, logged out as me and back in as root (this is one of the few cases where SUing root ain't enough), then fired up fdisk, deleted hda4, made a new one a little smaller, formatted it, moved everything back, and had my hibernation space. Now, instead of shutting down, I just close the Libretto's lid. The drive chatters away for a few seconds, then the power lights go off. If I come back in an hour or a week or a year, when I reopen the machine, the contents of the system memory plus video memory are restored to the screen in less than 15 seconds. (One must remove and PCMCIA cards or docking stations before doing this; PCMCIA cards will suck your battery dry and in any case if you yank 'em while the machine is asleep and then, later, start the machine back up, as far as the machine is concerned you have violated Einsteinian physics and it will go berserk.)

All in all, the little Libretto mostly works with SuSE Linux. Which isn't to say that I'm satisfied.

The To-Do List

I'd still like to get Debian on this machine, because it will probably work better, because online upgrades are said actually to work, and because it doesn't perform autoconfigurations I don't want done. I'll need to do a little research -- I don't think that the "render" extension that makes anti-aliasing possible is available in XFree86-3.3.x; otherwise, I'd probably go that route, because that would allow the 2.2.x kernel, which on a machine such as this one makes more sense (plus, the PCMCIA floppy driver patch is more likely to work with the earlier kernel).

Fortunately, I have sitting here a Fujitsu 8.4-gig notebook drive onto which Debian could be installed. I'll pop it into a different machine, either another notebook or, via one of those cool little adapters, a desktop machine, then run the install. It's ridiculous that all the Linux stuff I want on the machine won't fit on a 4.3-gig drive, but it won't. Additionally, I want to provide plenty of swap space; 128 megs just isn't enough, I think.

The sound card needs to be configured, and I want to bring over from the desktop my collection of TrueType typefaces.

And there's one thing more. I won't do it today or tomorrow, but it already lurks in the back of my mind: The 100CT is readily overclocked. It requires a little soldering, but it can result in a machine running at 200, 233, or even 266mHz. Seems to me that 200 isn't worth the trouble, and 266 is pushing it from reliability, heat, and battery life standpoints. But 233 would be enough to notice without burning down the house. There is even a company that will do the work and install a tiny front-panel switch that lets you change back and forth between standard and overclocked speeds. I'll have to see how much I use the Libretto before going that far, though.

My sense is that I'll use it a lot. In just the 2,000 words since I execrated this tiny keyboard, I've become surprisingly accustomed to it, though I still accidentally hit the CapsLock key from time to time. The little pointing device -- a variation on the eraserhead theme, located at the right of the screen, with the buttons on the other side -- is becoming more usable. It looks as if it is practical for actual work.

And there's always the pinball game, for passing the time on the train amid commuters who do not yet know how devoutly they hope I never get the sound to work.

Copyright Jupitermedia Corp. All Rights Reserved.