[Modulos-devel] Re: Kbrd
Status: Pre-Alpha
Brought to you by:
luizshigunov
|
From: Luiz H. S. <shi...@in...> - 2001-08-06 14:43:49
|
On Mon, 6 Aug 2001, Sudhakar A N wrote: > I went through the docs you have given at Source forge. I felt that I would > take some time to get aquainted with this scheme > I will ask my questions regarding this later. I think we should start to use ModulOS's forums and mailing lists. So this messages will get archived. What you think? I'm already subscribed to ModulOS's developers mailing list. > You specified that Keyboard Interface > Need to specify Event structure format, types of event (key pressed, etc) > and some functions too (insert chars, keymaps, etc). > > But by what I understand from your documentation we need to have it as > generic as possible. > Hence cant we classify charachter devices such as > > Keyboard > Mouse > > under the same category > (Biased by my Linux Knowledge) Yes, that's right. I forgot to say that the keyboard module MUST implement the InputDev interface, which is common to all input devices (keyboard, mouse, joystick, etc). A user module can only receive events, through InterManager interface, from modules that implement InputDev interface. But we need an interface specific to keyboards that specify types of events, functions, etc. > INT 21H Service 01: Keyboard Input with Echo > INT 21H Service 07: Direct Keyboard Input without Echo > INT 21H Service 0AH: Buffered Keyboard Input > INT 21H Service 0BH: Check Keyboard Status > INT 16H Service 11H: Determine if charachter is avalable I think WaitEvent from InputDev do what these functions do, except echoing to screen, which is not a good idea. The keyboard interface will be used in graphical mode too. Programs should do echo if they want. I've updated InputDev, VideoController and InterManager interfaces. I'll make then available today (06/08). > INT 16H Service 05H: Keyboard Write(write to keyboard buffer) This is a function the keyboard interface may have. Only available for system modules, so programs can't send keyboards events to others programs. > INT 16H Service 02H: Return the current Shift Status(Extended Shift Status > in AH like nums lock, caps lock). I don't know if we need this one. Shouldn't the shift status be sent with each event? > How correct am I in this understanding? Anything else to be added? > Need a lot of I/Ps from you. I'm not an expert in keyboards, so... But we should start with something simple, but useful. Then, as things go on, we can add more functions, events types, etc. Something important are keyboard layout, keymaps and charsets, but I don't know how they work. See you, -- Luiz Henrique Shigunov UIN: 103562572 Visit ModulOS: http://modulos.sourceforge.net Personal page: http://www.inf.ufsc.br/~shigunov |