Peter Bieringer wrote:
Klaus Schmidinger wrote:
Looks like all function keys are no longer working, I have assigned the color keys to F1 to F4, non of them working in 1.3.38.
Well, at least F1..F4 do work for me.
Please add some debug printf's to cKbdRemote::ReadKeySequence() and try to find out what goes wrong.
It's caused by the 64 bit shift limit, pressing F12 causes 5 ReadKey calls, resulting in 80 bit, but only lower 64 bit are returned:
Are you sure about that? 64 bit are 8 byte, and 5 ReadKey() calls should only result in 5 * 8 = 40 bit.
Klaus
cKbdRemote::ReadKeySequence: r=1 k=1b key1=0 cKbdRemote::ReadKeySequence: r=2 k=1b5b key1=0 cKbdRemote::ReadKeySequence: r=3 k=1b5b32 key1=0 cKbdRemote::ReadKeySequence: r=4 k=1b5b3232 key1=0 cKbdRemote::ReadKeySequence: r=5 k=5b323234 key1=1b cKbdRemote::ReadKeySequence: r=5 k=5b323234
I've added
r++; fprintf(stderr, "cKbdRemote::ReadKeySequence: r=%d k=%lx key1=%x\n", r, k, key1);
after each "k |=
and
if (k != 0) { fprintf(stderr, "cKbdRemote::ReadKeySequence: r=%d k=%lx\n", r, k); }
before "return k"
BTW: it' strange that key1 is set to 0 after k |=...
Peter