В качестве печатающего аппарата используется принтер ЕС-7914М. Можно применить аналогичные устройства без изменения программы, если они имеют интерфейс IRPR или DZM-180 или CENTRONICS.
После ввода программы (табл. 1) подключают кабель от принтера (поставить его «не готово»). Выполняют директиву G8100 и ВК. Происходит инициализация вектора связи функциональных клавиш и выводится на экран информация соответствия клавиш выполняемым функциям. После этого можно запускать любые программы, которые не используют область памяти, занимаемую программой «Печать», и не меняют вектор связи функциональных клавиш, например Бейсик.
Таблица 1
В момент, когда нужно выдать на печать копию экрана, программа должна находиться в состоянии «ожидание ввода с клавиатуры». Нажимают функциональную клавишу, например <F>, и сразу переводят принтер в состояние «готово». После этого происходит печать копии экрана либо содержимого ОЗУ в символьном или шестнадцатеричном виде (если нажата другая функциональная клавиша).
Недостаток данного вывода в том, что использована та же микросхема КР580ВВ55, как и в клавиатуре. Но его нетрудно исправить — поменять адреса в программе FF00 — FF03 на другие (например, F000 — F003) и интерфейс подключить к соответствующей микросхеме. В программе (см. табл. 1) с адреса:
811U до 8144 — вывод одного символа на печать, символ в регистре А;
8100—810С — инициализация функциональных клавиш и вывод сообщения;
8173—81BF — вывод копии экрана;
8245—825В — анализ кода нажатой функциональной клавиши;
825С—8268 — установка размера печати (короткая или длинная);
8269—8277 — вывод на печать в символьном виде;
829В—82В7 — вывод на печать в шестнадцатеричном виде (распечатка программы);
8160—8172 — вывод в печать режима печати;
81С0—81D1 — программа «выход из печати»;
8279 — адрес данных для вывода в шестнадцатеричном виде.
826А — адрес данных для вывода в символьном виде.
Следующая программа — дизассемблер с печатью (табл. 2). После ввода программы «Печать» записать по адресам 8301, 8302 адрес начала дизассемблируемой программы (выход такой же, как в программе «Печать»: клавиша <3>, затем <STOP>), и набрать директиву G8300 и ВК, перевести печать в «готово».
Таблица 2
Чтобы использовать программу без печати, оставив только вывод на экран, нужно в ячейку 82В4 записать С9, а в ячейки 84С0 — 84С2 поместить CD4085. Старт осуществляется нажатием любой клавиши.
Основное достоинство данной программы — компактность. Для команд с кодами от 40 по BF не используется таблица с мнемоникой этих команд, что позволило сократить таблицу в два раза — адреса 8400—87FF.
8300—833F — анализ кода команды и вывод адреса команды,
82DD — 82FF — вычисление адреса строки таблицы и анализ операнда,
8340—836F — вывод команд с кодами 40 — BF,
8370—837А — команда HLT,
837В — 8388 — вывод регистра для команд 40 — BF, 838С — 83В4 — вывод пробелов и анализ длины операнда, 83В6 — 83CF — вывод команды с двухбайтовым операндом,
83D2 — 83F5 — вывод команды с однобайтовым операндом.
Схема подключения микроЭВМ к принтеру — на рисунке.
А. ЖЕНЖЕРУХА, г. Старый Оскол, Белгородская обл.