winter's computers
found, loved, and nurtured for spring
my ugly geek secret

Saturday 16 June 2007

the big sleep

biglug wouldn't boot. The four AA's were long dead, leaking acid into the cheap, black plastic battery holder, my homegrown replacement for the original CMOS battery. It had lost all knowledge of what it was: what floppies, what hard drives, what monitors were attached to it. It didn't even know what time it was, convinced it was January 1st, 1980, flashback to big hair and FM synthesized music. New batteries would have to wait; I wanted to know what was on that hard drive.

Hours of wandering FTP sites in the lonely, dark corners of the world-wide-cobweb had turned up gold in the form of an ancient Compaq setup and diagnostics diskette image. Having dumped it to a dusty 720K disk — its label torn, words scratched out and over-written in an indecipherable history of recycled media — I brought biglug up and filled it in on what it was, what it could do (or more to the point, what it couldn't do), that the end of the millenium had come and gone and it was now an antique, sought more for nostalgia than number crunching. With the CMOS freshly updated, I ejected the diskette and rebooted. No dice.

Hard drive stiction. My old nemesis. "Never though I'd see you again," I croaked, the bitter memories rising like smoke from a sixty watt soldering iron. There was a time when a hard drive's read/write heads — gliding on Bernoulli's cushions of air — would land on the platters when power was cut, right on top of whatever data was being read at the time. Sometimes the heads would stick to the platters and the platters would refuse to spin up.

The first few times the client could finesse his way out of it, cycle the power repeatedly and maybe... just maybe... his drives would spin up and he could buy a little time to make backups, something he should have been doing as regularly as changing his underwear. Eventually the drive would stop cooperating and I'd be called in. I'd show up — often just after the client had changed his underwear — pull the drive out, hold it in one hand, and give it a quick twist. Typically that's all the convincing it would need.

I started down the path I'd taken so many times before, removing the covers, opening the card cage, releasing the drive cages. It was an old routine and biglug yielded willingly, though it shed pieces of its covers every time regardless of how much care I took.

I released the hard drive cage from the bottom as well, replacing the batteries while I was at it.

To protect the drive from stiction, it was common practice to "park" the heads in the "landing zone," an area of the hard drive with no data. This was before "voice coils," where the heads were attached to springs that would pull them back into the landing zone whenever the power was cut. Designed by dames, I reckon. A real man would manually run a utility that parked the heads before shutting down, taking his chances with power failures. After all, you always had your backup.

Even in the landing zone drives could experience stiction, though, as happened to biglug. I know I manually parked its heads before shutting it down last time.

Once I wrote a utility that parked a drive's heads on the other side of the disk from the landing zone in order to avoid stiction. I just partitioned the drive to skip the first and last cylinders so nothing important would be saved there, effectively creating my own landing zones. I wrote the utility in machine language using the DOS debug command, saving it to a .COM file. Then I bit the top off a bottle of whiskey, downed the entire contents in one go, and dug a bullet out of the back of my neck with a rusty steak knife dripping with iodine. Or something like that... I'm a little hazy on what happened after I wrote the .COM file.

A little twist, and with the boards plugged back in, the hard drive was spinning again.

There was something wrong, though. I needed to configure the CMOS again since I had swapped out the batteries, but the setup and diagnostic diskette wasn't booting. I checked my connections; everything looked good. The floppy was trying to boot but would just make a bunch of noise and fail. I immediately swapped out the floppy drive, worried but hopeful. It would be OK. biglug would pull through. We'd been through much worse than this.

The new drive was making the same noises. Controller problem then. Or motherboard... no, don't think like that. Get a hold of yourself.

I checked the connections again. The proprietary floppy controller wasn't fully seated. I cursed myself for not taking the appropriate care, for not checking twice before powering up. I reseated the controller but it was too late: biglug started with the same pathetic sounds.

This was it then.

I slowly reached over and placed my hand on the power switch, hesitated, then forced myself to toggle the switch and shut biglug off. One last look at the CRT, the words "601 - floppy error" fading slowly with the persistence of the old green phosphors, and I locked the keyboard back in place one last time over the dark screen.

It was the big sleep for biglug.

Tuesday 12 June 2007

grimlock

Model

  • DEC PDP-11/44
Introduced
  • 1979
CPU
  • DEC PDP-11/44
RAM
  • 256 KB, 512 KB, 768 KB, or 1MB (don't remember which)
Video
  • Data General 6500A serial console (VT52 compatible terminal)
Disk
  • DEC RL01 5.2 MB disk cartridge subsystem
  • Plessey PM-DDA11/B 5 MB dual fixed / removable cartridge subsystem
Network
  • none installed
Operating Systems
  • RT-11
  • RSTS/E
  • Unix
Features
  • CDA MSP-3000 Array Processor
I used one of these in college for a low-level programming course. Its assembly language is a thing of beauty. The CPU is several boards inside the second unit from the top.

The terminal was a later addition. Previously I just used a terminal emulator on one of my DOS PCs, which turned out handy when — while inspecting the CPU — I snapped a pin off the boot rom. Fortunately I got the short boot code from somewhere (one of the thousand manuals that came with it, I think) and wrote a little BASIC program on the DOS PC that would feed the boot code to grimlock's console then boot it. It worked like a charm.

I had grimlock almost booting off a cartridge in the RL01 (top unit), but after throwing a few characters on the console saying it was booting Unix it just hanged. I don't know if the problem is the RL01 or the cartridge, but I have almost a dozen others that I haven't tried yet.

Some of them are for the Plessey drive (third unit from the top), which is a weird beast that has a removable cartridge portion and a non-removable cartridge sealed inside it. The entire unit pretends to be two RK05Js.

I haven't tried to get it to work yet, nor the array processor (bottom unit), which is like the numerical coprocessor chip on pre-Pentium PCs. One interesting feature of the array processor is that in 1979 it implemented instruction pipelining, a feature that Intel added to the '486 ten years later.

I've got a box full of expansion cards, too. One might be a network card, but right now this thing has no network capability.

I haven't turned grimlock on since I lived in Port Moody 15 years ago. The CPU by itself sounds like a jet plane taking off. In Keremeos I was always afraid the street lights would dim if I started it up.

Sunday 10 June 2007

a2brute

Model

  • Apple IIe Platinum
Introduced
  • 1987
CPU
  • WDC 65C02, 1MHz
RAM
  • 128 KB
Video
  • 560 x 192, 16 colour
Disk
  • 5¼" floppy
Network
  • none
Operating Systems
  • ProDOS 1.1
  • Apple DOS 3.3
  • CP/M
Features
  • CP/M card
I was fascinated by computers at a young age, being a sci-fi fanatic, but I never thought I'd ever see one in the little town of Revelstoke. Then one afternoon in Grade 9 (1982), after classes, I walked past a small room that I'd never seen inside before. The door was open and through it I saw some students working on about a half dozen Apple II+ computers. Grade 9's were not allowed to use the computers except as part of a class, and we did get a brief introduction to them as part of Math class. I was hooked then.

When I got into Grade 10 there were no computer classes available, but I was allowed to use any computer that hadn't been reserved by the Grade 11's and 12's. So I learned to program in BASIC a few minutes at a time, and by Grade 11 I was passing on all my bad programming habits to other Computer Science students. In Grade 12 I was teaching myself 6502 assembly language while being forced through a paradigm shift to structured Pascal programming in class.

So, while I never became a professional programmer (that's another story) my current career did start with this particular computer (or, actually, its immediate predecessor).

trash80

Model

  • Tandy TRS-80 Color Computer 2
Introduced
  • 1983
CPU
  • Motorola 6809E, 0.89 MHz
RAM
  • 64 KB
Video
  • 256 x 192, 2 colour
Disk
  • none
Network
  • none
Operating Systems
  • none
Features
  • Digital-to-analog converter
The big religious war when I was in highschool was Apple II versus TRS-80. I would always give my friend Aaron a hard time about his TRS-80 CoCo (Colour Computer). The heart of this supposedly intellectual debate was that the Apple II used a 6502 processor, a knock off of the superior (in my opinion) Motorola 6809. The Trash-80s, in contrast, had to suffer with the ugly (in my opinion) Z-80 processor.

Only years later did I find out that while some TRS-80s used the Z-80 processor, the CoCos actually used a 6809. If I had only known this, all those years ago... I would have found some other pointless rationalization for why the Apple II was still superior.

One thing I secretly admired about Aaron's CoCo, though, was the speech synthesizer program. When he told it to say a particular number — "forty-six" or something — it would sound like it was saying "bloody pig." That was cool.

mabell

Model

  • AT&T PC 6300
Introduced
  • 1984
CPU
  • Intel 8086, 8 MHz
RAM
  • 640 KB
Video
  • 12" Monochrome
  • 640 x 200 CGA, 640 x 400 extended
Disk
  • 20 MB harddrive
  • 360 KB 5¼" floppy
Network
  • Interlink via parallel port
Operating Systems
  • MS-DOS 6.22
Features
  • Monitor uses 640x400
mabell is set up identically to bozo. It runs PCTools Desktop, in which I had created databases for phone messages, to do lists, tracking what shows we'd recorded on video tape, and various other mundane purposes.

It also has a couple of baby-bash programs I had written many years ago for Donnie Darko. I've got video of him bashing away at them. One program just made different shaded boxes with a corresponding tone every time a key was pressed. It was noisy and annoying and he loved it.

The other was more for showing to visitors. Every time a key was pressed the program would display the next character in a text file. The result was when Donnie bashed the keyboard perfect English would appear on the screen as if he had just typed it in.

Saturday 9 June 2007

bozo

Model

  • Compaq Deskpro
Introduced
  • 1984
CPU
  • Intel 8086, 7.14 MHz
RAM
  • 640 KB
Video
  • 12" Monochrome
  • 640 x 200 CGA, 80 x 25 (text) MDA
Disk
  • 10 MB harddrive
  • 360 KB 5¼" floppy (A:)
  • 360 KB 5¼" floppy (B:)
Network
  • Interlink via parallel port
Operating Systems
  • MS-DOS 6.22
Features
  • Monitor switches between MDA and CGA mode, so you get nice crisp text when not displaying graphics
  • TVOut option
  • Boots in slower compatibility mode, but pressing Ctrl-Alt-\ switches to 7.14 MHz
bozo is set up identically to mabell. It's got PC-Tools Deluxe on it, which includes a bunch of file system utilities and Desktop: a suite including Notepad (text editor), Outline (structured text editor), Database, a remote dial-up terminal, calculators, and a few other functions.

At one time I had this linked to another PC through the DOS Interlink utility, which allows a PC acting as a client to access the drives of another PC acting as a server. In fact, I had three PCs connected together this way, so that one PC would publish its drives over a null-modem serial port cable to the second PC, and the second PC would publish its drives and the Interlink connected drives of the first PC via a Laplink parallel port cable to the third PC.

Clever or sad... you decide.

biglug

Model

  • Compaq Portable 286
Introduced
  • 1985
CPU
  • Intel 80286, 6/8 MHz
RAM
  • 640 KB
Video
  • 7" Monochrome
  • 640 x 200 CGA, 80 x 25 (text) MDA
Disk
  • 20 MB harddrive
  • 720 KB 3½" floppy
  • 1.2 MB 5¼" floppy
Network
  • Interlink via parallel port
Operating Systems
  • MS-DOS 6.22
Features
  • Internal monitor switches between MDA and CGA mode, so you get nice crisp text when not displaying graphics
  • TVOut option
  • External CGA monitor option
  • Can switch between 6 MHz compatible mode and 8 Mhz turbo mode
Portable in the 80s meant anything with a handle on it. Put a handle on your house: mobile home. The Compaq Portable 286 was the first "portable" PC with the 80286 processor. It weighs about 20 kgs, has a handle on the top/back, and when not in use the entire thing rests on the keyboard attached to the bottom/front. 20 kgs resting on the keyboard; they don't build them like that anymore.

biglug is running MS-DOS 6.22, I suspect. I can't tell because due to stiction the hardrive won't spin up. The CMOS battery is dead, too. Actually the CMOS battery died years ago and I replaced it with a battery holder with four AA batteries in it. Those batteries are dead too, and I don't fancy taking biglug apart again as every time I do pieces fall off. The side panels are barely staying on.

If I get biglug up and running, I'll save anything of interest that might be on the harddrive. Then, I'll replace MS-DOS with FreeDOS and maybe make it dual boot with Minix. Or not. I have two XT class PCs that I could run FreeDOS and Minix on as well.

Tuesday 5 June 2007

woz

Model

  • Apple Macintosh SE/30
Introduced
  • 1989
CPU
  • Motorola MC68030 (68882 FPU), 16 MHz
RAM
  • 8 MB
Video
  • 9" Monochrome
Disk
  • 800 MB harddrive
Network
  • LocalTalk
Operating Systems
  • MacOS 7.5
I think the SE/30 is my all time favourite Mac, being quite a powerful computer for its time and very flexible. woz is currently running System 7.5 with a CD-ROM extension that allowed me to connect a CD-ROM via an external harddrive case (left open so I could put CDs in it) and install software from CD (before I had the AppleTalk network working with jobs). I've got a couple of real external SCSI CD-ROM drives now as well but I don't know yet if they'll work on an SE/30.

Some day, I just might try installing NetBSD on woz.

jobs

Model

  • Apple Macintosh Performa 5200CD
Introduced
  • 1995
CPU
  • PowerPC 603, 75 MHz
RAM
  • 48 MB
Video
  • 15" Colour
Disk
  • 4 GB harddrive
  • CD-ROM
Network
  • 10BASE-T
  • LocalTalk
Operating Systems
  • MacOS 7.6.1
Features
  • NuBus architecture
I replaced jobs' IDE harddrive with a non-standard 4 GB drive and used a hacked partition tool to create four 500MB MacOS volumes. I left the other half of the harddrive unpartitioned for use by Debian Linux, which I have yet to successfully install. Due to the NuBus architecture, I have to use a modified Linux kernel (from nubus-pmac.sourceforge.net) to boot the installation disk. I can get the installation process started, but it fails while loading packages and I can't switch to another console to see the error. I haven't given up yet, though.

Meanwhile, I've got a LaserWriter cable attached to jobs to create a point-to-point LocalTalk network to woz, my SE/30. I considered setting up a LocalTalk-to-Ethernet bridge but as it's currently set up I can download files from the Internet on jobs and transfer them via AppleTalk to woz.

Monday 4 June 2007

libretto

Model

  • Toshiba Libretto 100CT
Introduced
  • 1998
CPU
  • Intel Mobile Pentium MMX, 200MHz (overclocked from 166MHz)
RAM
  • 64 MB
Video
  • NeoMagic MagicGraph 128XD (NM2160)
  • 800x480 , 7.2" TFT LCD display
Disk
  • 6 GB harddrive
Network
  • Wireless (CardBus NIC)
Operating Systems
  • Xubuntu Linux 6.06 LTS (Dapper Drake)
Features
  • FIR infrared communication port
I've owned a couple of Palm compatibles and have used Blackberries for awhile; they're great but not terribly flexible. I remembered seeing a Toshiba Libretto about a decade ago and — thinking this might work better for me — I bought one from eBay. It came with a docking station but no CD-ROM drive. It didn't even have a floppy drive.

Installing Linux on it was no fun: I wanted to be able to hibernate the Libretto (have it go to sleep and wake up without having to go through the boot process) so I moved the harddrive to another PC, installed DOS on a small partition, booted it on the Libretto, and repartitioned the entire disk as a single partition. The Libretto lied to DOS about the size of the disk, leaving space on it for the hibernation partition.

Moving the harddrive back to the other PC, I used Linux to create a special partition to mark the hibernation space, deleted the DOS partition, and added a minimal partition to hold the contents of the Xubuntu install CD. After chanting and sacrificing a small goat, I got the harddrive to boot in the Libretto and run the Xubuntu install.

After the install, I moved the harddrive back into the other PC one last time, deleted the Linux install partition, and increased the size of the Xubuntu partition into the newly empty space (using the Linux fdisk command and the reiserfs tools).

And it worked. Xubuntu Linux is the same as Ubuntu but tweaked for low power systems. The main difference is the XFCE GUI it runs, which I find really suits the small Libretto screen. OpenOffice would be too much of a pig on this device, so instead I run AbiWord for a word processor, Gnumeric for a spreadsheet, and Glom for a database. The Gimp works fine, but I've substituted Opera for Firefox (and I am quite impressed with how nicely web pages render in Opera).

The mouse on libretto is like a TrackPoint except it's mounted to the right of the screen and you control it with your thumb. The buttons are on the opposite side of the lid from the TrackPoint (the top or outside of the lid) so when you click you essentially squeeze the lid. The TrackPoint isn't that sensitive, though, so I find I have to use a third finger to grip the case when I'm dragging things around. It took a little getting used to but works quite well.

The coolest thing is the hibernation function. When I close the lid libretto goes into hibernation mode, saving everything in memory to the hibernation partition on the harddrive. When I open the lid, it automatically turns on and loads the hibernation partition back into memory. In a few seconds the apps and docs I had open before are back and I'm ready to continue where I left off. Very convenient.

Saturday 2 June 2007

laurence

Model

  • HP Vectra VL800 MT
Introduced
  • 2001
CPU
  • Intel Pentium 4, 1700MHz
RAM
  • 1280 MB
Video
  • Matrox G450
Disk
  • 10 GB harddrive
  • 189 GB harddrive
  • DVD-ROM
Network
  • 100BASE-TX
Operating Systems
  • Ubuntu Linux 6.06 LTS (Dapper Drake)
Features

laurence is my secondary PC. It acts as a file server (which is why romeo doesn't have much disk space) and performs other centralized tasks like backups. I converted all my CDs to Ogg Vorbis files on laurence so I can listen to music from any PC in the house or from a laptop in the back yard (via my wireless network). With my pre-amplified turntable, I'll be converting all my vinyl albums to Ogg Vorbis next.

romeo

Model

  • HP Vectra VL800 MT
Introduced
  • 2001
CPU
  • Intel Pentium 4, 1700MHz
RAM
  • 1280 MB
Video
  • nVidia NV28 [GeForce4 Ti 4200 AGP 8x]
Disk
  • 19 GB harddrive
  • 37 GB harddrive
  • DVD-ROM
  • DVD-RAM
Network
  • Wireless
Operating Systems
  • Ubuntu Linux 6.06 LTS (Dapper Drake)
  • Windows 2000 Professional
Features
  • Dual 21" HP p1230 displays in vertical configuration, attached to one dual-head video card
  • Wacom Graphire graphics tablet with mouse and pen, rotated to support vertical display configuration
  • HP LaserJet 4L black-and-white laser printer
romeo is my primary PC. Besides the usual functions, I do my photo editing and art work using the Graphire pen. With the Gimp — an image editing program — I can make the pen act like a paintbrush, eraser, airbrush, and various other tools (including a pen). I typically keep the tools in the top screen and the actual photo or graphic I'm working on in the bottom screen.

I also boot into Windows occasionally to run the few programs that just don't work in Linux. I've considered installing Wine so I can run them under Linux, but the last time I tried this it didn't go too well. I can live with the occasional reboot.

Running network cable for romeo would have been onerous so I opted for a 54Mbit/sec wireless network (theoretically about half the speed of my wired network).