R9029: различия между версиями
SMB (обсуждение | вклад) мНет описания правки |
AtH (обсуждение | вклад) м (Откат правок SMB (обсуждение) к версии Арви Хэкер) |
||
Строка 3: | Строка 3: | ||
== Чтение кода нажатой кнопки == | == Чтение кода нажатой кнопки == | ||
Операция производится при выполнении команды чтения из регистра памяти с адресом 9029. Если [[буфер клавиатуры|буфер]] заполнен, в [[RX|регистр X]] [[стек]]а заносится код первой нажатой кнопки, а счетчик нажатий декрементируется. При последующих чтениях, в [[RX|регистр X]] [[стек]]а считывается код второй нажатой кнопки, третьей и т.д. Когда счетчик нажатий обнуляется, то в [[RX|регистр X]] [[стек]]а всегда считывается код 255. | Операция производится при выполнении команды чтения из регистра памяти с адресом 9029. Если [[буфер клавиатуры|буфер]] заполнен, в [[RX|регистр X]] [[стек]]а заносится код первой нажатой кнопки, а счетчик нажатий декрементируется. При последующих чтениях, в [[RX|регистр X]] [[стек]]а считывается код второй нажатой кнопки, третьей и т.д. Когда счетчик нажатий обнуляется, то в [[RX|регистр X]] [[стек]]а всегда считывается код 255. [[Код клавиши|Коды кнопок]] приведены в приложении Б к [[НПКД. 401348.001 Д1]]. | ||
При нажатии на кнопку клавиатуры счетчик нажатий инкрементируется, код нажатой кнопки ставится в конец очереди. | При нажатии на кнопку клавиатуры счетчик нажатий инкрементируется, код нажатой кнопки ставится в конец очереди. | ||
Строка 10: | Строка 10: | ||
Операция производится при выполнении команды записи в регистр памяти с адресом 9029 любого числа, при этом счетчик нажатий обнуляется. Обнуление счетчика производится также при запуске программы пользователя. | Операция производится при выполнении команды записи в регистр памяти с адресом 9029 любого числа, при этом счетчик нажатий обнуляется. Обнуление счетчика производится также при запуске программы пользователя. | ||
== Ссылки == | |||
* [http://mk.semico.ru/d1_p4.htm#d1_4_2_1 Чтение кода нажатой кнопки на сайте НПП «СЕМИКО», п. 4.2.1] | |||
* [http://mk.semico.ru/d1_p4.htm#d1_4_2_2 Очистка буфера клавиатуры на сайте НПП «СЕМИКО», п. 4.2.2] | |||
* [http://mk.semico.ru/d1_p4.htm#d1_a Приложение Б. Коды кнопок клавиатуры на сайте НПП «СЕМИКО»] | |||
[[Category:Регистры]] | [[Category:Регистры]] | ||
[[Category:Регистры функций]] | [[Category:Регистры функций]] | ||
[[Category:Функции буфера клавиатуры]] | [[Category:Функции буфера клавиатуры]] |
Версия от 09:52, 5 февраля 2015
R9029 «Чтение кода клавиши и очистка буфера (При чтении в X-код, при записи д.б. не 0 для очистки)»
Чтение кода нажатой кнопки
Операция производится при выполнении команды чтения из регистра памяти с адресом 9029. Если буфер заполнен, в регистр X стека заносится код первой нажатой кнопки, а счетчик нажатий декрементируется. При последующих чтениях, в регистр X стека считывается код второй нажатой кнопки, третьей и т.д. Когда счетчик нажатий обнуляется, то в регистр X стека всегда считывается код 255. Коды кнопок приведены в приложении Б к НПКД. 401348.001 Д1.
При нажатии на кнопку клавиатуры счетчик нажатий инкрементируется, код нажатой кнопки ставится в конец очереди.
Очистка буфера клавиатуры
Операция производится при выполнении команды записи в регистр памяти с адресом 9029 любого числа, при этом счетчик нажатий обнуляется. Обнуление счетчика производится также при запуске программы пользователя.