nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 08:23



Reply to topic  [ 50 posts ]  Go to page Previous  1, 2, 3, 4
Подключение PS/2 клавиатуры через COM порт 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
rw6hrm wrote:
Я не думаю, что от ASCII-ввода можно ждать всех новых фишек, что обеспечивают современные клавиатуры, всё же в те времена их не существовало и не было необходимости.

Прямой вопрос: как ASCII-клавиатура передает коды стрелок курсора, а также PgUP и PgDOWN?
Управление курсором, фишка, пожалуй, не такая уж и новая...

_________________
iLavr


06 Aug 2019 07:36
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
rw6hrm wrote:
Прямой ответ - никак, поскольку на ASCII-клавах таких клавиш не было изначально.
Вот тут меня и гложут сомнения: есть фирменные клавиатуры IBM, где такие клавиши издавна были.
Но за давностью времени информации по ним нет, попадались лишь пару раз на Е-бей...

rw6hrm wrote:
Скакание курсором по экрану делалось через Ctrl-коды (в основном S,D,E,X), но особого "стандарта" я не наблюдаю (исходя из СР/М-ных программ).
Для примера цитата из хелпа редактора SED:
^S НА СИМВОЛ ВЛЕВО
^D НА СИМВОЛ ВПРАВО
^E НА СТРОКУ ВВЕРХ
^X НА СТРОКУ ВНИЗ
^R НА СТРАНИЦУ ВВЕРХ
^C НА СТРАНИЦУ ВНИЗ
В WordStar'е примерно аналогично.
С таким работать приходилось - но это зависит от программы.

rw6hrm wrote:
С другой стороны, существовала отечественная клавиатура типа 15ВВВ-97-005/006, в ней клавиши курсора были.
...
В исходнике это выглядело так (что передаётся на "Иришу"):
SC_CURSOR_LEFT, 0x1a,
SC_CURSOR_RIGHT, 0x19,
SC_CURSOR_DOWN, 0x1d,
SC_CURSOR_UP, 0x1c,

Забавно... видимо - тоже отсебятина... популярным было вот такое соглашение:
Quote:
08h - перевод курсора влево на одну позиции.
0Ah - перевод курсора на строку вниз с установкой в начало строки, если курсор на нижней строке, то осуществляется сдвиг экрана вверх на строку, нижняя строка очищается, и курсор устанавливается в начало строки.
0Сh - перевод курсора в начало экрана.
0Dh - перевод курсора в начало строки.
18h - перевод курсора вправо на одну позиций.
19h - перевод курсора на строку вверх с установкой в начало строки, если курсор на верхней строке, то осуществляется сдвиг экрана вниз на строку, верхняя строка очищается, и курсор устанавливается в начало строки.
1Ah - перевод курсора на строку вниз, если курсор на нижней строке, то устанав-ливает его в начало строки и сдвигает экран вверх на строку, нижняя строка очищается.

Но это опять же вступает в некоторое противоречие с ASCII...

_________________
iLavr


06 Aug 2019 15:28
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
rw6hrm wrote:
Прямой ответ - никак, поскольку на ASCII-клавах таких клавиш не было изначально.
Вот тут меня и гложут сомнения: есть фирменные клавиатуры IBM, где такие клавиши издавна были.

Возможно, существует некая путаница в терминах, но вот - типичый пример того, о чем я говорю:
Wyse ASCII Keyboard
Attachment:
042ba1eb.jpg
042ba1eb.jpg [ 118.32 KiB | Viewed 6578 times ]

Как мы видим, клавиши курсора есть... и это не единственный пример, если хорошо поискать.

И, кстати, если я не ошибся, то из мануала на эту клавиатуру (в представлении Гугл):
Attachment:
cursor.gif
cursor.gif [ 3.48 KiB | Viewed 6578 times ]



P.S. Но с другой стороны в этом же мануале написано следующее:
Quote:
A Wyse 60 will send D0-D3 when the arrow-keys are hit provided the
terminal is in "application key mode".

Но D0-D3 в ASCII-представлении нам совершенно не подходят в качестве кодов курсора...

_________________
iLavr


06 Aug 2019 21:13
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
меня конкретно интересует, что понимает вот этот драйвер Венды, когда включается галка "Поддержка альтернативных устройств" на COMx.

Image

Я предполагаю, что по умолчанию (а подробностей нигде нет) он должен понимать стандартную ASCII Serial KeyBoard, ...

Я всё забываю отписаться в этот топик, что вот эту фичу я сподобился проверить еще за месяц
до карантина по короновирусу.
Правда, я делал отдельное устройство на основе этой вот своей схемы, и передача кодов в РС
по RS-232 была лишь частью функций, но я проверил практически все коды и некоторые их комбинации.

Результат меня несколько обескуражил: да, коды ASCII передаются, но коды интерпретируются Вендой
по-разному, в зависимости от того, какое приложение Венды активно в данный момент.

Если кому-либо это интересно - можно соединить 2 компьютера по COM-портам, на одном - включить
эту фичу, на другом - терминал, через который подавать коды.

ПРЕДУПРЕЖДАЮ: Включенная и настроенная фича начинает работать только ПОСЛЕ ПЕРЕЗАГРУЗКИ ВЕНДЫ!
Я чуть не бросил из-за этого всю затею, потому как после просто включения - ничего не происходит.
А вот после ПЕРЕЗАГРУЗКИ ВЕНДЫ, если на COM-порту есть устройство, система бибикнет, что увидела его,
если выключить устройство - система бибикнет, что почуяла отключение и т.п.

Самый простой способ проверить фичу, если нет двух компьютеров, - воткнуть в COM-порт старую
мышь с интерфейсом RS-232. 8) Я для проверки так и сделал... :lol:
Сначала огорчился - ничего не произошло, но после ПЕРЕЗАГРУЗКИ ВЕНДЫ, если двигать мышь и жать
кнопки - много неожиданного может произойти! Венда может захотеть удалить некоторые иконки
с рабочего стола... :ewink: Так что будьте осторожны! :mrgreen:

Кстати: если фича отключена, Венда-98 слушается сразу двух мышей и по RS-232 и по PS/2.

_________________
iLavr


13 Jun 2020 15:21
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Ниже в архиве таблица, каким шестнадцатеричным кодам соответствуют действия при включении
фичи "Альтернативные устройства ввода".

Для определённости активным приложением Венды в этот момент был Блокнот (aka Notepad).
Attachment:
Send_byte.zip [2.12 KiB]
Downloaded 321 times



P.S. А про устройство на основе вот этой моей схемы я как-нибуть в другой раз с фотками расскажу... :wink:

_________________
iLavr


13 Jun 2020 15:32
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 50 posts ]  Go to page Previous  1, 2, 3, 4

Who is online

Users browsing this forum: No registered users and 23 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.