Программирование на бк 0010
Любая буква от «А» до «К» вызовет перезагрузку.
Описание | |
---|---|
0000000 — 0000777 | ОЗУ Системные переменные, стек |
0001000 — 0037777 | ОЗУ Пользователя |
0040000 — 0077777 | ОЗУ Экран |
0100000 — 0177577 | ПЗУ |
0177660 | Регистр состояния клавиатуры |
бит 0: При записи 1 таймер останаливается
бит 1: Если 1, то вслед за 0 всегда идет 0177777, независимо от значения 0177706 и режима одновибратора, бит 7 не устанавливается
бит 2: Если 1, то устанавливать бит 7 в конце периода
бит 3: Если 1, то в конце приода остановить таймер
бит 4: При записи 1 таймер запускается, счет начинается со значение из регистра 0177706
биты 6,5: Делитель тактовой частоты: 00b=Fcpu, 10b=Fcpu/4, 01b=Fcpu/16, 11b=Fcpu/64
бит 7: Если бит 2 установлен, то в конце при периода бит устанавлиается в единицу, сбрасывается программно
Описание | Входные данные | Выходные данные | |
---|---|---|---|
EMT 4 | инициализация вектора прерывания клавиатуры | ||
EMT 6 | чтение кода символа с клавиатуры | R0 | |
EMT 010 | чтение строки с клавиатуры | R1 — адрес буфера R2L — максимальная длина строки R2H — символ-ограничитель | R1 — адрес послед символа + 1 R2L — максимум минус введеных символов |
EMT 012 | установка ключей К1-К10 клавиатуры | R0 — номер ключа от 1 до 10 R1 — адрес текста ключа | |
EMT 014 | инициализация экрана и установка всех векторов прерываний | ||
EMT 016 | вывод символа | R0 — код символа | |
EMT 020 | вывод строки | R1 — адрес строки R2L — длина строки R2H — символ-ограничитель | |
EMT 022 | вывод символа в служебную строку | R0 — код символа (0 = очистка строки) R1 — номер позиции в служебной строке | |
EMT 024 | установка курсора по координатам | R1 — X R2 — Y | |
EMT 026 | получение координат курсора | R1 — X R2 — Y | |
EMT 030 | рисование точки | R1 — X R2 — Y R0 — цвет | |
EMT 032 | рисование линии | R1 — X R2 — Y R0 — цвет | |
EMT 034 | получение состояния дисплея | R0 — состояние |
Структура блока параметров: