|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.10.2011, 00:35 | #1 |
Пользователь
Регистрация: 16.10.2011
Сообщений: 40
|
Управление клавиатурой
Здравствуйте! писал в разделе для новичков, но тема серьёзная!
Нужна помощь в реализации программы на паскале с asm вставками: при нажатии "+" должны загораться индикаторные лампочки клавиатуры (т.е. состояние клавиатурного флага расположенного по адресу 0:0417h должно быть равно 70h(если я правильно изьясняюсь) - 4,5 и 6 биты должны быть "1", что соответствует вкл. индикаторам); при нажатии "-" должны гаснуть, а при "*" - инвертироваться. Я нашел scan и ascii коды этих клавиш. Вот алгоритм, насколько я его понимаю: 1) считать символ нажатой клавиши из буфера с помощью ассемблерной функции; 2) if (scan=13)and(ascii=43) // соответствует "+" то : 0:0417 = 70h if (scan=12)and(ascii=45) // "-" то : 0:0417 <> 70h if (scan=9)and(ascii=42) // "*" то : 0:0417 инвертировать не могу разобраться, как использовать абсолютный адрес и побитовое смещение. подскажите пожалуйста, не такой уж я безнадежный)) |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод конфигурации компьютера и управление клавиатурой, компилятор gcc | Enchance | Общие вопросы C/C++ | 0 | 04.11.2010 21:26 |
Работа с клавиатурой! | FartNick | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 11.10.2010 17:20 |
Проблема с клавиатурой.. | NastiaNastia | Помощь студентам | 2 | 25.09.2010 18:13 |
Управление клавиатурой | kaizer | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 3 | 10.12.2009 18:40 |
обновление в блоге - Управление клавиатурой | Pblog | Обсуждение статей | 0 | 27.05.2007 03:17 |