Hi!

So it would need a »timer« to count from pressed key to released. if >500 ms, 
it should send an ASCII

We understood that. But be aware that you normally set the
typematic function to start typing MULTIPLE characters after
a selectable delay of between 250 and (at most) 1000 msec.

So if you hold the "a" key for more than 1 second, would
you want it to type multiple "a" or rather multiple "A"?

And would you need this "hold for at least 500 ms to get
A instead of a" only for A-Z or also for other keys?

Bret mentioned the example that people want to keep "="
pressed to type "====" lines and I myself would want to
keep "left" pressed to move the cursor further left etc.

example

uppercase A = DECIMAL code 65

lowercase a = DECIMAL code 97

Difference between lowercase and uppercase is 32

In my example with MKEYB, you would not actually manipulate
the ASCII value. Instead, you manipulate whether the BIOS
believes whether you have pressed SHIFT ;-) The actual key
to ASCII conversion stays in the reliable hands of the BIOS.

Would this work?

Sure. You would not even need a new timer for it, because you
already HAVE a system timer tick counter. So you just look
at that counter when a key is pressed and look again when
it is released. Then you calculate the difference and based
on that you decide whether the special driver pretends SHIFT
was pressed at the moment the key got released ;-)

Of course this means you have to modify the source CODE.
It will not make the driver much more complex. Feasible.

The other suggestion was that you could press some key
which is otherwise not used BEFORE typing the "a" to tell
the driver that you mean "A". This is very similar to the
well-known feature that you can press ^ followed by a to
type â and so on.

A driver which already has support for such accent combos
could probably support new combos for upper case chars by
simply editing the CONFIGURATION without editing the CODE.

You could probably use a key like one of the windows keys,
the scroll lock key or some accent you do not really use
as "the accent/special key which makes the next character
you type an upper case one" :-)

Eric




_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to