If one is attempting retro computing necromancy, there are a few common failure points to be
aware of.
For example, it’s not uncommon for a PSU to simply take an early retirement.
It could even be said that capacitor explosions are something of a right of passage.
Given that this is an NCommander project, it’s perhaps not unexpected that my Compaq
Portable turned out to be well on its way to filling out a bingo card of problems.
As I would find out, some of these were common, and some that weren’t ...
Now Compaq Portables are fairly common machines, and quite a few people have dealt with the
quirks inherent to this specific model.
I had assumed that, on the whole, I knew what I was getting myself into.
Well, spoiler alert: I didn’t ...
Among a host of other problems, the biggest pain point would come in the form of the permanently
attached foam and foil keyboard.
Now, if you follow almost anyone who’s worked on the portable, you’ll know that these
are known to fail.
It’s such a common problem that there are premade kits to repair them.
However, much to my misery, no one really has documented how utter garbage that is this
keyboard to use.
It’s honestly the type of keyboard that should be banned as a crime against ergonomics.
It is, without embellishment, one of the worst keyboards ever made.
While you may be able to hear it now, I’ll include this typing demonstration without
voiceover after the credits so experience this horror for yourself, so stick around
until then.
If that wasn’t bad enough, it turns out that this specific board had not only developed
the usual foam rot problems, it had decided to go that extra mile and developed its own
entirely unique failure modes as well..
With that said, this is your host NCommander, and I can only conclude I’m paying off karma
at a vastly accelerated rate ...
For those who haven’t seen it, this is Part 2 of this Compaq Portable restoration series.
If you’re interested in just seeing me suffer through rebuilding one of the world's worst
keyboards, I’ve provided chapter marks for your convenience.
Anyway, to recap, in part 1, we did a full system teardown, some component replacement,
and by using a modern ATX power supply, we ultimately managed to limp our way to displaying
a bunch of error codes.
This meant that all the major system components were at least partially working, but I still
had quite a bit more before we could even attempt to boot.
Early PCs were famously terse with their error conditions, and the Compaq Portable is no
exception to that rule.
However, given its current state, I actually expected all these errors.
Starting from the top, the 301 error is representing a keyboard failure, which is simply due to
the fact that said keyboard isn’t plugged in.
Likewise, errors 401 and 601, representing a printer failure, and floppy drive failure
respectively are being caused by the fact that the combination floppy/printer card is
sitting on my desk at the moment
The optimistic folks among us might assume that the only thing needed at this point would
be to re-install these missing components.
However, there were a few things I needed to do before trying that.
Primarily, I wanted to remove the 30 or so years of grime that has built up on the case.
After removing all the electrical bits, I relocated to my kitchen, and the great cleaning
began.
It didn’t take too long before there was a noticeable difference between the areas
I had cleaned, and those that I hadn’t.
While soap and water did make a noticeable difference, I ended up using baking soda to
relatively good effect in removing some of the more stubborn black marks ---
It was during this deep clean that something a bit odd happened.
As I was moving the case pieces around, I heard something start rattling inside the
metalwork.
I wasn’t recording at the time, but after a brief examination, I found what appears
to be part of a metal ring!
As far as I can tell, this isn’t actually part of the Portable, and it had been wedged
in the plastics.
My only explanation is that someone liked this Portable so much, they put a ring on
it …
*ahem*
Ok, even I’ll admit that was pretty bad, even by my standards.
At least it wasn’t a Token Ring ...
*boo*
Ok, ok, I’ll stop with the puns before everyone unsubscribes.
In what can be said to be a case of instant karma, I had a part of the case plastics crack
not long after this.
I’ll let past me explain in more detail.
[past me] So, this just happened.
I'm going to need to superglue this.
I was cleaning this gunk, and this just went crack. Alright, well first causality ...
Before I do anything though, I’ll let the comments section weigh in since you all have
had good advice for me in the past.
Despite the setbacks, I did succeed in removing most of the grime and muck off this system.
With the literal dirty work taken care of, the next port of call would be trying to get
one of the floppy drives working.
In comparison to 3.5” drives, 5.25 drives tend to require at least a little TLC after
a prolonged sleep.
Just at a bare minimum, the drive heads almost certainly need cleaning, and it’s pretty
much a given that the rails mechanism will require lubrication.
I just picked one of them at random, and got to work.
These full height drives turned out to be fairly straightforward to disassemble.
There’s only a single locking nut holding down the main PCB.
After removing that, the cables can be disconnected, which allowed the logic board to be slid out.
As I had expected, the drive read heads had essentially seized in place.
With careful mechanical persuasion, and a good sized glob of white lithium grease, I
did manage to get them moving again.
However, the real test would be if I could read a disk.
Instead of simply reinstalling the drive, and hoping for the best, I decided to use
my SuperCard Pro with the official Windows software.
While I’ve shown the SCP board in passing before on this channel, I don’t normally
use it’s official software, since I don’t normally use Windows.
However, in addition to its disk archival capability, the SuperCard Pro has a handful
of additional functions that can make it easier to test, calibrate and align a drive.
I’m not really an expert in this, but it would at least give me some idea on how healthy
these drives actually are.
I do have a few known good test reference disks, but as it turns out, this leads to
a bit of a sticking point.
Or perhaps I should say, non-sticking point.
These full height drives use a belt mechanism to spin the disk to a consistent 300 revolutions per minute.
It may be a little hard to see on camera, but in this case, the spindle motor is turning,
but there isn’t enough tension to actually turn the drive hub.
There isn’t a tensioner that I can adjust to fix this, so for the moment, this drive
is effectively dead.
There are some ways to get a bit more life out of worn drive belts, but in general, the
only realistic option is replacement.
Before I go down that rabbit hole though, let’s see if the other drive is better off.
Off-camera, I performed the same head cleaning, and rails lubrication I did on the first drive.
After getting the drive hooked up to my laptop, we can see an immediate improvement since
the drive hub is actually spinning.
However, that’s not to say that all is well.
From what I can tell looking at the drive diagnostics, and various read attempts, the
drive is suffering from timing issues.
While this can be a mechanical fault in the spindle motor, the likely cause is that the
belt here is simply too worn to keep the main hub spinning at the necessary 300 RPMs.
The obvious solution here would be to just replace both drive belts, but that’s a bit
easier said than done.
Drive belts are not a standardized component, and different drives take different sized
belts.
According to the label on the back of the drive, the mechanisms were made by a company called
Magentic Peripherails, or MPI, but this doesn't help as much as you would think ...
After measuring the belt and doing further research, I might have had a lucky break.
It appears that both these drives and the Tandom TM100’s seem to use the same type
fabric reinforced drive belts.
It’s hard to tell if these will work, but I found a webstore called Console5 which sells
modern replacements, so I’ve ordered two.
With luck, it's all we’ll need.
However, without a working floppy drive, I wasn’t going to get much further.
While I do have quite a few spare floppy drives, my only double destiny 5.25 drive is currently
out of commission, pending repairs.
For a given floppy drive to work, the disk drive controller has to support it.
In general, this means high destiny drives will not work with older FDCs.
I did try using a high destiny drive, and while it did spin up, the system continued
to report “Diskette Error”.
I had also assumed the same compatibility issues would have precluded using any 3.5”
drives entirely.
However, while researching I stumbled across this note on minuszerodegrees.net that stated
that one could use a high destiny drive “as is” in a 5150, as long as you only used
720k disks.
Given the similarities between the 5150, and the Compaq Portable, it was worth trying.
With nothing to lose, and everything to gain, I hooked up the 3.5” drive, and flipped
the switch ...
*system startup sounds*
While I didn’t quite make it to a command line, the time prompt does mean that DOS has
managed to successfully load.
That’s a major milestone towards usability.
However, we’re still facing a rather major stumbling block.
I had re-connected the keyboard at this point, but the 301 error had remained stubbornly
unchanged.
Unsurprisingly, the keyboard itself also didn’t work.
Now, a keyboard failure here was not entirely surprising, and I’m sure that anyone who’s
dealt with the Portable could make an educated guess as to what has gone wrong.
We’ll get to that in a moment, but what I want to point out is that this keyboard
is a true abomination in every sense of the word.
Underneath each key is a spring which provides upward force for both the cap, and the keystem
mechanism.
It’s also at this point we get to the first major flaw with this keyboard, which is the
unbelievably cheap keycaps.
I’m not certain if these are ABS or PBT plastic, but in either case, they’ve both
very thin, and very flimsy.
They also have quite a bit of flex to them which just makes them feel unpleasant to touch.
Given the low quality of the plastic, I do it consider something of a minor miracle that
I didn’t snap any through this entire process.
Just like the main case, there was a fine layer of grim on both the keys and the backplate.
After wiping down said plate, and setting the keycaps to soak in soapy water
it was time to work on the nightmare below
With the keycaps removed, I could unscrew the backplate, and lift it out to reveal a disaster zone.
This is what’s left of the foam and foil mechanism after 38 years, and is the primary
cause of why these keyboards fail over time.
This problem is so widespread that I had actually ordered the repair kit from TexElec for this
keyboard even before I had started filming part 1 of this project.
I’ve got to be honest, while reviewing this footage, I think, in hindsight, I should have
probably been wearing a full respirator while doing this.
These pads are how key presses are registered, and over the course of a few decades, the
foam layer breaks down, and the keys literally start falling apart.
Once this happens, the only real solution is to replace the contacts.
For anyone who is attempting this, let me just warn you in advice that this is tedious
to say the least.
Still, at least it was a one time job.
Assuming the worst was over, I reassembled part of the keyboard, and then went to test it.
However, the 301 error stubbornly remained.
Worse?
The new keys didn’t respond at all.
Obviously something had gone wrong.
With that disclaimer out of the way, my very first thought was to check the keyboard PCB.
Due to the capacitance nature this keyboard, it *should* respond if I press my fingers
to the key contact points.
However, once again, I got no signs of life.
I admit that this is something I should have checked well before this point, but unfortunately,
I don’t always get things right the first time.
That suggested that something the board electronics had packed up.
Furthermore, in what is becoming an annoying common sentence, the SAMS schematic for the
keyboard does not match mine.
As it turned out, it didn’t take long for me to realize that, at some point, Compaq’s
hardware design team had taken leave of their senses.
This is especially evident when we take a look at how the keyboard signaling is done.
As far as wiring goes, the Portable’s keyboard is almost, but not quite identical to what
is used on the 5150.
On the Compaq’s we have three lines that provide clock, data, and reset signals which
operate at 5v, a 12 volt power pin, and two ground pins.
In comparison, the DIN connectors used on XT class keyboards have the same three data
lines, 5 volts in, plus ground.
That means the only difference between these two mechanisms is the line voltage.
This seems like a rather arbitrary change, but it makes significantly less sense if we
take a slightly closer look.
If we follow the 12v line in, it goes directly to this power regulator which … converts
it down to 5v ...
Yeah.
All of the chips, as well as the keyboard matrix run at 5 volts.
There’s an entirely unnecessary power regulator in this design.
If we actually look at the schematic for the motherboard, there’s a jumper block that
can actually change the power sent to the keyboard from 12v to 5v.
It’s like Compaq had copied IBM’s keyboard signaling standard 1:1, and then at the last
minute decided “you know what, 12 volts is 7 more than 5, so it must be better.
Let’s just add a regulator in the keyboard so our 5 volt based design will still work”.
Maybe the electrical engineers in my comments section can shed some light.
Anyway, after my brain finally accepted the sheer insanity of the design, it was time
to hunt for dead components.
Unfortunately, my camera decided to die during this debug session, but what I can tell you
was I was getting very strange results that didn’t seem make any sense.
Eventually, I decided to go back to basics, and check continuity on the keyboard cable,
and in doing so, I learned two things.
First, this isn’t a straight through cable, instead the pins are mirrored end to end.
Secondly, I found that two of the pins, specifically the ground pins, were not registering at all.
That would explain a lot, but it seemed like a very odd failure mode to say the least.
However, while dismantling the keyboard, I noticed that part of the cable was being held
together with electrical tape.
Upon unwrapping the tape, and removing what I think was part of a strain relief, I can
see some nicks on one of the wires, although admittedly, I couldn’t find an actual break.
I wasn’t quite ready to hack up this cable to try and repair it, but I did need a way
I first soldered a thin wire to the ground terminal on the motherboard, and then did
the same on the keyboard.
Then I could connect a series of alligator clips to complete the connection.
This isn’t a real solution to the problem, but it was an easy way to confirm my findings.
After rechecking my work a few dozen times with a multimeter, it was time for a smoketest.
After flipping the power switch, we can see an immediate difference.
The error has changed from “301” to “FF 301”.
I powered down and then adjusted all the connections, including applying Deoxit to the connectors.
On the next attempt, I got my first successful boot with no POST codes.
With only the base of the keys installed, typing was quite difficult, but the keyboard
did seem to be at least partially working.
I had to make further adjustments, and reseat some foam pads, but I did manage to confirm
every key worked with a handwritten BASIC program.
At this point, all I had to do was reinstall the keycaps.
I will note that even fully assembled, this keyboard is miserable to type on.
I have honestly never worked so hard to get something this fundamentally broken to work.
Still, at least there’s light at the end of the tunnel.
Long-term, I need to work out a more permanent solution for the keyboard cable than using
alligator clips, but at the same time, we’re firmly on the way to having this machine fully
restored.
While I still have a lot of work to do, I was able to load up one of my favorite games
of the era: Rogue.
I will note that the longer I let this machine run, the better the composite output signal
has gotten.
Beyond that, I also still have to face what will likely be the most difficult parts which
will involve reinstalling and testing the CRT, as well as repairing the floppy drives,
if possible.
I also need to figure out upgrades such as installing a full 640k of conventional memory.
It’s on that note, if you enjoyed this content, I’d appreciate it if you liked and subscribed.
If you really liked this content, consider supporting me on Patreon.
Since it’s been requested, I’ve also setup ko-fi for one time donations.
As usual, you can follow my adventures in real time on Twitter or come hang out with
me on Discord.
However, before I actually go, here’s that typing demonstration I promised you all …
With that squeaky, rattly mess taken care of, all that’s left to say is that this
is NCommander, signing out, and wishing you all a pleasant day!