Opps. I'm sorry, since PS2Controller has never ever worked on my laptop, I dont really know.
Usually I have to use external USB keyboard and it's detected automatically.
I will try those keys when it works.
Thank you very much!
I don't know that why Kana and Eisu don't work, too.
I've looked at HIDFamily source code for a few days.
But my lack of knowledge, I can't find a reason.
And I don't have a Japanese keyboard and I don't know how to use Japanese Input system on OS X also.
During examining code, I've got some ideas.
1. PS2ToADBMap table needs to be updated for supporting some functionkeys and otherkeys such as media-key.
2. Info.plist has some registry keys for identifying specific locale Keyboard and more custom settings.
3. Using copied PS2ToADBMap is easy to remap the table by custom settings.
4. If we can't use special key with dispatchKeyboardEventWithScancode(), it's a nice try to use keyboardSpecialEvent()
5. Maybe Europe keyboard layout supports is needed. Because IOHIDKeyboard.cpp did same thing. It's USB version of VoodooPS2Keyboard without special keys.
It's recommended to reference below codes. There are latest open Darwin's IOHIDFamily-258.3 codes.
IOHiDKeyboard.cpp : start(), dispatchKeyboardEvent(), deviceType()
IOHIKeyboard.cpp : keyboardEvent(), keyboardSpecialEvent(), dispatchKeyboardEvent()
IOHIKeyboardMapper.cpp : parseKeyMapping(), postKeyboardSpecialEvent(), performF12Eject()
IOHIDConsumer.cpp : dispatchConsumerEvent()
IOHIDEventService.cpp : dispatchKeyboardEvent()
Cosmo_USB2ADB.c
to understand PS2ToADBMap structure, visit below website. It's old thing, but useful.
It help you read IOHIKeyboardMapper.cpp easily. and it is starting point of updating PS2ToADBMap.
http://www.xfree.org/current/dumpkeymap.1.html#sect7Because I'm not good at programming, I hope some guru makes advance our projects with it.
sincerely.
P.S. just attached some code.
adapting some modification of 2,3,4,5
it's buggy test code so, just think it's a sample.
(updated) I update PS2ToADBMap from latest Cosmo_USB2ADB.c
It just add F16-F20 functionkey definition and media key suppport. such as NX_KEYTYPE_PLAY
Add Japanese PC keyboard supports. Just a few key mappings to Kana and Eisu.