1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Эмуляция клика мышки

Тема в разделе "WASM.NT.KERNEL", создана пользователем Mega_, 15 апр 2009.

  1. Mega_

    Mega_ New Member

    Публикаций:
    0
    Регистрация:
    15 апр 2009
    Сообщения:
    3
    Пытаюсь эмулировать щелчек и перемещение мышки. Делаю это через контроллер клавиатуры 8042. Пока пытаюсь эмулировать клик.
    Уже долго бьюсь над этим (с эмуляцией клавиатуры проблем не возникло). ОС Windows 2003 Server.
    Результат: непредсказуемые прыжки курсора, причем это прыжки и клик происходят после того как двигаю реальной мышкой.
    Код (Text):
    1. mov al, 0D3h    ;записать байт в буфер мыши
    2. out 64h, al  
    3.  
    4. DO_DELAY
    5. mov al, 00001010b
    6. out 60h, al  
    7.  
    8.  
    9. DO_DELAY
    10. mov al, 0D4h    ;передать байт мыши
    11. out 64h, al  
    12.  
    13. DO_DELAY
    14. mov al, 10b
    15. out 60h, al
    Подскажите в чем проблема ?
     
  2. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    Mega_
    Я со своей нубской стороны могу только предположить, что дело в том что не происходит прирывания от мыши.
    Кстате а как делаешь умуляцию клавы?
     
  3. Mega_

    Mega_ New Member

    Публикаций:
    0
    Регистрация:
    15 апр 2009
    Сообщения:
    3
    Нажатие клавиши на клавиатуре:

    Код (Text):
    1. mov al, 0D2h
    2. out 64h, al  
    3.  
    4. Ожидание готовности клавиатуры
    5.  
    6. mov al, Скан_код_клавиши
    7. out 60h, al
    http://www.wasm.ru/forum/viewtopic.php?id=31771
     
  4. Phantom_84

    Phantom_84 New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2007
    Сообщения:
    820
    Может, проблема в том, что от мышки данные поступают пакетами по несколько байтов ;)

    См. здесь.
     
  5. Mega_

    Mega_ New Member

    Публикаций:
    0
    Регистрация:
    15 апр 2009
    Сообщения:
    3
    Пробовал несколько байт слать не помогает.