-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Ohter Keyboard Protocols
Keyboard Interface:
- https://archive.org/details/amiga-hardware-reference-manual-3rd-edition/page/357/mode/2up?view=theater
- https://www.amigarealm.com/computing/knowledge/hardref/aph.htm
- http://amigadev.elowar.com/read/ADCD_2.1/Hardware_Manual_guide/node0173.html
Code:
AMIGA 500/2000/3000
,---. ,------------------------. ,------------------------.
|Esc| |F1 |F2 |F3 |F4 |F5 | |F6 |F7 |F8 |F9 |F10 |
`---' `------------------------' `------------------------'
,-------------------------------------------------------------. ,-----------. ,---------------.
| ` | 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \|Bsp| |Del |Help | | (| )| /| *|
|-------------------------------------------------------------| `-----------' |---------------|
| Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | 7| 8| 9| -|
|--------------------------------------------------------\Entr| ,---. |---------------|
|Ctrl|Cap| A| S| D| F| G| H| J| K| L| ;| '| #| | |Up | | 4| 5| 6| +|
|-------------------------------------------------------------| ,-----------. |---------------|
|Shift | <| Z| X| C| V| B| N| M| ,| .| /| Shift | |Lef|Dow|Rig| | 1| 2| 3| |
`-------------------------------------------------------------' `-----------' |-----------|Ent|
|Alt |A | Space |A |Alt | | 0| .| |
`-------------------------------------------------------' `---------------'
,---. ,------------------------. ,------------------------.
| 45| | 50 | 51 | 52 | 53 | 54 | | 55 | 56 | 57 | 58 | 59 |
`---' `------------------------' `------------------------'
,-------------------------------------------------------------. ,-----------. ,---------------.
| 00 | 01| 02| 03| 04| 05| 06| 07| 08| 09| 0A| 0B| 0C| 0D| 41| | 46 | 5F | | 5A| 5B| 5C| 5D|
|-------------------------------------------------------------| `-----------' |---------------|
| 42 | 10| 11| 12| 13| 14| 15| 16| 17| 18| 19| 1A| 1B| | | 3D| 3E| 3F| 4A|
|--------------------------------------------------------\ 44 | ,---. |---------------|
| 63 | 62| 20| 21| 22| 23| 24| 25| 26| 27| 28| 29| 2A| 2B| | | 4C| | 2D| 2E| 2F| 5E|
|-------------------------------------------------------------| ,-----------. |---------------|
| 60 | 30| 31| 32| 33| 34| 35| 36| 37| 38| 39| 3A| 61 | | 4F| 4D| 4E| | 1D| 1E| 1F| |
`-------------------------------------------------------------' `-----------' |-----------| 43|
| 64 | 66 | 40 | 67 | 65 | | 0F| 3C| |
`-------------------------------------------------------' `---------------'
https://bboah.claunia.com/a4000keyb_german_big.jpg
https://androidarts.com/Amiga/A500top.jpg
compatible to IBM PC AT and PS/2
model | connector |
---|---|
AMIGA 2000/3000 | DIN-5P |
AMIG 4000 | Mini-DIN-6P |
Mini-DIN-6P female socket from the front:
,--_--. 1: Data
/ o6 5o \ 2: NC
| o4 3o | 3: GND
- 2o o1 - 4: 5V
`-___-' 5: Clock
6: NC
https://allpinouts.org/pinouts/connectors/input_device/keyboard-amiga-6-pin/
Keyboard: http://www.sgistuff.net/hardware/other/input.html
Connector: https://hardware.majix.org/computers/sgi/keyboards.shtml
The interface between the keyboard and the system is 600 baud asynchronous. The format used is one start bit followed by eight data bits, an odd parity bit and one stop bit, with one byte sent per key up or down transition. The MSB of the byte is a 0 for a downstroke and a 1 for an upstroke.
- https://web.archive.org/web/20151022035531/techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi%3Fcmd=getdoc&coll=0650&db=man&fname=7%20keyboard
- https://hardware.majix.org/computers/sgi.pi/keyboard.shtml
- https://geekhack.org/index.php?topic=72052.msg3123937#msg3123937
https://geekhack.org/index.php?topic=24965.0
Source code
Technical Info for 128K/512K and Plus
- https://www.apple.asimov.net/documentation/macintosh/Mac%20Hardware%20Info%20-%20Mac%20128K.pdf
- https://www.apple.asimov.net/documentation/macintosh/Mac%20Hardware%20Info%20-%20Mac%20Plus.pdf
Protocol:
- Page 20 of Tech Info for 128K/512K
- http://www.mac.linux-m68k.org/devel/plushw.php
Connector:
- Page 20 of Tech Info for 128K/512K
Signaling:
,---------------------------------------------------------. ,---------------.
| `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Bcksp| |Clr| =| /| *|
|---------------------------------------------------------| |---------------|
|Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| | | 7| 8| 9| -|
|-----------------------------------------------------' | |---------------|
|CapsLo| A| S| D| F| G| H| J| K| L| ;| '|Return| | 4| 5| 6| +|
|---------------------------------------------------------| |---------------|
|Shift | Z| X| C| V| B| N| M| ,| ,| /|Shft|Up | | 1| 2| 3| |
|---------------------------------------------------------' |-----------|Ent|
|Optio|Mac | Space | \|Lft|Rgt|Dn | | 0| .| |
`---------------------------------------------------------' `---------------'
,---------------------------------------------------------. ,---------------.
| 65| 25| 27| 29| 2B| 2F| 2D| 35| 39| 33| 3B| 37| 31| 67| |+0F|*11|*1B|*05|
|---------------------------------------------------------| |---------------|
| 61| 19| 1B| 1D| 1F| 23| 21| 41| 45| 3F| 47| 43| 3D| | |+33|+37|+39|+1D|
|-----------------------------------------------------' | |---------------|
| 73| 01| 03| 05| 07| 0B| 09| 4D| 51| 4B| 53| 4F| 49| |+2D|+2F|+31|*0D|
|---------------------------------------------------------| |---------------|
| 71| 0D| 0F| 11| 13| 17| 5B| 5D| 27| 5F| 59| 71|+1B| |+27|+29|+2B| |
|---------------------------------------------------------' |-----------|+19|
| 75| 6F| 63 | 55|+0D|+05|+11| | +25|+03| |
`---------------------------------------------------------' `---------------'
+ 0x79, 0xDD / 0xF1, 0xUU
* 0x71, 0x79,DD / 0xF1, 0x79, 0xUU
TMK converer uses following scan codes instead of M0110 raw codes. Scan codes are 1 byte size and MSB(bit7) is set when key is released.
scancode = ((raw&0x80) | ((raw&0x7F)>>1))
- Page 22 of Tech Info for 128K/512K
- Page 07 of Tech Info for Plus
- http://m0115.web.fc2.com/m0110.jpg
- http://m0115.web.fc2.com/m0110a.jpg
Mac 128k/512k/Plus Keyboard pinout
.---------,
| 1 2 3 4 | 1 GND
| | 2 Clock
| | 3 Data
`---___---' 4 5V
from front of connector