Amiga.org
Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: freqmax on July 14, 2010, 02:31:45 AM
-
Since page 34 (http://www.amiga.org/forums/showthread.php?t=39806&highlight=keyboard&page=34) there has been a discussion regarding interfacing an A1200 keyboard to FPGA boards with Amiga implementations.
The problem is that the A1200 keyboard is passive matrix connected to an microcontroller on the motherboard. That may not be reused easily. And if it fails there's no firmware sources..
Suggestions has been on Keyrah etc..
My personal suggestion is just to use another microcontroller like Atmel AVR, STM32 etc.. with the A1200 keyboard matrix in one end and PS/2 or similar in the other. If the controller just sends deterministic data. It can all be corrected inside the FPGA.
-
Whatever works with the Minimig AGA when it is released gets my vote. I've got an empty A1200 case here just itching to house it. So, if such a thing ever makes the light of day then chalk me up as a customer. :)
Just to add that you can't just shove a USB-PS2 adapter onto the end of the Keyrah as it doesn't work.
-
The problem is that the A1200 keyboard is passive matrix connected to an microcontroller on the motherboard. That may not be reused easily. And if it fails there's no firmware sources..
I heard the A1000 & A500 keyboard MCUs are going to be decapped.
Which would have the benefit of supporting multiple key presses. Although they are 6502 based with alot of onboard IO instead of exposing the data & address bus, so a home made replacement would take a few chips.
There isn't going to be much code, so porting it to another MCU probably won't be that hard. Or a replacement could be made using a softcore on an fpga, though the cost of that would probably be higher than using an off the shelf MCU.
-
This picture should make it obvious how (http://www.amiga.org/forums/showthread.php?t=37415) Keyrah works:
(http://i33.tinypic.com/wbdzyg.jpg)
green cable (http://www.fukt.bsnet.se/~bearsoft/amiga500_9.JPG)
close-up (http://blog.wenzek.de/wp-content/uploads/2008/07/keyrah_gross.jpg)
picture of keyboard with connector (http://www.amiga-hardware.com/download_photos/a1200key_swedish_1_big.jpg)
Anyway using this description (http://it.aminet.net/docs/hard/A1200KbdMtx.txt) and a microcontroller. While comparing with a working A1200's keyboard MCU's output it should be a piece of cake.
Two obstacles may pop up:
* Undocumented shift/Alt combinations.
* Special flat 31-pin connector pressed onto PCB pads (http://www.vesalia.de/pic/keyrah2.jpg).
A1200 matrix -> MCU -> PS/2 -> FPGAarcade/Minimig etc..
PS/2 gives drop-in replacement and keeps things simple and standardized.
@psxphill, "I heard the A1000 & A500 keyboard MCUs are going to be decapped.", how do you mean?, reading out the binary code?
-
@psxphill, "I heard the A1000 & A500 keyboard MCUs are going to be decapped.", how do you mean?, reading out the binary code?
Yeah, like this: http://decap.mameworld.info
It's probably not that hard to actually write from scratch, but running the real code would be much cooler.
-
don`t know if this info helps but i use a A500 keyboard on my A1200.
-
@delshay, Where do you connect the A500 keyboard to the A1200 ?
@psxphill, It's likely more work to extract the binary from the obsolete MCU than to make a fresh C implementation which would be better as it can be compiled for any MCU of choice.. As a effective countermeasure to manufactor EOL suprises..
-
@ Darrin
I'm no expert in this but I think that the USB/PS2 adapter should work with the Keyrah - provided the PS2 keyboard also supports the USB protocol.
Perhaps your keyboard is PS2 only?
-
@DrDekker
You don't know what the keyrah is, do you :)
-
@delshay, Where do you connect the A500 keyboard to the A1200 ?
@psxphill, It's likely more work to extract the binary from the obsolete MCU than to make a fresh C implementation which would be better as it can be compiled for any MCU of choice.. As a effective countermeasure to manufactor EOL suprises..
The A500 and A1200 keyboard are the same. The MCU on the A1200 is on the motherboard, while on the A500 it's on a board that is cable tied to the keyboard.
The work to decap the MCU is already going to happen. If someone has a sacrificial A1200 then that can be done as well, though it's rather pointless as the A500 MCU is better anyway.
If you use something like this:
http://cgi.ebay.co.uk/AT91SAM7S256-ARM7-Development-Board-ARM7TDMI-S-ARM-AT91-/220629726872?cmd=ViewItem&pt=BI_Electrical_Equipment_Tools&hash=item335e8e7698
Then you could just grab the source to a 6502 emulator, the MCU dump and spend the afternoon hooking the IO up.
It will be less work if wait until someone gets the MCU running in the MESS emulator first.
-
@ Darrin
I'm no expert in this but I think that the USB/PS2 adapter should work with the Keyrah - provided the PS2 keyboard also supports the USB protocol.
Perhaps your keyboard is PS2 only?
Just to expend on Kolla... :)
The Keyrah is a piece of hardware that takes the ribbon from the A1200 keyboard and allows the Amiga keyboard to work on a PC which is really useful for emulation packages like WinUAE (Amiga Forever), Fellow, etc. Best of all, it also has 2 joystick ports built in for attaching your old "Atari" style controllers. If you look a couple of post up you'll see a picture of an open A1200 case (mobo gone) and the Keyrah sitting in the top right-hand corner.
From the testing I've done, jamming a PS2 adapter on the end doesn't work and I'm sure I recall Jens (the designer) saying a PS2 adapter wouldn't work. Considering the Keyrah has an On/Off switch I suspect it is a power issue.
-
If you look a couple of post up you'll see a picture of an open A1200 case (mobo gone) and the Keyrah sitting in the top right-hand corner.
Your Amiga Foo is dropping hard - that's a C64 on the picture. :)
-
Your Amiga Foo is dropping hard - that's a C64 on the picture. :)
Doh! Slap me with a wet lettuce! :D
I'm so old I have the "breadbox" one. That's my excuse and I'm sticking to it. :p
-
@Kolla, Plz produce a clear picture with A1200 keyboard and Keyrah wired together in the same picture of suitable pixel size.. :P
@psxphill, Why is the A500 MCU better than the A1200 one ?
Still think it's faster to do some black-box reverse stuff ;)
Now when a assembler listing with good comments is available. That would be really useful..!
-
@Kolla, Plz produce a clear picture with A1200 keyboard and Keyrah wired together in the same picture of suitable pixel size.. :P
I can do that next week when I'm home from holidays (only brought the minimig with me). In the meantime, you can enjoy this..
(http://amigakit.leamancomputing.com/catalog/images/keyrah-amiga.jpg)
The connector for the A1200/A600 ribbon cable are the stripes in the upper left of the board.
-
@delshay, Where do you connect the A500 keyboard to the A1200 ?
i will have to map it out what i did,everything works. the only problem is the @ key is now above the 2 key,so i have to use shift/2 key to get @ symbol other than that everything works including reset.
i have a extra A500 keyboard socket interface under the floppy drive so i can plug-in any A500 keyboard direct.
-
From the testing I've done, jamming a PS2 adapter on the end doesn't work and I'm sure I recall Jens (the designer) saying a PS2 adapter wouldn't work. Considering the Keyrah has an On/Off switch I suspect it is a power issue.
It has nothing to do with power. PS2 adapters don't actually do anything but adapt the plug. For a keyboard to work with one it has to support the PS2 protocol and the Keyrah doesn't.
-
Just to expend on Kolla... :)
The Keyrah is a piece of hardware that takes the ribbon from the A1200 keyboard and allows the Amiga keyboard to work on a PC which is really useful for emulation packages like WinUAE (Amiga Forever), Fellow, etc. Best of all, it also has 2 joystick ports built in for attaching your old "Atari" style controllers. If you look a couple of post up you'll see a picture of an open A1200 case (mobo gone) and the Keyrah sitting in the top right-hand corner.
From the testing I've done, jamming a PS2 adapter on the end doesn't work and I'm sure I recall Jens (the designer) saying a PS2 adapter wouldn't work. Considering the Keyrah has an On/Off switch I suspect it is a power issue.
Aha!!! (in the style of Alan Partridge)
Thanks for the explanation Darrin - now I know. (cue penny dropping - down the grid as usual).
So basically, it's the Keyrah that doesn't support the PS2 protocol?
But why would anyone want to use a creaky old amiga keyboard instead of a really nice Microsoft/Logitech one?
-
@psxphill, Why is the A500 MCU better than the A1200 one ?
The MCU in the A1200 has trouble with multiple keys pressed at the same time. No idea why.
-
I'm not sure that's a limitation of the MCU in the 1200 - I always thought it was down to the design of the keyboard matrix in the 1200. It's manufactured totally differently from the A500 and big box Amiga keyboards, so it could've just been a shoddy design which confuses different combinations.
-
Which a NEW software can reduce the effects off.. :P
-
But why would anyone want to use a creaky old amiga keyboard instead of a really nice Microsoft/Logitech one?
Because some of us grew up with those "creaky old" amiga keyboards and do not find anything "nice" about the microsoft/logitech ones?
For example I pretty much _need_ to have the ctrl on the correct location. On the Minimig that means I have to hack the minimig code myself to map ctrl to capslock for every release, for MorphOS Tokai's been kind enough to build caps2ctrl functionality into nocapslock. For OS4 I don't even know if there is a solution for this. For Linux, *BSD, Windows etc there is no problem, as remapping keys on keyboards is rather trivial.
Besides, this discussion started with people wanting to build FPGAArcade into old A1200/A600 cases, using the "native" keyboard.