Subscribe via RSS
27Sep/1612

Compaq Deskpro 386s/20n

I love old machinery. Apart from the physical presence and the sounds, there's no better reason to tinker with it other than to boot it up and play Railroad Tycoon Deluxe or A-Train. Therefore I purchased a dead Compaq 386 in order to revive it, install a sound card and listen to the beautiful adlib tunes of Railroad Tycoon's intro.

The machine

This poor thing hasn't seen much action for a while. There's dust caked everywhere and the outside of the case is grotty. It's actually a really nice design. Slim form factor with custom floppy drive. Well, not-that-custom... they've just taken the faceplate off and hidden it behind the front case panel. Obviously no room for a CD Drive, but I have a parallel-port model that should work perfectly.

DSC06270

DSC06271 DSC06272 DSC06273

DSC06274 DSC06219 DSC06225

Opening it up revealed just how custom and proprietary everything was. There was a non-standard power supply with a non-standard connector to the non-standard motherboard. Wait... it's not connected to the motherboard, it's connected to the vertical riser. That's not just for the ISA cards... it also routes power and data to both the HDD and floppy drive.

After a brief visual inspection, I performed the first test... apply power! I already knew it was dead, the seller told me so, so I didn't expect much. Hitting the power switch saw the fan twitch and the floppy drive light illuminate. It then repeated this at 1-second intervals. The power supply was trying to provide current but tripping straight away. No amount of unplugging peripherals would see it start.

Dead power supply

The first point about the power supply was that it wasn't a single removable unit. It's actually built into the case. There's a metal shield, holding the fan, that lifts off. The PCB is then bolted to the main chassis.

DSC06187 DSC06188 DSC06195

There were some telltale signs already: an odour of ozone and a large patch of fluid residue on the PCB and on the connector to the motherboard. That connector had me worried as well. It's the first time I've seen a direct connection, rather than a bunch of cabling and a plug, between the power supply and the motherboard. Once out, I looked more-closely at the power supply for any further defects.

DSC06188 DSC06197 DSC06203

Despite the residue, the capacitors actually looked in OK condition. There was no bulging or discolouration. Of course, looks can be deceiving! De-soldering them and looking at their butts showed a different story!

DSC06214

I thought to myself that this was now going to be an easy fix: just replace the damn things. Better point? I actually had replacement caps on hand. Unfortunately, after replacing all caps on the board with equivalent values I still had a dead power supply.

DSC06207 DSC06216 DSC06217

Replace more components, or buy a spare PSU?

Ok, here's the junction in the road... I mentioned above that the PSU was still dead... but in actual fact I had the HDD spin up for a brief moment! Something triggered the PSU to provide power, but this was short-lived. This could have been because it somehow saw 'load' on the pins, or because it momentarily chose to work. In my excitement, I put the motherboard back in and it all went dead again. Removing the motherboard didn't help; the HDD wouldn't spin up anymore. Still, the fact that the HDD was operational and the noise of that vintage drive spinning up was enough to keep me going.

From this, I could therefore point all fingers at the PSU. There was one on eBay, for over AUD$100, in the UK. That was an expensive gamble for, what could be, a very dead 386. Therefore, my first option should be to replace components in the PSU until it worked again. Looking at the board though, all 'areas of interest' were based around that nondescript Compaq integrated circuit. No amount of googling came up with any results!

The chip reads 114055-002/8072 (C) COMPAQ 1988 RAY H 9006. It's a 24-pin DIP and it's non-existent on the web. No real ability to replace this if I have no idea what it is! The other transformers seem to have dried fluid over them, but this actually seems to be from manufacture? There's a whole lot of power transistors of which look intact. Finding and replacing each one of them would total up to more than the other power supply on eBay is worth. Maybe I should just grab it? If I did then I could at least provide the pinout for this CPU for other users and maybe then repair this unit by working backwards from a functional one.

Further research revealed that the Compaq Deskpro 286N also uses the same PSU. The motherboard is just different, containing the 286 class CPU with all required components. Interesting to know that this 386 machine was built to use existing infrastructure from the previous CPU version. Either way, the googling amped up as I now had a wider scope of information to search for. Unfortunately there was still very little information on this PSU.

Decision to replace with an ATX supply

This was by freak chance. I went on lunch to find more capacitors for the PSU. I knew that these wouldn't help as they were only replacing caps that were actually obviously 100% OK. On the way to the electronics store, I passed a PC store that I've never really been in, as I thought it was all hoity-toity and full of brand new garbage. Turns out they had a random selection of secondhand gear out the back. I saw a tiny PSU (it would fit in the case!) that seemed to have one AT connector on it, labelled P10. Later googling told me that this was not an AT connector, but I got the PSU for AUD$20 when it had AUD$95 marked on it initially! Twas a sign... I purchased the header connectors as well as useless replacement caps.

DSC06241

There was work to be done to rewire the cable, but first we needed to know the pinout.

Determining the pinout

The power supply plugs into the vertical PCB. I don't know what you'd call this component? Maybe a distribution board? Junction board? Daughterboard? It's a vertical riser for the ISA slots, but it also has the plumbing from the disk controller. (Update: it's called a Backplane.) The best part is that the standard drive voltages flow through here. I therefore quickly determined the +12v, GND and +5v. These wires were often duplicated and comprised of the majority of the pins. In short time I had the first two columns of the table below.

Pin Connection ATX Colour Comments
1 -12v Blue 2nd pin, bottom row, MB socket
7th pin, bottom row, ISA socket
I thought this was going to be a challenge... then I traced it to the ISA slot and found the connection.
2 -5v White 5th pin, bottom row, ISA socket
Thank you ISA slot.
3 +5v Red Traced to HDD power connector
4 +5v Red ^^
5 +5v Red ^^
6 +5v Red ^^
7 GND Black These are grounded everywhere
8 GND Black ^^
9 GND Black ^^
10 GND Black ^^
11 GND Black ^^
12 +12v Yellow Traced to HDD power connector
13 Not Connected? I attempted to pull up the plastic on the pin header to see if there were any traces connected. Can't see any!
14 Power Good? Grey 5th pin, bottom row, MB socket
Eep... buried in the motherboard... has to be Power Good?

From here, I had a problem... 2 of the wires fed into the dense motherboard socket. Tracing them further took a bit of work! Here I was assuming that the plug should be similar to a standard AT Power Supply Connector. Unfortunately not. It seems that Compaq (or Miniman) have decided to put a little more logic in the PSU than on the motherboard.

Further tracing saw wires heading to the ISA slots. This is perfect, as it's an industry standard and I could map them. I found -5v and -12v pretty quickly... the final pin went into the motherboard. Must be the Power Good signal.

Rewiring the ATX Power Supply

With the educated guess above on the 'Power Good' signal, I went ahead and wired up the ATX supply.

DSC06242

DSC06244 DSC06246 DSC06247

DSC06250

With the new cable on... I took baby steps towards testing. Firstly only the backplane with the HDD and floppy attached.

DSC06248 DSC06251 DSC06252

And then I plugged the motherboard and video card in.

DSC06253

Shittttt.... it woooorrrkkkeedd.... Before I switch to the software realm, I'll make this power supply more permanent.

Making the ATX supply fit

Fortunately this power supply was already tiny. Anything of normal size would not fit in the area provided and it didn't help that the original shielding was slanted. The fan was also mounted on the inside of the shield leaving little room for anything underneath.

DSC06254 DSC06255 DSC06256

I dismantled the new supply, destroying the leg on a component that was soldered directly onto the back of the power plug. I'd have to transfer these over to the old plug as I couldn't get it out of the case without a lot of extra work. Fortunately, the old power supply had the same component, so I stole one from there.

DSC06257 DSC06258 DSC06264

I soldered up the old plug as per the new plug's wiring. I then wired up the existing power switch. The old AT power switches had the entire 240v fed through them, and so are quite solid. I cut the plug off and used one pole to switch the green soft power from the ATX to ground. Worked perfectly!

DSC06260 DSC06262 DSC06263

I desoldered all the cables that I wouldn't need from the PSU. This was quite easy as they're fed in there in clusters! Mounting the fan wasn't fun... but it fit OK up the back on one of the screws that held the shield on. The shield then happily sat on top... a few millimetres higher than it usually would be.

DSC06265 DSC06266 DSC06267

Quick update: the fan mount was terrible. So I went and purchased a smaller 60mm fan and cable-tied it to the power supply PCB. It actually holds the PCB tighter and in place.

DSC06390 DSC06392 DSC06394

I previously stenciled out where I'd mount the fan, but now there's no need. Either way, check out the aftermath... here's the debris from the entire operation:

DSC06269

Motherboard Capacitors

Except for the self-test, I held myself back from booting the machine any further. I'd noticed that the rectangular capacitors on the motherboard were corroding and loose. Well, not all of them... 7 to start with, and after a plea for help on the electro-tech-online forums, it turns out I had the relevant 10uf 16v electrolytics in my arsenal.

DSC06227 DSC06229 DSC06231

DSC06237

Here's a good forum thread at Vogons where people are sharing similar experiences.

With these replaced, I attempted to boot the machine.

CMOS/BIOS issues

Of course, the hardware was never going to be the only problem. On the photo above, you can see the BIOS errors reported on first boot. The configuration data is held by a battery which as long-since expired. Back in the 386 days it wasn't a simple coin-cell either... but I'll talk about that later. Regardless of the battery state, I should have still been able to configure the machine.

Unfortunately, it seems that there is actual no BIOS configuration utility to 'enter' and so Compaq provided disks that loaded into diagnostic and configuration programs. Fortunately, other people on the net have also had to search for them and there were enough results on google. Download the self-extracting archive here. To use this, you'll need a double-density floppy disk. Turns out you'll also need an old machine! The EXE wont run on Windows 10. Virtual Box just threw errors with my real floppy drive and Windows 98 and so I built a brand new Windows 98SE install on VMWare Desktop. That burnt the floppy disk... but the disk then didn't work... it complained that it was the wrong version?

DSC06275

DSC06276 DSC06277 DSC06278

DSC06279

The screens above are as follows:

  1. SETUP.EXE telling me I have the wrong machine.
  2. TEST.COM telling me I have the wrong machine and to find a newer version of the software?
  3. TEST.COM starting... nice logo!
  4. TEST.COM initial diagnostics list
  5. TEST.COM further machine detail

I tried a few other boot disks... All gathered from AllBootDisks. Starting the machine with DOS 5.0 and then running setup gave me: Packed file is corrupt. This is utter poop, as the same SETUP runs fine when booted by itself.

I then tried a DOS 3.3 bootdisk and it gave me the same errors as above: wrong machine, etc... So it turns out the DOS version determines how well the SETUP program runs. Maybe all these disks are crap because they were burnt via a virtual PC?

There's an entire list of the softpaqs available here. Searching gave me other possibilities, such as Compaq System Configuration Utility v2.58 Rev A SP19624 (actually, that's in Japanese), SP19619 (English), etc... But they're not matching my model. Actually, that index is for much more recent machines. I'd need something from this folder, but the index is incomplete.

But wait, thanks to the wayback machine, we have Compaq's support file listing from 1996. It's all close-but-no-cigar... there's a few interesting 'Rompaqs' in there. They seem to be the flashable ROM BIOS? Maybe there's a version specifically for the 386s/20n.

Hold the phone... the PDF here for the 386N shows my machine in the picture. The PDF here for the 386s/20n shows the 386/20. Were Compaq just lazy and pasted the wrong image? Further digging shows this awesome magazine advertisement from InfoWorld, 1991 (scroll up a little) where it shows my machine with the correct label... lucky... I didn't want a frankenstein.

Meanwhile.. the article here on the 386N indicates that the 'ROM Resident' setup utility (standard for machines of the day?) can be disabled via a dip switch. Well, I know of the switch, but I didn't know how to get into the BIOS. Someone here mentions F10 (find link), but then that is quickly dismissed as Compaq's needed diag disks. Maybe mine doesn't?

Well .. that couldn't be funnier. Indeed my machine just needs the correct keypress at the correct time.

DSC06282 DSC06283 DSC06284

See that shitty little block in the top-right corner? As soon as you see that, hit F10.

DSC06289

Man, we're in... time to configure disks. Wait. It isn't... we won't be saving anything until we fix the CMOS battery.

CMOS Battery

The motherboard has a DS1287 Dallas Chip for the clock/oscillator and battery backup. This unit is sealed. To get to the battery you literally have to hack it apart.

DSC06228

Fortunately, people have already done this. I've just bought the components to do this hack myself... so, let's spin up the power tools!

DSC06292 DSC06293 DSC06294

DSC06295 DSC06297 DSC06298

DSC06300

I half killed it. Be REALLY careful when grinding away at it. Either way, my configuration now saves! I even fluked it by getting a battery that has "Lithium Battery" on it in Katakana!

Disk Drives

So, we're booting and we can save CMOS configuration. The clock can't handle the year 2016, so let's pretend it's the year 1991. Due to this machine's vintage, the hard disk configuration in the BIOS is limited. Back then, there was a set table of known disk configurations. Each configuration specified the number of heads, cylinders and sectors which, when calculated together, provided the size of the disk. This machine was meant to come with a 120mb drive... this is option '50' in the BIOS, so I set that.

Reboot and I'm presented with 1782 - Disk Controller Failure. That's a really scary message... I would've preferred something worded with 'drive' rather than controller! What disk do we have in this machine anyway?

DSC06290

What on earth is a PlusImpulse? It looks like a Quantum... oh.. it is... tiny writing under the main brand name. Here's the specifications of the drive. No mention of the matching BIOS HDD table 'number'. Turns out that there isn't one. I found out the hard way by scrolling through the entire 60-odd options.

Quickly checked if the disk worked in my main PC via a USB-IDE adapter. Nothing! Dead drive! Turns out I have a 500GB (yes, gigabyte) IDE drive hanging around. So I tested that on the USB-IDE first and it worked. I then plugged it in to the Compaq and restarted. Same controller error! Quick inspection of the drive: it's in slave mode! Switched to master and there's no more controller error. YES!

DSC06301

That photo above still makes me chuckle. Who would've thought you'd ever see a 500GB drive in a 386? I slapped in a random Compaq FASTART DOS 3.1 boot disk and let it attempt to partition the drive. It really had no chance and kept failing miserably. I really didn't know what to expect when something this large was plugged in.

I tried another 200gb IDE drive which I had lying around. Configured as master, the BIOS then started throwing 1790 - Disk 0 Error. Putting the 500gb back presented the same error? Uh oh. Am I destroying the bus by putting these huge drives on that were never meant to be in 386s? I slapped the original 52mb drive back in and still had the error. Damn.

In the BIOS, to get rid of this error, I was about to set no HDD. Instead, for some reason, I chose a size that was just slightly smaller than the 52mb. On reboot, no error! I still had the DOS 6.22 boot disk in there and, as that I wasn't paying attention, it booted up. There was a different screen up... indicating that installing would overwrite the pre-existing system? What's going on here. I exited and checked out FDISK.

DSC06306

Hah. Wut? It has somehow found a partition. This disk didn't work on the IDE-USB cable... but now it's working here? Have I just, by complete chance, chosen the 'correct' BIOS setting that the previous owner used when setting up this drive? Actually, can you use any disk configuration as long as it is within the bounds of the disks parameters?

Either way, I let it reboot... but it still came up with non-system disk? It definitely tried to access the HD though! I rebooted into the MS-DOS floppy and then ran a benign SYS C:. I could see that all the other files were there, so it may have just needed the minor DOS boot files. Upon reboot... we got to a bloody C:\ prompt!

DSC06308 DSC06309 DSC06312

AUTOEXEC.BAT pointed to BASEPAGE which no longer existed, hence the errors. There's also a PRINCE folder... no idea. The obvious thing to test was Windows, which booted fine... Paint Brush worked a treat! IT'S ALIVE!... That's enough for tonight... I have more plans for it (hints in the next picture), but this article has gone on long enough!

DSC06303

This has been a blast.