geekhack Projects > Making Stuff Together!
TMK NEC PC98 Keyboard Converter
hasu:
TMK Keyboard protocol converter for NEC PC-9801 series that allows you to use PC-9801 keyboard on modern USB PC.
Prebuilt TMK PC98 converter is available here. Support this project!
See this wiki page for PC-9801 keyboard technical infos.
Update
2023-06 Fix for FBh response
2023-06 Add Windows/Menu key support for PC-9821 keyboard
2023-06 Fix key mapping
Supported keyboard
This converer supports PC-9801 compatible keyboards with Mini-DIN 8P connector basically.
- PC-9801V Keyboard
- PC-9801-106 - normal PC98 keyboard
- PC-9801-114 KBDP03 PC-PTOS - PC-PTOS specific keys are not supported by TMK PC98-USB converter at this point.
- PC-9801-115 文豪DPキーボード - not confirmed.
- PC-9801-116 - looks like PC/AT 106 keyboard without Windows key
- PC-9801-119 - PC98 keyboard with Windows and Menu key for PC-9821 - labeled as CMP-6D1Y7, CMP-6D0Y7
- PC-9801-98-S02 楽々キーボード - raku raku keyboard
- NEC FC-9801-KB6
- Digital Wave Dboard sono1
- ASCII ASKeyboard sono1
See this for more detail.
Firmware
Source code repository:
https://github.com/tmk/tmk_keyboard/tree/master/converter/pc98_usb
Prebuilt firmware HEX files:
https://github.com/tmk/tmk_keyboard/tree/master/converter/pc98_usb/binary
TMK Keymap Editor:
https://www.tmk-kbd.com/tmk_keyboard/editor/
For TMK prebuilt converter(ATmega32u2): https://www.tmk-kbd.com/tmk_keyboard/editor/unimap/?pc98_usb
For Others(ATmega32u4): https://www.tmk-kbd.com/tmk_keyboard/editor/unimap/?pc98_usb_32u4
Debug
https://github.com/tmk/tmk_keyboard/wiki#debug
Use 'hid_listen' tool to see debug outputs.
How to make converter
Pinouts:
--- Code: ---On host/converter:
8Pin mini DIN
___ ___
/ |_| \
/ 8 7 6 \
| 5 4 3 |
\_ 2 1 _/
\_____/
(receptacle)
--- End code ---
Wiring:
--- Code: --- Pin mini DIN MCU
----------------------------------
1 ~RST(TXD) PD3
2 GND GND
3 ~RDY PD4
4 RXD PD2
5 ~RTY PD1
6 NC
7 NC
8 5V VCC
--- End code ---
EpikalPuppy:
Hey! I guess I'm quite new to this, but I'm looking for how I can do this with my Teensy 2.0. What I know is that I believe I need a HEX file, but I'm not sure how to do that or how to make it. I'm not super knowledgeable about this and unsure of how I can learn more. Thank you for any help you can provide.
hasu:
I've never seen that keyboard, it is very interesting. Its plug is same 8P Mini-DIN as PC-9801 one. But its layout has no key specific to pc98 and it looks like more IBM PC.
I'm not sure this keyboard is for PC-9801 but it is still worth to try.
https://geekhack.org/index.php?topic=110093.0
Unfortunately I don't have time to guide you step by step for this converter :( I hope someone can help you.
As for HEX file, you basically need to build firmware from source code with 'make -f Makefile.32u4'. for Teensy.
But I can build its firmware for you if it is not easy. Let me know once your converter hardware is ready.
Check wiki for how to build firmware.
https://github.com/tmk/tmk_keyboard/wiki
EpikalPuppy:
--- Quote from: hasu on Tue, 08 December 2020, 20:22:22 ---I've never seen that keyboard, it is very interesting. Its plug is same 8P Mini-DIN as PC-9801 one. But its layout has no key specific to pc98 and it looks like more IBM PC.
I'm not sure this keyboard is for PC-9801 but it is still worth to try.
https://geekhack.org/index.php?topic=110093.0
Unfortunately I don't have time to guide you step by step for this converter :( I hope someone can help you.
As for HEX file, you basically need to build firmware from source code with 'make -f Makefile.32u4'. for Teensy.
But I can build its firmware for you if it is not easy. Let me know once your converter hardware is ready.
Check wiki for how to build firmware.
https://github.com/tmk/tmk_keyboard/wiki
--- End quote ---
Ok, thanks! I'll take a look. I'm new to this so I have a lot to learn, I just find this keyboard so intriguing that I must use it, it looks kind of like the early IBM AT keyboards!
Rayndalf:
Is this compatible with the PC9801-98 as well?
I have one and I'd love to get it up and running.
Navigation
[0] Message Index
[#] Next page
Go to full version