(fwd) Re: траблы + Re: сканкоды

Andrey Gerzhov (kittle@freeland.alex-ua.com)
Sun, 13 Sep 1998 17:15:10 +0300 (EEST)

-- forwarded message --
Path: freeland.alex-ua.com!barmaglot.alex-ua.com!f188.n463.z2!f434.n463.z2!f67.n463!f68.n463!f238.n5020!f400.n5020!ddt.demos.su!fido-news-server
Newsgroups: fido.ru.unix.bsd
Distribution: fido
X-Comment-To: All
From: Ivan Pascal <pascal@tsu.ru>
X-FTN-Sender: Ivan Pascal <Ivan.Pascal@f400.n5020.z2.fidonet.org>
Date: Wed, 09 Sep 98 12:47:42 +0300
Subject: Re: траблы + Re: сканкоды
Message-ID: <35F64D45.41C67EA6@tsu.ru>
References: <6t3msu$gco@news1.demos.su>
Organization: Tomsk State University
X-FTN-AREA: RU.UNIX.BSD
X-FTN-MSGID: tsu.ru dccba90c
X-FTN-REPLY: news1.demos.su f7f456d3
X-FTN-Tearline: ifmail v.2.14dev2
X-FTN-Origin: Tomsk State University (2:5020/400@fidonet)
X-FTN-SEEN-BY: 50/381 520 993 450/40 461/35 121 463/18 58 59 62 67 68 69 76 131
X-FTN-SEEN-BY: 463/151 164 188 270 318 323 434 477 2111 6666 464/100 465/185
X-FTN-SEEN-BY: 466/34 467/10 468/2 469/999 478/20 4614/1 4615/21 4621/22 4623/17
X-FTN-SEEN-BY: 4623/55 4625/3 4626/5 4635/4 5001/211 5002/16 5003/15 5006/1 5007/1
X-FTN-SEEN-BY: 5011/13 201 5012/1 5015/28 5020/68 79 118 193 204 238 255 300 302
X-FTN-SEEN-BY: 5020/400 443 487 510 748 1057 1200 1381 1851 4000 5022/5 5023/1 11
X-FTN-SEEN-BY: 5024/8 11 5027/16 5029/5 5030/115 5034/1 5036/1 5039/7 5049/1 6 256
X-FTN-SEEN-BY: 5050/5050 5051/15 5054/9 10 5055/44 5057/1 5058/24 5060/88 5061/7
X-FTN-SEEN-BY: 5061/15 48 5064/5 5065/10 5066/2 5069/1 2 5074/9 5075/10 5077/3 12
X-FTN-SEEN-BY: 5080/80 1003 5083/21 5084/10 5085/250 5094/5094 5100/21
X-FTN-PATH: 5020/400 238 463/68 67 434
X-FTN-PATH: 463/188
Lines: 49
Xref: freeland.alex-ua.com fido.ru.unix.bsd:272

Valentin Davydov wrote:
>
> > Клавиатура вообще выдает скан-коды. Вот они,
> >действительно, и в африке не отличаются, только....
>
> В Африке, может, и да, а вот в Японии - отнюдь. То ли 109, то ли 110 клавиш.
> Как бы мне их скан-коды узнать?

Во-первых, еще раз повторю, что...
- "физические" скан-коды, которые считываются с контроллера клавиатуры
- внутренние скан-коды syscons, которые потом "мапируются" keymap
- скан-коды X-сервера, которые потом "мапируются" xmodmap или xkb
... это не одно и то же.

Поэтому, в "иксах" скан-коды лучше всего посмотреть xev.
А для "чистого" FreeBSD я вот накидал программку (может быть
велосипед изобрел :-)

Собирать ее надо с libncurses -
сс scancodes.c -lncurses -o scancodes

Выход из нее - Esc.

-----------
#include <machine/console.h>
#include <ncurses.h>

main()
{ char c;

initscr(); savetty(); raw(); noecho();
if (ioctl(0, KDSKBMODE, K_CODE) < 0) perror(0);

do {
c = getchar();
if (c > 0) printf("%d\n\r", c);
} while (c != 1);

if (ioctl(0, KDSKBMODE, K_XLATE) < 0) perror(0);
resetty();

exit();
}
-----------

-----
Ivan Pascal | pascal@tsu.ru
Administrator of | Tomsk State University.
university network | Tomsk. Russia.
-- end of forwarded message --

-- 
С тем, что не помешает никогда,
                                               Kittle