ГИ ЭКВМ, вывод текста |
Главная / ЭКВМ / Программы / Примеры |
Графический интерфейс (ГИ) представляет собой набор структур. Структуры (экранные формы) пронумерованы и перечислены в главной таблице меню. Для работы с ГИ требуется инициализация некоторых регистров функций. В таблице перечислены регистры функций ГИ, инициализация которых требуется для вывода текста.
Пример программы
Файл программы primgui4.mkp на ЯМК - 57 байт, КС 16167/7
00-15 - инициализация регистров ГИ; 16-20 - вывод формы на экран; 21-22 - бесконечный цикл; 23-35 - строка "Пример формы", нулевой байт конца строки пересекается с главной таблицей форм. 35-38 - главная таблица форм, содержит номер и адрес единственной формы; 39-46 - заголовок формы 0, адреса структур отсчитываются от начала формы; 47 - таблица флагов действий, сюда же ссылаются таблицы переходов, которые не используются в данной программе; 48-55 - программа вывода формы на языке ГИ; 56 - указатель на программу активного элемента - команду END (0FFh). Текст программы primgui4.mkl для кросс-компилятора: .CHARSET 1251 ; Файл primgui4 ; Пример работы с графическим интерфейсом пользователя ; Пример вывода формы с текстовым сообщением ; Версия 1.0 от 12.03.14 ; Компилятор mkl2mkp v0.27+ ; ====================================================== Начало программы .ORG 0 CX ; Обнулить RX и сбросить признак ввода числа PP M 9202 ; Текущая форма - 0 PP M 9203 ; Активный элемент - 0 1 PP M 9200 ; Разрешение графического интерфейса .NUML TFORM ; Адрес на первой странице PP M 9201 ; Главная таблица форм == TFORM 64 ; Код принудительной перерисовки формы PP M 9208 ; Перерисовать форму A1: GOTO A1 ; Бесконечный цикл ;======= Тексты строк могут располагаться в произвольном месте памяти F0T1: .TEXT "Пример формы" ; Нулевой байт для окончания строки - первый в таблице форм ;===== Главная таблица форм TFORM: .DB 0 ; в этой программе только одна форма (с номером 0) .DA F0 ; адрес начала формы 0 .END ; конец таблицы ;===== Форма 0 ; Заголовок формы F0: .FORM 0, F0DE, F0PI, F0PO, F0PL, F0PR, F0RI, F0KM ; максимальный элемент и таблица смещений F0DE: F0PI: F0PO: F0PL: F0PR: .DB 0 ; Запрет обработки F0RI: ; основная программа экранной формы .TAB 32, 20 ; позиция (X=32,Y=0) .TXTP 16, F0T1 ; TXTP - вывести строку из области памяти программ ; атрибут 16 - перерисовка, расстояние между символами 1 ; F0T1 - адрес строки F0KM0: .END ; конец программы ГИ F0KM: ; Таблица смещений программ элементов .DBB F0KM0 .ENDP Пример вывода текста без ГИ
Файл программы primgui4a.mkp на ЯМК - 35 байт, КС 20319/245
00-12 - инициализация регистров графического экрана; 13-18 - вывод текста на экран; 19-20 - бесконечный цикл; 21-34 - строка "Пример текста". Текст программы primgui4a.mkl для кросс-компилятора: .CHARSET 1251 ; Файл primgui4а ; Пример вывода текстового сообщения без использовангия ГИ ; Версия 1.0 от 12.03.14 ; ====================================================== Начало программы .ORG 0 CX ; Обнулить RX и сбросить признак ввода числа 2 PP M 9010 ; Инициализация графического экрана 20 ENT 32 PP M 9000 ; Координаты вывода .NUML T1 ; Адрес на первой странице PP M 9021 ; Вывод строки K GRPH A1: GOTO A1 ; Бесконечный цикл T1: .TEXT "Пример текста\0" .ENDP |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
НПП "СЕМИКО" (383) 271-01-25 (многоканальный) |