Index: [thread] [date] [subject] [author]
  From: Steve Cheng <elmert@ipoline.com>
  To  : ggi-develop@eskimo.com
  Date: Fri, 3 Jul 1998 12:57:53 -0400 (EDT)

Re: ggiGetc or ggiGetkey?

On Fri, 3 Jul 1998, Andrew Apted wrote:

> >          kbd_event.key.sym = 0xF000 ^ entry.kb_value;

> This is correct !  It is really a conversion from the Linux keysym to
> the GGI keysym (I'll replace it with a translate_keysym() function).

> Linux keysyms are confused, the value you get back from the KDGKBENT
> ioctl is xored with 0xF000, so the above code just undoes this
> braindamage.  This is the relevent bit from linux/drivers/char/vt:

Okay, my kernel doesn't do it.  (What I thought the first time, but I didn't
think the kernel people would ever fix it.)  I dumped the key events without
the xor 0xF000 and it returns 0x0b61.

> What kernel are you using ?  Keeping shift state when in RAW/MEDIUMRAW
> isn't done in 2.0.27, at least, but it *is* done in 2.1.xx.

I downgraded to 2.0.34...

> Anyway, I just used TIOCLINUX(6) to be lazy and avoid keeping track of
> shift-state myself.  If running on oldish kernels is important, then
> it will be no sweat to replace that with some shift-keeping code.

Yes.  I suppose I have to hardcode the shifts then....

--
Steve Cheng               

email: steve@ggi-project.org   
www: <http://shell.ipoline.com/~elmert/>;

Index: [thread] [date] [subject] [author]