[lkml]   [1999]   [May]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectMouse and keyboard drivers in the Linux Kernel?
    Hi All,

    [For some reason my original post did not get through; I am re-
    sending it again]

    We are getting close to finishing the port of our SciTech Multi-
    platform Graphics Library to Linux (free Open Source under our
    modified mozilla PL). One thing has been bothering me for some time
    is that Linux does not appear to have a *full* mouse driver built
    into the kernel. There is the /dev/mouse device you can use to
    communicate with the currently configured mouse, however this device
    simply passes back the raw mouse protocol data and we need to know
    about *all* the different types of mice that can be attached, and to
    somehow figure out what one is actually connected.

    This is a major pain, so I was wondering if there really was a real
    mouse driver in the Linux kernel, or if people are interested in
    building one? Specifically I want a device that maintains a queue of
    events internally including mouse up, mouse down and mouse movement
    events (including a 1ms time stamp for every event so we can tell how
    far apart the events were). Then our MGL code will only need to
    connect to the mouse device and read the events from the queue to get
    the real data we need. Oh, and using the GPM libraries is not
    suitable because GPM is not always installed, and this stuff should
    really be in the kernel anyway.

    Likewise another thing that bothers me is the keyboard driver we have
    in the MGL. The MGL's event mechanism requires a keyboard driver that
    allows us to get KEYUP, KEYDOWN and KEYREPEAT events along with a 1ms
    time stamp for all key events. We also need to know the real scan
    code of the keypress, along with the correct ASCII translation for
    the key. Right now the kernel keyboard driver does not provide such
    functionality, so we have to run the keyboard in RAW mode so we can
    process the up/down events ourselves. This works fine (but we need a
    separate thread processing input so we can get the time stamps),
    however it also means we are not responsible for doing the scancode-
    >ASCII translations. This is something we should not be doing in our
    code, and once again something that should be handled in the kernel.



    | SciTech Software - Building Truly Plug'n'Play Software! |
    | Kendall Bennett | Email: |
    | Director of Engineering | Phone: (530) 894 8400 |
    | SciTech Software, Inc. | Fax : (530) 894 9069 |
    | 505 Wall Street | ftp : |
    | Chico, CA 95928, USA | www : |

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:51    [W:0.039 / U:2.024 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site