You know those people who keep all their old computers on the off-chance that they might eventually find a use for them? The ones that even have their old Commodore 64 and its original monitor? Well, I can understand these people because I have a fondness for old things… especially old computers. But I'm not a packrat and since I usually only stay in one city for a few years, having too much stuff weighs me down in a very real way.
So, a while ago I started the habit of virtualizing my old computers before selling them — or recycling them, if too old to sell. This started with my old Amiga 1200, which I had been packing around from 1992 until 2007. The old beast had to go but I couldn't really part with it, because I had written a ton of old software for it that wouldn't run on any other machine:
- My first GUI widget toolkit, written in Amiga BASIC.
- My first 3D graphics library, written in 68000 assembler.
- My first interpreter, for Scheme (a variant of LISP).
None of these are particularly useful to me now, but I still enjoy playing with them now and again. So I spent a day recreating this old machine's hard drive on my Linux box, copying the files over on a 720k floppy. Then I downloaded an emulator, and ran the virtual machine… with all the files exactly where they used to be.
Since then, virtualizing my old computers has been a habit of mine. For most of my computers from school or work, I just keep a copy of all the files. But for my home computers, I keep the old hard disk (or sometimes just the partition) and run it as a virtual machine… either inside VMWare or Parallels (or for Linux, just inside a chroot). So for example, on my main home computer I have:
- 64-bit Linux as the main operating system, for work.
- A virtual Windows XP system running under VMWare, actually a copy of an older work machine.
- My old 32-bit home computer running in a chroot jail with its own X session. I use CTRL-ALT-F9 and CTRL-ALT-F7 to switch back and forth between my "work" computer and my "home" computer.
- Another Windows XP virtual machine (running on my virtual "home" machine).
- My old Amiga with all its software, games, and art.
- An Apple II+, the first computer I ever used.
- Full backups from school/home/work going back to 1988.
You might think this is a bit excessive, but hey, none of these take up any shelf space, and it's nice to keep all this old stuff around. Now if there was only some way that I could virtualize my old pets, so that I could keep them around forever, too.