Debian is my distribution of choice, it is IMO the best alternative for "technical" users. Debian went on the Compaq without a hitch. However, I needed to do some preparation first...
The first problem was that a certain other OS was installed which I didn't really want. I couldn't be bothered fscking around trying to get a refund, and anyway since it was '95 I expect that I wouldn't get much back anyway. So I decided to keep it, since in the event that I needed to use USB or fiddle with hardware inaccessable from Linux, I might need it. Since it was a FAT32 partition, I needed to use Partition Magic (V3.0). The only realistic alternative was total removal of Windows or backup/restore. Hopefully some good open-source non-destructive re-partitioners will become available soon, but until then...
Anyway, with PM I discovered a smaller partition at the front of the disk, which I left alone since it was only 15 MB. It turns out that this is a FAT partition, which appears to contain Compaq's setup utilities.
The other partition was the rest of the disk, i.e. a FAT32 partition of some 4.2 GB. With PM I shrank this to 500 MB (there was about 400 MB of crap on there which came with the machine, some of which may be useful, most of is definitely NOT). This left me with enough space for a 3.5 GB Linux partition, and a 90 MB swap partition. The partition table is given in Appendix A. The Compaq setup utilities live on /dev/hda3. The eventual fstab which I ended up with is listed in Appendix A.
Having re-partitioned, it was time to insert the Debian CD. I already knew that this machine would at least work to some extent under Linux - I had stuck a boot disk in a machine in the shop and it seemed to be able to see all of the critical hardware. It was therefore no great surprise to see that Debian booted up without incident from the CD. A standard Debian 2.1 install process followed. I recompiled the kernel (2.2.12, not the one which comes with Debian), and installed LILO. My lilo.conf is shown in Appendix A. Note: 2.3 kernels do work but as of 2.3.18 you need a small patch to get sound to play at the right speed - slap this over /usr/src/linux/drivers/sound/sb_ess.c:
--- linux/drivers/sound/sb_ess.c.orig Sat Aug 28 18:59:40 1999
+++ linux/drivers/sound/sb_ess.c Sat Sep 11 21:43:46 1999
@@ -1209,15 +1209,6 @@
break;
}
- /* AAS: info stolen from ALSA: these boards have different clocks */
- switch(devc->submodel) {
- case SUBMDL_ES1869:
- case SUBMDL_ES1887:
- case SUBMDL_ES1888:
- devc->caps |= SB_CAP_ES18XX_RATE;
- break;
- }
-
hw_config->name = name;
/* FKS: sb_dsp_reset to enable extended mode???? */
sb_dsp_reset(devc); /* Turn on extended mode */
Newer kernels include this 'patch' (really an un-patch). I run 2.3.24 without problems (except for some ulimit quirks).
For those of us who like to roll-their-own kernels, you should enable APM support. Power-off on shutdown and console blanking are two very useful features which you probably want to enable. The suspend function appears to work properly, as does hibernate - just press the function key and the central power/suspend button simultaneously to initiate hibernation. Only quirk here (which seems to be common to all Compaqs) is that the control key is "stuck down" when you resume from standby. Just press the control key or switch VCs to get it to behave itself.
As to the software installation, Debian packages which definitely should go in include the apmd package and pcmcia-cs. The former keeps your clock set correctly when you suspend/resume (and does lots of other things too) while the latter is essential if you are using PCMCIA (PC-Card) devices (which I am not at present).
According to Windows, the touchpad emulated a PS/2 mouse, and the sound card was an ESS ES1869 (SB compatible). I made all the IO-port and IRQ settings the same as under Windows (see - Windows is good for something :) and enabled Plug and Play for good measure. My /proc/sound is listed in Appendix B. Sound works perfectly, although the built-in speakers are a little tinny (answer - a good quality pair of headphones). I wanted to use PLIP, so I compiled this into the kernel and added the appropriate options to /etc/lilo.conf (see Appendix A). These options are required to specify the IRQ, without which PLIP will not work. Section 5 has more to say about PLIP.
I didn't like the pokey default text mode. It only used the central 640x480 subset of the screen. To improve this I recompiled the kernel with the vesa_fb framebuffer console driver. This only works in 256 colour mode, but at 800x600 it uses the whole screen and gives a 100x37 text console. Beautiful. The mode to pass in the kernel boot parameters is vga = 771.