Request to add a key remapping function to ACA500+

Caution: Non registered users only see threads and messages in the currently selected language, which is determined by their browser Please create an account and log in to see all content by default. This is a limitation of the forum software.
Don't Panic. Please wash hands.
  • It's very common that keys or the whole keyboard has failed on these old Amigas. Two Amiga 500s I've tried now have 2-3 keys dead. Would be nice to be able to remap them to other keys, as they can sometimes be quite important. Like the ESC key, if it's not working anymore, one could remap it to a much less used key.


    Hope this is something that can be added, and is hopefully easy enough so it might be in an update in the near future. I could really use it, and I'm sure many others as well.


    Thanks,.

  • I had some keyboard issues to on 2 of my amiga's, and this is not as answhere to youre question, but just what i tried and maybe helfull for you to make a keyboard fully working again.


    I had 2 problem keyboards and there both fixed. I'm not to technical so, a bit of luck was required ;)

    One had just 2 key's not working (a500+), i took it apart and clead every part of it. Now its in working condition and still used everyday.


    The other (A600) had a whole row of key's not working, cleaning didnt help, so i replaced the membrane with a new one (dont think its allowed to include a link).

  • Yeah, saw videos on keyboard repair on YouTube, most seem to just give up and get a new membrane. I rather we get key remapper added to the ACA500+ as these membranes are 30 euros or more + shipping. And clumsy as I am, I might break something else while trying to fix the keyboard :/


    But, if it's about a lot of keys not working, then trying to fix it is of course better. But just 1-3 keys broken like many have doesn't make it worth it, IMO.

  • Keyboard communication happens between the keyboard and the CIA chip directly. Thile in theory, you could think if intercepting and replacing keyboard scan codes in the CIA shift register, the hardware is not capable of doing that. The "mapping idea" probably came to you because we're already mapping DF0: to DF1:, which also happens in the CIA registers, but that's a different story, as only individual bits are swapped, and they only require the information "swap or don't swap", so yet another single bit. That's something we can do in a CPLD, but mapping the 8-bit combination N to another 8-bit combination M already requries more storage in the data-passing CPLD than we have.


    So the short answer is "no, that won't work" - and it would be a pretty rarely-used feature, as the general wish should be that the computer is working. The keyboard is a relatively simple thing to repair, especially on the A500. And if you're really only looking for replacing the ESC key, you might just solder two wires and a button to the keyboard controller chip (pins #36 and #3).

  • "The "mapping idea" probably came to you because we're already mapping DF0: to DF1:"


    Nah, was just something I thought might be possible anyway considering what it can already do. Didn't even think of the DF0 to DF1.


    "you might just solder two wires and a button to the keyboard controller chip (pins #36 and #3)"


    I don't own a soldering kit nor do I have any skill using one. Probably not TOO hard to learn, but if I have to buy it to fix the keyboard, I might as well buy a new membrane for it instead, as I fear I will just break something if I try to solder.

  • You could check if the ESC key works at all by shorting the two pins, for example with an unfolded paper clip (non-insulated one of course), or some other wire you may have access to. Only if that works, you have a chance for proper operation with a new membrane.


    That said, some A500 keyboards don't even use a membrane. The early ones have individual switches, and the ESC key could just have a cold solder joint.

  • Mine's one of the newer ones I think, as it doesn't have the imprinted logo into the plastic or the C= key. It's a Rev 6 mobo and the front and back look like this: Pic A, Pic B.


    From my research once when trying to decide what Amiga 500 to buy as many were on sale, the first version was the imprinted logo with the C= key. Next was imprinted logo but a normal A instead of the C=. Next was The C= sticker instead of the imprinted one, and the final version was the one I have where it says "A-500" instead of the imprinted or sticker C= logo.


    Will take apart the keyboard soon and see if I can do something.

  • You could check if the ESC key works at all by shorting the two pins, for example with an unfolded paper clip (non-insulated one of course), or some other wire you may have access to. Only if that works, you have a chance for proper operation with a new membrane.


    That said, some A500 keyboards don't even use a membrane. The early ones have individual switches, and the ESC key could just have a cold solder joint.

    Been too lazy and busy to have a look at my keyboard until now. The keyboard I use at the moment only had one key not registering. It's nr 9 (under the F keys). And the problem was the rubber thingy inside the key.


    9 didn't work, no matter how hard I pressed, so I thought maybe the membrane had a broken connection somewhere, but used some tweezers (while wearing a rubber glove ofc, just in case) and noticed there's nothing wrong with the membrane as 9 registers when the tweezers touches them. So, I looked at the rubber thingy inside/under the key and cleaned its tips on the side gently with some IPA and it still wouldn't work. I pushed it against other keys and none would register with nr 9's rubber thingy. So I took out a rubber thingy from another key and used it on nr 9 on the membrane and it worked. So, there's something wrong with 9's rubber thingy.


    Only difference I can see between key 9's rubber thingy and other other keys is it's faded in color. I see no breakage or anything else. The tips might be a bit worn out maybe.


    So, if they are faded they don't work?


    Attached some images.


    9 is more important than the key to the left (see image), so swapped the rubber thingy with that one. So 9 works now, but ofc not that other key, which is OK.


    Edit: OK, seems the "plunger", as they are called, has a conductive coating on them and key 9 has it completely worn off and needs to be recoated or replaced. So no IPA should be used on it of course, which I did, but it was already coatless. Still wonder why only that key is like that, and the color is faded, while the others are not.


    Edit 2: Ordered 3 new plastic bits with plungers on them from ebay. One for the broken key, one for F3 which works but have to press really hard, and one more in case I might need it in the future.

  • Hi, I would like to map CD32 buttons to keys on the A500 keyboard.


    This is helpful with games like "Zarathrusta" or "Fly Harder" which are normally played via the keyboard.


    But having to play on a keyboard is very inconvenient on my HDTV, I would much prefer playing with a multi-button gamepad.


    On WinUAE it is of course easy to map a USB controller to simulate key presses on the emulated Amiga keyboard. But I would like to do the same thing on original hardware, for obvious reasons.


    Any chance of ACA500 getting this feature in the future?

  • Any chance of ACA500 getting this feature in the future?

    The ACA500plus does not have the means to re-map input events to a different interface. Further, the CD32 game pad rquires active polling in order to "see" the additional buttons. Since most games do direct hardware access (mostly in order to speed things up, and because the OS is disabled anyway), the only way to "inject" a key press would be to have physical access to the keyboard connector and the port where the CD32 pad is connected.


    As a product, that would be a pretty bad contraption. Hard to install, error-prone and lots of wires from multiple places to another. The task is probably simple enough to be a DIY project, so you might want to encourage someone else to do this - I neither have the time, nor the motivation to make something like this, as I don't see a mass-market.

  • Thanks for the feedback!


    Is the same true for a 3-button controller where the buttons connect directly to the pins of the joystick port? (Unlike the CD32 where the protocol is more complex)

  • Is the same true for a 3-button controller where the buttons connect directly to the pins of the joystick port?

    While it's easier to get the information of the 3rd joystick/mouse button, it's still the same level of difficulty (or "level of contraption" if you will) if you want to convert that into key strokes, as you still need the connection to the keyboard interface. The ACA500plus does not have that.


    The ACA500plus is already doing alterations to CIA registers for the boot selector, but it does not have the required wiring to also "inject" key presses. I haven't checked this completely, but it would at least requrie emulation of the CIA's shift registers, possibly IRQ functions. This was never planned for the ACA500plus, and there is no way to retro-fit it.