Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: эмуляция нажатия клавиш  (Прочитано 11643 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Leo
Гость
« : 19-03-2009 09:05 » 

задача: эмуляция нажатия клавиш через порты контроллера 8042
Как писать в порты разобрался, нашел описание http://heim.ifi.uio.no/~stanisls/helppc/8042.html

Подскажите в какой последовательности в какой порт что писать чтобы эмулировать нажатие клавиш.
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 19-03-2009 10:20 » 

http://www.google.ru/search?sourceid=navclient&hl=ru&ie=UTF-8&rlz=1T4GGLG_ruRU314RU314&q=%d1%8d%d0%bc%d1%83%d0%bb%d1%8f%d1%86%d0%b8%d1%8f+%d0%bd%d0%b0%d0%b6%d0%b0%d1%82%d0%b8%d1%8f+8042

https://forum.shelek.ru/index.php/topic,7127.0.html

Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Leo
Гость
« Ответ #2 : 19-03-2009 11:13 » 

гуглом пользоваться умею.
во второй ссылке ответа нет ни на мой вопрос ни на вопрос автора той темы.
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 19-03-2009 20:42 » 

тогда бы вы нашли более полное описание, например это:
http://zet.aluzina.org/images/d/d4/8042.pdf
и это
http://www.arl.wustl.edu/~lockwood/class/cs306/books/artofasm/Chapter_20/CH20-2.html
или даже это
http://h20000.www2.hp.com/bc/docs/support/SupportManual/c00771619/c00771619.pdf

что конкретно у вас не получилось из того что вы пробовали?
внимательно прочитать 11 страниц мануала до конца?
записать два байта в 64 и 60 порт?
команда D2 у вас не дает желаемых результатов ?
 А черт его знает...

PS в том посте ответ был
Цитата
             Commands System Issues to Keyboard (via 8042 port 60h)       
ED  Set/Reset Mode Indicators, keyboard responds with ACK then           
waits for a following option byte.  When the option byte is           
received the keyboard again ACK's and then sets the LED's           
accordingly.  Scanning is resumed if scanning was enabled.           
If another command is received instead of the option byte           
(high bit set on) this command is terminated.  Hardware           
 defaults to these indicators turned off.           
¦7-3¦2¦1¦0¦ Keyboard Status Indicator Option Byte             
¦        ¦  ¦  +--- Scroll-Lock indicator  (0=off, 1=on)             
¦        ¦ +---- Num-Lock indicator  (0=off, 1=on)             
¦       +----- Caps-Lock indicator  (0=off, 1=on)             
+------- reserved (must be zero)
« Последнее редактирование: 19-03-2009 20:49 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Leo
Гость
« Ответ #4 : 20-03-2009 06:12 » 

с мануалами на английском действительно есть проблемы...
пишу в 0x64 -> 0xd2
     в 0x60 -> 0x2e

не получается увидеть напечатанный символ на экране...
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 20-03-2009 07:59 » 

Leo, а как тестируете? окно какое активно?
возможно не выставляется прерывание? попробуйте слать в порт, при активном окне например доса... а потом с клавиатуры еще клавишу нажать. если дело в том что не выставляется прерывание, надо глянуть - можно ли командами 8042 его выставить.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Leo
Гость
« Ответ #6 : 20-03-2009 08:31 » 

активен блокнот.
прерывание не выставляю
Записан
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 20-03-2009 09:46 » 

все таки почитайте доку... возможно там еще что нибудь надо сделать.
Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Ochkarik
Модератор

ru
Offline Offline
Пол: Мужской

« Ответ #8 : 20-03-2009 22:12 » 

 у вас клавиатура часом не USB? Ага
« Последнее редактирование: 20-03-2009 22:13 от Ochkarik » Записан

RTFM уже хоть раз наконец!  RTFM :[ ну или хотя бы STFW...
Leo
Гость
« Ответ #9 : 23-03-2009 07:38 » new

да, проблема была в этом ) спасибо!
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines