A1exSun
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору 1. Код: data segment char db "123QWErty" scan db 2, 3, 4, 5, 6, 7, 8, 9, 0ah, 0bh data ends code segment ... mov cx, 9 xor si, si next_key: ; имитация нажатий клавиш mov ah, 5 push cx mov cl, [char+si] mov ch, [scan+si] int 16h pop cx inc si loop next_key | Почему символы вводятся начиная со второй клавиши? То есть получается "23QWErty". Если так: Код: mov cx, 10 ... mov cl, [char+si-1] mov ch, [scan+si-1] | То норм, вся строка. 2. Как установить собственный обработчик INT 9h под 8086? Можно код-пример пожалуйста. Переписывал отсюда, стандартный не возвращается, MS-DOS виснет. Еще почему в этом коде "down" и "up" выводятся много раз при кратковременном, меньше секунды, нажатии стрелок, а не один раз? Код: in al, 60h ; get keyboard port status | Здесь скан-код только что нажатой клавиши? | Всего записей: 1871 | Зарегистр. 25-11-2009 | Отправлено: 13:21 30-03-2012 | Исправлено: A1exSun, 13:28 30-03-2012 |
|