OK Rae. Here's the codes. These were all the ADC_REMOTE value on the IO menu. For reference, some images of the remote can be found on the cowon site
here.
Hold key enabled: 00 (and all keys did nothing when this was enabled as such)
Hold key disabled: FF (and no keys pressed)
Menu-wheel (bottom of the remote):
pressed-in: A5 (in X5 firmware, same as "select" key usually, short-press gets you to playlist/files, long-press to menu, same as pressing in the "knob" on the main device)
Vol - : DE (volume minus, menus up)
Vol + : C4 (volume down, menus down)
(note, menus up/down is OPPOSITE of what the volume +/- keys are on the knob on the main unit when using X5 firmware, as the knob volume + is up, but from the remote, volume + is down)
Mode Key: 6D (though went from D-E occasionally, switching during testing, though when "held" to the value constantly, the end value is 6D. Probably due to A/D conversion. This is an "extra" button that really isn't on the X5 base unit, and just goes direct to menu)
Rec A-B: 87
Rewind/FF Wheel ("top" of the remote, same side as mode and "Rec A-B" keys)
pressed in: Not on ADC_REMOTE, but rather the second hex value (from the left) on GPIO_READ which goes from "E" to "C" when hold on the main unit is NOT on, and from "6" to "4" when hold IS enabled (this means it's 2nd bit from the right in that... obviously). Also note that the "hold" state on the remote doesn't affect this bit shift in any way at all (this is the "play/pause" key usually. Also functions as the power key when held for the X5, hence why it's probably on GPIO, and not on the ADC_REMOTE)
rewind: 54 (also sometimes "twitches" to 53, again A/D problems)
FF: 2F (though also often twitches to 2E)
Rewind and FF are usually EXACTLY correlated to left (rewind) and right (FF) on the main X5 stick for everything in the unit's menus.
What may be expected behavior from the ADC driver is that certain keypresses "prioritize" over others, only displaying the code for the higher priority button, so there doesn't seem to be a way to detect more than one key down at once (unless it's with the play button, which is obviously different).
Also of note is that the debug screen didn't appear on the remote. All the other menuing stuff appears to, but the debug screen itself didn't. Display merely stayed on the last previous menu.
And that code snipped is rather... odd Rae. I quite agree with you.