Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 16 Nov 2004 18:02:24 -0800
From:      Marcel Moolenaar <marcel@xcllnt.net>
To:        Philip Paeps <philip@FreeBSD.org>
Cc:        Maksim Yevmenkin <maksim.yevmenkin@gmail.com>
Subject:   Re: cvs commit: src/sys/dev/vkbd vkbd.c vkbd_var.h src/sys/modules/vkbd Makefile
Message-ID:  <B936AB09-383C-11D9-9AD7-000D93C47836@xcllnt.net>
In-Reply-To: <20041117011727.GJ24418@fasolt.home.paeps.cx>
References:  <bb4a86c7041116093262758595@mail.gmail.com> <7302.1100627038@critter.freebsd.dk> <bb4a86c704111610006d8283ed@mail.gmail.com> <20041116180905.GA11906@odin.ac.hmc.edu> <bb4a86c70411161028698cbae2@mail.gmail.com> <20041116183549.GB11906@odin.ac.hmc.edu> <20041117002959.GH24418@fasolt.home.paeps.cx> <20041117004508.GA13628@odin.ac.hmc.edu> <20041117011727.GJ24418@fasolt.home.paeps.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
On Nov 16, 2004, at 5:17 PM, Philip Paeps wrote:

> One problem we're going to run into quickly are keymaps.  Currently, 
> the maps
> are being handled by syscons (and pcvt).  If we're going to let people 
> have
> multiple keyboards, there will be those who will want to have a 
> US-qwerty and
> a Belgian azerty side-by-side.  Mapping keys will probably need to be 
> handled
> by the driver (or the input system) on a per-device basis rather than 
> by the
> console driver.  That little headache has been fermenting at the back 
> of my
> head since I first started thinking about writing an input layer.  
> I've been
> ignoring it by sticking to the mice bits, but...
>
> Can any syscons gurus shed light on how we could go about convincing 
> syscons
> to go from a 'keypress'-oriented approach to a 'character'-oriented 
> approach?

I'm no guru in this regard, but it's probably best to take it one step 
at a time.
Add a mux and let syscons think there's just 1 keyboard. After that 
it's a good
idea to come up with the abstractions and the layering and move the 
keymap code
there. The same can and should probably done in the opposite direction. 
So that
you can have the output go to multiple displays with a choice of TE.

As for the abstractions and layering, think GEOM without the OO 
obfuscation.
A procedural (KOBJ based) interface for the most elementary functions 
would
probably do it. It's probably also a good idea to have the keymap layer 
send
off special keys to devd(8)...

-- 
  Marcel Moolenaar         USPA: A-39004          marcel@xcllnt.net



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B936AB09-383C-11D9-9AD7-000D93C47836>