Apple IIe Keyboard (ROM?) woes...

10 posts / 0 new
Last post
Offline
Last seen: 11 months 2 weeks ago
Joined: Dec 8 2022 - 15:40
Posts: 4
Apple IIe Keyboard (ROM?) woes...

Hello everyone--  FWIW, I am new here.  I am just now getting on the bandwagon with restoring an Apple IIe.

 

Everything has been going well... I have replaced the RIFA caps, sanded/shined up the aluminum on the inside of the case that had been eaten away by, I think, bug carcasses.  I have a DuoDisk with card and cable, and a Liron card and a couple of drives.  I needed two keyswitches to replace some broken stems and they also arrived today and it only took a couple of minutes to get them installed.  Everything is retrobrited and looks great and I have an order coming in from reactivemicro in a couple of days with a IIe enhancement kit and an extended RAM card, and so I am in business, I think.  Oh, and I have a SCSI clone card laying around in pieces and a couple of old SE/30 HD's that I need to cobble together later.  Yeah, this is a true exorcise of years of 80's kid-hood angst by finally building that Apple 2 that will finally have the 'power to crush those other kids'... and play a mean game of Oregon Trail.

 

I finally did the first boot of this machine today.  I have a clean 5 volts and 12 volts where they need to be.  I seem to have a keyboard problem-- but I am pretty sure it is a ROM issue.  I don't have a working oscilloscope at this point and I don't have access to a eprom reader/writer, so I am a bit hampered right now in my diagnostic and repair abilities.

 

So, when powering up, I do have a power light on the keyboard and control-reset (and open/closed apple) all works.  My understanding is that all of those particular keys are discretely-pinned coming out of the keyboard and going into the mobo, so this at least tells me that I have a good cable (at least for these pins) and that I have it all aligned/plugged in correctly.  No pins are missing or damaged.  I put some contact cleaner on the cables and sockets and let it dry.   I have also checked around the back of the keyboard, and while I didn't check every key, each of the keyswitches that I checked with a multimeter appear to be good.

 

When I power up, sometimes the machine boots exactly like it should.  But more often than not, I get a dozen or so solid hortizontal lines (in 40col mode, it seems) and no beep.  It will remain like this until I hit control-reset, at which point the machine boots like it is supposed to-- the characters are well-formed and clear like thay are supposed to be.  I seem to remember from years and years ago, that the horizontal-line behavior would be consistent with the behavior of powering up the machine while holding control-reset... it would hold, frozen, un til control-reset is released and then it would proceed with the boot routine. 

 

When I do control-reset again to drop into BASIC, most of the time I get a cursor, but none of the keys work... no typing or movement on the screen.  I can control-reset, but that's it.  Sometimes I drop into basic and it acts is as if a key were stuck... it goes to the end of the 127 characters and starts beeping and continues to repeat that character... I don't think it is the same character all the time... I seem to remember seeing "6" more than a few times, but I have seen others... small 'x' comes to mind.  I am aware that the IIe keyboard has no encoder daughterboard, unlike the II/II+.

 

If I try to bridge pins on the nemeric keypad socket, I get nothing.  If I bridge posts on keys on the keyboard keyswitches themselves, I get nothing.   If I start without the keyboard plugged in, I get the repeating self-test and "KERNEL OK", which I understand is correct behavior.

 

If I drop down into BASIC  and tap on the Keyboard ROM (341-0132-D, (c)Apple 1984) at F12, I can sometimes generate a random character or two on the screen.  Thus, I pulled the ROM and handsomely doused it and its socket with contact cleaner.  I then went back and did the same for the IOU.  No change.

 

I then pulled the ROM and booted without it.... the behavior of the machine was the same, with or without the keyboard ROM.  I checked that a couple of times and, yes, I could control-reset to BASIC, but that was about it.... sometimes I'd get a cursor, sometimes repeating characters.

 

Although I have not done a complete diagnostic check (resistors and other mobo items), I am feeling pretty keen on getting a new ROM in there and seeing if that is the obvious fix to everything before doing an exhaustive look at everything and pulling down schematics and all of that.  I don't have nearby access to another IIe that I am aware of yet, so I can't easily swap chips to check. 

 

My questions-- is there anything else obvious that I am missing:  Is this consistent with anyone else's experiences/observations?  Dees it sound like I'm on the right track?

 

Thanks!  -btd

 

 

 

 

 

 

 

 

 

 

 

Offline
Last seen: 1 month 4 weeks ago
Joined: Jul 5 2018 - 09:44
Posts: 2587
It could be the ROM or it

It could be the ROM or it could be the AY-5-3600-PRO.  The former can be replaced with an EPROM.  The latter is unobtanium in its original form other than pulls from other motherboards.  Even if you see an AY-5-3600-PRO on eBay or Aliexpress, etc...  Unless they say it came out of a //e and it has been tested to work, don't waste your money.  These chips had to be factory programmed to work with the right key matrix and switching options, and any keyboard not programmed right just won't work correctly.  You might be able to fudge it to kinda-sorta-partially work with a custom ROM mapping, but it will probably never give proper, satisfactory function...

 

However...  If your encoder chip is indeed bad and you can't find a used replacement or don't want to pay for a whole motherboard to get one (often the only option), there is an answer...

 

Joe's Computer Museum has a modern drop-in replacement made with a CPLD or FPGA.  It won't be a 100% perfect cosmetic thing, but it will work properly...

 

https://jcm-1.com/product/jcm-universal-keyboard-encoder/

Offline
Last seen: 1 month 4 weeks ago
Joined: Jul 5 2018 - 09:44
Posts: 2587
Oh...  and if you need to

Oh...  and if you need to burn an EPROM, you can usually find them for sale on eBay, etc...  And a decent and affordable programmer is the MiniPro TL866-II+ which is usually $50-$100.  Keep in mind that the newer model unlike the older TL866CS will only program up to 18V EPROMs, so some early 2716 and 2732s which require 21V programming may not work.  Make sure you order the right EPROMs.  The "C" version usually are pretty dependable to work like 27C16 and 27C32.  You probably also want a UV eraser, and those aren't too expensive either.

 

CVT
CVT's picture
Offline
Last seen: 21 hours 35 min ago
Joined: Aug 9 2022 - 00:48
Posts: 1170
You can easilly test if the

You can easily test if the problem is the keyboard ROM by simply replacing it with any other 2716 chip that is not empty. If all the keys work but the character's don't correspond, then it's the ROM. However if it behaves the same as before then the problem is the encoder chip, which is more likely the case.

 

If it is the encoder, welcome to the club and take a look at this topichttps://www.applefritter.com/content/ay-5-3600-pro

 

If you happen to have an old laptop with a LPT port, I would recommend these for programmer/eraser: 

     Programmer that support 25V EPROMs: https://www.aliexpress.com/item/1005004450760802.html

     UV Eraser: https://www.aliexpress.com/item/1005001565935653.html

 

 

Offline
Last seen: 5 days 11 min ago
Joined: Apr 26 2016 - 08:36
Posts: 739
Does the machine start up

Does the machine start up from a cold boot and work properly?

That is, you haven't had it on, then turned it off for a short period and then turned it back on?

 

The horizontal lines on the screen on subsequent (warm) powerups are indicative of RAM persistence, that is, RAM that is holding fragments of its own memory after power-down.

It's common on old machines, and sometimes rectifies itself with regular use and long periods of power-up time.

 

It's also easy to alleviate, by booting up with the open-apple key pressed - a combination that (on the enhanced IIe anyway) clears the RAM completely on powerup, allowing smooth booting.

 

The stuff with the keyboard ROM is weird, though, but may be related to the RAM issue.

 

Offline
Last seen: 11 months 2 weeks ago
Joined: Dec 8 2022 - 15:40
Posts: 4
Follow-up...

Hey everyone, thanks for your replies, and I suppose I need to apologize for posting then going silent.  Life, you know, and all.  And it has taken me a while to get back to this project.

 

So, as I don't have an eprom burner handy and as some characters were being generated when tapping on chips and fooling around inside the machine, I rolled the dice and said to myself, "myself, let's start by trying to replace the AY-5-3600-PRO."  I didn't have one of those handy, and right now I am not interested in rolling the dice on waiting a month for shipping an old pull out of China (which is likely incompatible, anyway) via eBay, so Joe's Museum was the obvious answer.  As I think I mentioned, this particular machine is not really noteworthy as a collector's item as far as I can tell, so my intention is to simply do the project and have an old Apple II to use and play around with.  Thus, the idea of a modern replacement was just fine for by me.  It came in last week, I popped the old chip out and the new one in and, it seems everything is in order!

 

Thanks for the leads and advice, everyone.  I'm now up and running.

My next thing to deal with is the LIRON card I found... the system is not recognizing it and it doesn't have power going out to the drives, so that adventure now begins.

 

-btd

Offline
Last seen: 2 days 2 hours ago
Joined: May 31 2022 - 18:18
Posts: 360
Good job on the first fix!I

Good job on the first fix!I was late to the party, but recently did a complete diag on the keyboard to ROM path and learned a lot. I recorded everything including testing the keyoard switches, testing the encoder input/output, and then the same with the ROM. It was quite an adventure, but really intersting. My only critique of your process was randomly shorting pins on the cable connectors isn't a good idea unless you're aware of the pins you're using. I'm pretty sure accidently shorting 5V to ground would have caused more problems. =)

 

Offline
Last seen: 4 months 2 weeks ago
Joined: Nov 2 2022 - 01:03
Posts: 31
I had an amber alps keyboard

I had an amber alps keyboard that came with an A2S4000 (happens sometimes).  The "9" key and the "return" key worked only intermittently.  The rest of the keys worked fine.  After flooding the keys with alcohol, the enter key essentially got "stuck on".  It would repeat the last key that was pressed (so it would start with enter key, then if I pressed another key, that key would repeat forever, etc.).  I had to literally desolder the enter key from the keyboard to get it to stop registering.  Re-soldered it and problem was intermittent for a bit.

Gave up for awhile.  After coming back, everything seemed to start working fine again.  Wondering if a.) the amber alps can get crap in them somehow over time or need a metal contact exercised and b.) can isoproprly trapped in the key cause it to register like a key press until the isopropyl evaporates which can take awhile inside of a keyswitch.

In any case,  I probably have a different problem than yours, but just wanted to mention in case it helps...  but you could try literally desoldering that control key from the keyboard to see what happens if you are so inclined.  I thought for sure I was going to have to find a replacement key encoder, but ended up not having to.  Any normally open switch can act as a replacement for testing.  Be gentle with the keyboard PCB, easy to damage the traces compared to modern PCB's anyway. 

Or maybe my encoder fixed itself after it got warmed up.  :-/

Offline
Last seen: 3 weeks 4 days ago
Joined: Aug 4 2015 - 14:30
Posts: 150
Capacitor
odingalt wrote:

It would repeat the last key that was pressed

 

I had the same thing a while ago.

As I remember I replaced a capacitor (can't remember which one) and it was fixed.

 

Offline
Last seen: 3 months 2 weeks ago
Joined: Jan 1 2021 - 09:56
Posts: 26
softwarejanitor wrote:It
softwarejanitor wrote:

It could be the ROM or it could be the AY-5-3600-PRO.  The former can be replaced with an EPROM.  The latter is unobtanium in its original form other than pulls from other motherboards. 

This is only half-right.

 

The AY-5-3600-PRO can be found from some chip brokers such as Quest Components (I recently purchased 5 NOS chips from them for about $60) but you're right that buying them from eBay sellers is a huge crapshoot. I rolled the dice on a set of 10 and they were all fakes, having been sanded down and re-etched ... with 2019 datecodes. 

However, as for having to program the AY-5-3600-PRO, or a requirement that it came from an Apple II/IIe/IIc: the encoder is designed to be paired with a ROM chip that provides the actual keycodes it transmits based on the keyboard matrix, and that's why the A2 needed a keyboard ROM. 

An AY-5-3600 (without the -PRO suffix) has been preprogrammed at General Instrument to match a specific keyboard matrix. You can see what that matrix is by looking at the datasheet (link at the end).

An AY-5-3600-PRO is "programmable" in the sense that it communicates directly with an EPROM which then provides the resulting ASCII code to the system's data bus. That's what made this chip so popular: it would take a keyboard matrix and turn it into a 9-bit binary number that, when used as the lookup address in an EPROM, provided the character code of the designer's choosing. 

Essentially, the encoder output sends a 9-bit binary number to the address lines of a connected EPROM, and the EPROM responds by sending whatever is at the resulting memory location out onto the data bus. 

For example, on the encoder, the resulting binary number that gets sent for a keypress of X4, Y6 without holding down shift or control is 000101101. That 9-bit number translates to a hexadecimal address of 02D, which, when connected to an EPROM, would refer to memory location 02D -- and whatever data was stored there becomes the data that the keyboard sends to the data bus. Thus, you can build the keyboard matrix yourself, and then simply program an EPROM to match.

It's a brilliant design, really. I wish that there were other chips like this one.

Here's the link to the full datasheet: http://www.applelogic.org/files/AY3600.pdf

A lot of the other datasheets for this chip floating around out there only have the last three pages, which doesn't actually specify a lot of other details about the chip.

 

Log in or register to post comments