Sun to USB keyboard protocol converter ====================================== TODO ---- AVR UART engine expect positive logic while Sun keyboard signal is inverted serial. To use AVR UART engine you need inverter in front of RX and TX pin. Otherwise you can software serial routine to communicate the keyboard. Hardware -------- Target MCU is ATMega32u4 but other USB capable AVR will also work. You can use PJRC Teensy as dev board. http://www.pjrc.com/teensy/ Connector 8Pin mini DIN ___ ___ / |_| \ / 8 7 6 \ | 5 4 3 | \_ 2 1 _/ \_____/ (receptacle) Wiring: Pin mini DIN Teensy ---------------------------------- 1 GND GND 2 GND GND 3 5V 4 RX/TX(Mouse) 5 RX PD2 6 TX PD3 7 GND GND 8 5V VCC Firmware -------- Build: $ cd sun_usb $ make And load the binary to MCU with your favorite programmer. If you use Teensy you can load with PJRC Teensy Loader tool. http://www.pjrc.com/teensy/loader.html * * * * * * * * * * * * * * * * * * X68000 Keyboard Protocol ======================== http://kyoutan.jpn.org/uts/pc/pic/x68key/ Connector --------- Mini DIN 7pin(female connector on computer side) 7 6 5 o o o 4 o = o 3 o o 2 1 Mini-DIN ------------- pin1 +5V pin2 MOUSE pin3 RXD pin4 TXD pin5 READY pin6 REMOTE pin7 GND Signaling --------- - TXD,RXD Asynchronous, 2400baud, 1-startbit(L), 8-databit, 1-stopbit(H) - READY ready/not ready(1/0) Data from keyboard ------------------ bit 7 make/break flag(0/1) bit 6-0 following scan code Data from computer ------------------ - LED contorol ON/OFF(0/1) bit 7 1(fixed) bit 6 全角 bit 5 ひらがな bit 4 INS bit 3 CAPS bit 2 コード入力 bit 1 ローマ字 bit 0 かな - Repeat delay bit 7 0(fixed) bit 6 1(fixed) bit 5 1(fixed) bit 4 0(fixed) bit 3-0 delay REPEAT_DELAY = 200+delay*100 ms default: 500ms - Repeat time bit 7 0(fixed) bit 6 1(fixed) bit 5 1(fixed) bit 4 1(fixed) bit 3-0 time REPEAT_TIME = 30+time^2*5 ms default: 110ms Scan Codes ---------- ,---. ,---. ,-------------------, ,-------------------. ,-----------. ,---------------. | 61| | 62| | 63| 64| 65| 66| 67| | 68| 69| 6A| 6B| 6C| | 5A| 5B| 5C| | 5D| 52| 53| 54| `---' `---' `-------------------' `-------------------' `-----------' `---------------' ,-----------------------------------------------------------. ,-----------. ,---------------. | 01| 02| 03| 04| 05| 06| 07| 08| 09| 0A| 0B| 0C| 0D| 0E| 0F| | 36| 5E| 37| | 3F| 40| 41| 42| |-----------------------------------------------------------| |------------ |---------------| | 10 | 11| 12| 13| 14| 15| 16| 17| 18| 19| 1A| 1B| 1C| | | 38| 39| 3A| | 43| 44| 45| 46| |------------------------------------------------------. 1D | `---=====---' |---------------| | 71 | 1E| 1F| 20| 21| 2l| 23| 24| 25| 26| 27| 28| 29| | ___| 3C|___ | 47| 48| 49| 4A| |-----------------------------------------------------------| | 3B|---| 3D| |-----------|---| | 70 | 2A| 2B| 2C| 2D| 2E| 2F| 30| 31| 32| 33| 34| 70 | `---| 3E|---' | 4B| 4C| 4D| | `-----------------------------------------------------------| .---=====---. |-----------| 4E| | 5F| 55 | 56 | 35 | 57 | 58 | 59 | 60| | 72 | 73 | | 4F| 50| 51| | `---------------------------------------------' `-----------' `---------------'