Mail Archives: djgpp/2000/03/13/16:45:02
Eli Zaretskii wrote:
>I see. Then I think I know what happens. The national keyboard support
>works on the DOS level (it installs a TSR which hooks the DOS interrupt
>and watches functions which read from the keyboard). In contrast, Bash
>uses the termios functions which in their DJGPP implementation read the
>keyboard through BIOS. Since the DJGPP implementation of termios
>doesn't know about national keyboards, it simply doesn't know about
>those special keys.
I have not looked into the termios code. But is there a reason,
that it uses the BIOS? Does it hook the keyboard interrupt directly?
With the following program:
#include <stdio.h>
#include <bios.h>
int main(void)
{
unsigned int key;
do
{
key = bioskey(0) & 0xff;
printf("key 0x%2x: '%c'\n", key, key);
}
while (key != 'q');
return 0;
}
When I type either a-Umlaut ("a, ä for those who can read it),
or Alt-132 I get
key 0x84: '"a'
So it seems, that national keyboard support is available at the
BIOS level.
In bash, there will be a beep in either case and no screen output.
(And in gdb 4.18 as well)
- Raw text -