• Please review our updated Terms and Rules here

IBM XT 5160 E0 301 error on boot

CrashOverride

Member
Joined
Sep 22, 2022
Messages
22
Got a free dead IBM 5160, and thanks to the great info over on minuszerodegrees.net, was able to track down and replace the bad tantalum capacitor that was shorting the -12V rail.

Now on to the next problem! I get an E0 301 error, and then press F1 to continue.

Looking at the troubleshooting documentation, the hex code listed *should* convert to a corresponding key that is stuck on the keyboard. However, unless I am doing it wrong, E0 hex converts to 224 decimal. It's an 83 key keyboard, so the number is too high to correspond to the key that should be showing as stuck.

Has anyone run up against this error before? I checked the keyboard cable and there aren't any shorts or breaks. This is a model M keyboard, #1390120. I don't have any compatible XT keyboards to swap and test, plus I really love this keyboard and would like to get it running again. I'll probably pull the whole thing apart and do the bolt mod and clean the mylar plus check for breaks and use some conductive paint if I need to repair any traces. Otherwise, does anyone have any suggestions on what to look for?
 
Got a free dead IBM 5160, and thanks to the great info over on minuszerodegrees.net, was able to track down and replace the bad tantalum capacitor that was shorting the -12V rail.
Welcome to these forums.
I added the failure to the history at [here].

Now on to the next problem! I get an E0 301 error, and then press F1 to continue.
And confirm for us that with the keyboard disconnected from the motherboard, the 'E0 301' changes to just '301'.

I checked the keyboard cable and there aren't any shorts or breaks.
Not expected. The motherboard's power-on self test did a reset of your keyboard by temporarily dropping the clock line, and the keyboard responded by sending the byte of AA (what is expected as the first byte) followed by E0. That would not have happened if there was a short or break in the keyboard cable.

Has anyone run up against this error before?
I haven't. It does appear on the internet in places, but for later computers.

I wonder if the E0 is the keyboard indicating: 'My self test failed before I even got to the part where I look for stuck keys'.
 
I deleted my previous post. I must be dyslexic. :)

I was looking at some scan codes that said E0 and some that said 0E.
 
And confirm for us that with the keyboard disconnected from the motherboard, the 'E0 301' changes to just '301'.

Yes, when I disconnect the keyboard the error changes to just 301. So, at least there is some kind of communication going on. Hopefully something will stand out when I take apart the keyboard. Maybe something with the controller board. I'll look for cold solder joints, and check the electrolytics.

By the way, I noticed I erroneously stated it's an 83 key, it is actually a 101 key keyboard.
 
Of course I don't have a 7/32 nut driver. I have a 1/4 socket set, but the socket is just a bit too large to get the deep recessed screws. Hopefully I can pick up something at the local hardware store.
 
The Model M uses a different scan code set and will not work with a 5150 (resulting in POST 301) and I think it's the same issue with the 5160 although I don't have one. If you want to avoid spending too much on the IBM Model F, there's quite a few older aftermarket keyboards that are switchable between XT and AT scan code sets.
 
The 1986 PC XT came with a compatible model M keyboard.

See section 4-22 of this manual: http://www.minuszerodegrees.net/manuals/IBM_5155_5160_Technical_Reference_6280089_MAR86.pdf

It also lists the scan codes and which key on the keyboard they correspond to, some of which start with E0, but none seem to be E0 all alone.
Could it simply be that the key that is stuck on this machine is one of those that start with E0 (and the BIOS only prints the first byte of scan code)?
 
Might be worth investigating. It’s a little late or I’d pull a 5160 off the shelf and try to simulate it.

Maybe after work tomorrow I can try to rest that idea.
 
I couldn't get PCem to do it, but it could be that PCem itself already does 101->83 key translation.
 
Well, the keyboard circuit on the host side is pretty simple, unless it was changed in later 5160 versions.
Basically a 9 bit shift register that's cleared on reading. Bits are shifted in from the keyboard and when the ninth bit transitions to "1", an interrupt is triggered. Compared to the 5170 and PS/2, the protocol is quite simple. Note that the ninth bit is not made available for reading--it's just an "end-of-byte" flag.
 
My understanding is the the difference between the Model F and the Model M is in the key switches themselves, not so much the protocol used to communicate with an attached computer. In fact, at one point, many keyboards of both persuasions had a switch on the bottom that allowed the user to switch protocols between that shared by the PC & XT and the later AT protocol.

Model F and Model M keyboards were produced that were not intended to be used with any of the PC/XT/AT lines. Perhaps someone with more info could chime in with what protocol those units used.


 
I think the protocols were different. An informative article about the Model M Auto-Sense features of the early OP 1390120 (and 1390131 w/LEDs) explains how they selected one of 3 Modes/Scan code sets during power up.

Look under the heading “Auto-sense”

Early Model F supported Mode 3 or 1. With the release of the 5170, Mode 2 on the F/AT keyboard was introduced.
 
Ok I did confirm that holding down certain keys on the model M, 101 key, extended keyboard, whatever you want to call it, does give the E0 301. I tried the stand alone arrow keys and most of the stand alone keys above them, like insert, home, etc.

FBE1C70C-7D68-41FE-82EF-27AF62DA3AE9.jpeg
 
Interesting. I did click through all the keys and at least mechanically none are stuck. They feel like they have the same amount of travel. Once I crack it open I'll look at the mylar. I'll try unplugging the mylar and see if the error persists, or if it responds back correctly and boots normally.
 
I can't believe no stores locally have a 7/32 or 5.5mm nut driver. Figures I have a 5mm and 6mm. I had to order one online. Terribly frustrating! I usually have all the tools needed for any kind of computer repair. Oh well, one more tool to add to the toolbox. I should receive it within 4 or 5 days. Once I have it, I'll report my findings.
 
Even more frustrating is finding that a 5.5mm 1/4" socket won't fit because the walls of the socket are too thick.
I have two full-sized Xcelite nudrivers, not the small ones that slip into a larger handle. One is 1/4" for all of those PC screws and the other is 7/32" for keyboards and the occasional 5.5mm bolt. Both have the same color handle, which is a bit awkward.
 
Back
Top