Главная Дока Микро-80 Радио-86РК ЮТ-88 Орион-128 Ссылки Новости Письмо

Описание компьютера Орион-128
Журнал РАДИО

ПРК "ОРИОН-128" Графический редактор PENX

Графический редактор PENX является средством, позволяющим создавать монохромные и цветные графические образы, хранить их в виде библиотеки стандартных файлов, редактировать. Цветовой режим, используемый графическим редактором, - 16-цветный (режим 2).

Областью применения PENX может стать создание различных схем, таблиц, графиков, рисунков, предназначенных для вывода на печать, графических фрагментов (спрайтов) для использования их во всех видах прикладных и игровых программ, а также разработка динамичных рекламных и учебных роликов, заставок.

Редактор рассчитан на работу с операционной системой ORDOS (версия не ниже 2.4) на ПРК "ОРИОН" с минимальным объемом ОЗУ 128К.

УСТАНОВКА ПРОГРАММЫ

Для того чтобы включить программу графического редактора в нашу библиотеку, вам необходимо ввести коды, приведенные в табл.1 (поблочные контрольные суммы приведены в табл.2), начиная с нулевого адреса ОЗУ и, также как мы это делали раньше, сохранить программу на квазидиске директивой "S" операционной системы:

B>S PENX , 1FEF [ВК],

а затем записать ее на магнитную ленту с помощью программы обмена с магнитофоном "СН$".

КОНТРОЛЬНЫЕ СУММЫ
0000 - 00FF 6327
0100 - 01FF FBA2
0200 - 02FF AF5F
0300 - 03PF 0BA4
0400 - 04FF 3A9C
0500 - 05FF 9F54
0600 - 06FF 50E2
0700 - 07FF EDA5
0800 - 08FF D4E9
0900 - 09FF 9587
0A00 - 0AFF 15CF
0B00 - 0BFF 8D6B
0C00 - 0CFF FDC1
0D00 - 0DPF B570
0E00 - 0EPF 41A8
0F00 - 0FFF 64D6
1000 - 10FF B3FA
1100 - 11FF 5C08
1200 - 12FF 5DF6
1300 - 13PF 05C8
1400 - 14FF 86E8
1500 - 15FF A0FB
1600 - 16FF D879
1700 - 17FP 0875
1800 - 18FF P040
1900 - 19FF E342
1A00 - IAFF 50F2
1B00 - 1BFF IFCC
1C00 - 1CFF F64D
1D00 - 1DFF 6DCF
1E00 - 1EFF FE9E
1F00 - 1FFF 620C

Имя программы - "PENX$" не является зарезервированным, т. е. так же, как "BASIC$" и все другие имена, которые мы присваиваем нашим программам, может быть изменено. Однако, учитывая тот факт, что операционная система допускает такой механизм выполнения программ, при котором одна программа вызывает следующую, пользуясь ее стандартным именем, а также во избежание путаницы при ссылках на программы, мы советуем все же использовать предлагаемые имена.

НАЧАЛО РАБОТЫ

Графический редактор работает с цветной экранной графикой, поэтому, также как и "BASIC$", накладывает ограничения на размер заполненной файлами области квазидиска. Эти ограничения еще более жесткое, чем для программы "BASIC$": дополнительная страница памяти (квазидиск) должна быть заполнена не более чем до адреса 7FFFH, вся область с адреса 8000Н должна оставаться свободной. Обусловлено это тем, что программа использует две экранные области - 8000H-AFFFH и 0С000Н-0EFFFH. Если это условие не соблюдено, то, также как и при попытке некорректного запуска программы "BASIC$", будет выведено сообщение "ДИСК!" и управление вернется к ОС. Кроме того, при работе с программой "PENX$" надо учитывать, что результаты работы программы записываются в виде файлов на квазидиск, и для них тоже надо оставить место.

После загрузки программы "PENX$" директивой "L" на экране появляется заставка, содержащая информацию о программе и короткое сообщение-запрос в нижней строке экрана: "F1/...?", означающее, что далее вы можете нажать либо клавишу F1, либо любую другую.

При нажатии F1 редактор переходит в режим переназначения управляющих клавиш. Если вам по каким-либо причинам неудобно пользоваться теми клавишами управления, которые устанавливаются автоматически при загрузке программы, вы можете выбрать другие. Нажатие вместо F1 любой другой клавиши приведет к началу работы с графическим редактором. Если при вызове программы "PENX$" удерживать нажатой любую клавишу (можно просто несколько дольше удерживать нажатой клавишу ВК при выполнении директивы "L"), то все установочные процедуры блокируются и редактор сразу переходит в рабочий режим.

ПОРЯДОК РАБОТЫ

Для управления редактором необходимо всего 10 клавиш: 8 из них используются для перемещения по экрану графического курсора - пера и 2 - для перемещения светящегося указателя в меню. В том варианте программы, который вам предлагается, управление осуществляется с помощью малой клавиатуры (стандарт РК-86), так как это показано на рис.1. Несмотря на несоответствие обозначений на клавишах их назначению, такое расположение клавиш наиболее удобно - после небольшой практики вы сможете работать не глядя на клавиатуру, и работа в этом случае напоминает работу с джойстиком. Конечно, если у вас клавиатура другого типа, вам, возможно, придется переназначить клавиши управления.

Выбор любой функции редактора осуществляется с помощью разветвленной системы вложенных меню, позволяющих быстро выбрать необходимую операцию.

Меню редактора двух видов горизонтальные и вертикальные. В горизонтальном меню выполнение функции, написанной в каждой графе, происходит сразу же при установке на данную графу указателя: например, "рисовать" сразу включает режим рисования, "стирать" - стирания, "меню" - происходит переход в другое меню.

В вертикальном меню, чтобы вызвать необходимую функцию или режим, надо сначала установить светящийся указатель на соответствующее имя, а затем нажать любую клавишу, кроме тех двух, которые вы выбрали для перемещения указателя (при освоении программы можно нажимать ВК, это более привычно и не вызовет путаницы).

Основное меню включает в себя следующие функции:
ДОС
ЦВТН./МНХР.
АВТОЗАПИСЬ
КООРД.
ДУГА
ОКРУЖНОСТЬ
линия
КЛАВИАТУРА
СЕТКА
ОКНО
РИСУНОК

Рассмотрим более подробно каждую из них.

РИСУНОК

Работа в этом режиме не требует особых пояснений и напоминает обычную работу с карандашом и ластиком на листе бумаги. Из режима РИСУНОК можно перейти в следующее меню - ЛИНЗА, вызывающее 8-кратное увеличение того места рисунка, в котором в данный момент находится перо. В правой части экрана в то же время можно наблюдать фрагмент экрана без увеличения, причем место, увеличиваемое линзой, выделяется пунктирной рамкой.

В каждом меню есть позиция с надписью МЕНЮ или ВЫХОД. Установив указатель в это положение, вы переходите в предыдущее меню. Так, из режима ЛИНЗА можно вернуться обратно в режим РИСУНОК, а из РИСУНКА - в основное меню.

Графический редактор работает только в шестнадцатицветном режиме экрана, причем, если при работе не пользоваться функциями переключения цвета и окраски, можно считать, что вы работаете в режиме МОНОХРОМ. Так, для создания рисунков, предназначенных для печати на принтере, цветовые функции редактора необязательны.

Наибольшую сложность при работе с редактором может вызвать цвет. Для окрашивания рисунков необходимо помнить, что все точки одной горизонтальной строки экрана разбиты на "байты" (которые действительно соответствуют байтам экранного ОЗУ) по 8 точек в каждом, и отсчет точек ведется от левого края строки. Число от О до 7 в нижней левой части экрана показывает, на какой по счету точке в "байте" находится графический курсор. Это число можно определить, как горизонтальную координату курсора по модулю 8. Все точки в "байте" могут быть окрашены только в два из 15 возможных цветов - цвет фона и цвет переднего плана. Фоновые точки в линзе изображаются окаймленным квадратом, точки переднего плана - полностью закрашенными. В режимах РИСОВАТЬ и СТИРАТЬ при движении курсора происходит перекрашивание всех точек "байта" в последний выбранный цвет, фон при этом остается неизменным, таким же, как и в первоначальном рисунке. После выбора другого фона наоборот - точки изображения не меняются и сохраняют свой первоначальный цвет, а точки фона перекрашиваются во всем "байте" в выбранный. Таким образом, создание сложно окрашенных красочных рисунков требует некоторых навыков и предварительного "просчета" расположения рисунка и его частей.

ОКНО

Режим ОКНО - наиболее мощный и чаще всего используемый инструмент в редакторе. Обычно в режимах РИСУНОК, ОКРУЖНОСТЬ и пр. Создаются заготовки для будущего графического образа или объекта (например, схемы), затем, используя ОКНО, делают основную часть работы - размножают и расставляют на свои места повторяющиеся элементы, отрезки линий, надписи и пр.

Включив режим ОКНО, вы увидите прямоугольник, ограничивающий некоторую часть экрана. Именно эта область экрана и считается окном (включая точки, принадлежащие границе). Окно можно перемещать по экрану в любом направлении, изменять его размеры. Выбрав необходимое положение окна на экране и его размер, вы можете перейти в следующее меню (оно обозначается как ДОП. МЕНЮ). Используя функции, перечисленные в этом дополнительном меню, можно проделать с изображением в окне следующие процедуры: В этом же меню находятся функции работы с квазидиском:

Графические файлы должны обязательно иметь имя, включающее в себя стандартное расширение ".PC". По этому расширению программа опознает "свои" файлы и включает их в каталог. При создании новых файлов им автоматически присваивается имя 1р4N.PC, где N - порядковый номер. По окончании работы с редактором вы можете переименовать эти файлы по своему усмотрению, обязательно лишь сохранить расширение, например, "FIG1.PC".

При чтении графического фрагмента с диска он выводится на экран в том месте, где в данный момент находится рамка окна. Вывод происходит относительно правого нижнего угла окна, причем размеры окна перед выполнением этой функции не имеют значения - окно становится такого размера, какого размера читаемый фрагмент. Если правый нижний угол окна находится слишком близко к левой или верхней части экрана, так что читаемый фрагмент не умещается, на экран будет выведена только его часть.

Так же, как и в режиме РИСУНОК, наибольшие проблемы, скорее всего, вызовет работа с цветными картинками. Если для монохромных изображений можно выбирать произвольный размер окна и как угодно перемещать их по экрану, то для цветных ограничения, накладываемые "байтовой" структурой экрана, создают определенные сложности. Для облегчения работы при всех манипуляциях с окнами в левом нижнем углу экрана выводятся две цифры от 0 до 7 - они показывают положение в "байте" соответственно левой и правой вертикальных границ окна. Оптимальное, с точки зрения работы с цветными картинками, сочетание этих цифр 07. Если это условие не соблюдается, то возможно несколько некорректное выполнение некоторых функций, впрочем, совершенно не нарушающих работу редактора. Так, функции ОКРАСИШЬ ИЗОБРАЖЕНИЕ и ОКРАСИТЬ ФОН окрасят чуть большую площадь - до ближайших значений 0 влево и 7 вправо, выполнение функции ЧИТАТЬ ЦВЕТНОЕ вызовет несовмещение изображения и его цветовых атрибутов, однако небольшим смещением изображения относительно цвета это легко поправить.

К вопросу о графических файлах, являющихся основным результатом работы редактора, мы еще вернемся в конце этой статьи, а теперь продолжим рассмотрение функций, включенных в основное меню.

СЕТКА

Режим СЕТКА является вспомогательной функцией. Пользуясь ею, можно вывести на экран координатную сетку с шагом 8 на 8 точек. Повторным выполнением этой функции координатная сетка выключается.

КЛАВИАТУРА

Режим позволяет делать текстовые надписи стандартным шрифтом, при этом все клавиши соответствуют своему обычному назначению, кроме клавиши стирания экрана. Нажатием на эту клавишу происходит возврат в основное меню. Если до начала работы с графическим редактором обслуживание дисплея переключено на другой драйвер (переключаемый вход драйвера дисплея OF3CDH), то надписи будут делаться тем шрифтом, который выводит он. Кроме того, есть возможность воспользоваться другим шрифтом благодаря замен штатного знакогенератора (напомним, знакогенератор располагается в адресах OFOOOH - OF2FFH).

ЛИНИЯ

В этом режиме на экране присутствуют два графических курсора: перо и крест. При рисовании линии они определяют ее концевые точки. Проведение линий с помощью этой функции (а также при рисовании окружностей и дуг) точки рисуемой фигуры выводятся на экран по алгоритму "исключающего или", т. е. там, где изображение есть, оно стирается, где его нет - появляется. Это обстоятельство можно использовать для исправления ошибочных построений: неправильно проведенную линию легко можно стереть, проведя по ней линию еще раз; это свойство касается также дуг и окружностей.

ОКРУЖНОСТЬ

Установите центр окружности (обозначается на экране крестом), перейдите на функцию ОКРУЖНОСТЬ и нажимайте любую клавишу, кроме клавиши СТИРАНИЕ ЭКРАНА, - окружность будет увеличиваться. При нажатии клавиши СТИРАНИЯ ЭКРАНА - уменьшаться.

ДУГА

Для проведения дуги установите крест в центр воображаемой окружности, которой будет принадлежать дуга. Перо поставьте в точку начала дуги. Установив эти точки, перейдите на функцию ДУГА, нажмите и держите в нажатом состоянии любую клавишу - дуга будет строиться от начальной точки в направлении против часовой стрелки. Из-за ограниченных вычислительных возможностей редактора не стоит пытаться получить дуги очень большого радиуса.

КООРДИНАТЫ

При выполнении этой функции в режимах РИСУНОК и ЛИНЗА в левом нижнем углу экрана индицируются десятичные координаты по осям Х и Y графического курсора. Индикация отключается повторным выполнением функции.

АВТОЗАПИСЬ

Все ваши действия при работе с графическим редактором могут быть записаны в специально отведенный для этой цели буфер и потом повторены самой программой PENX$ автоматическом режиме. Размеры буфера ограничены (может быть записано только около 15ОО различных действий). Запись действий начинает вестись всегда, начиная с момента запуска редактора. Сигналом того, что буфер исчерпан и запись больше не ведется, служит появление в основном меню символа "+" перед директивной АВТОЗАПИСЬ. Для перехода в режим автоматического выполнения служит функция ПОВТОР. Запись ваших действий может быть, также как и спрайт, оформлена в виде файла и записана на диск. Файлу при этом присваивается имя PGMP.

Режим АВТОЗАПИСЬ является более демонстрационным, чем рабочим, однако пользуясь им, вы можете сделать, например, "мультик" для детей или динамичный учебный ролик, не прибегая при этом ни к каким другим языкам и средствам программирования. Для того чтобы научиться пользоваться этим режимом, вам надо учесть следующее: перед тем, как начать создание ролика, убедитесь в том, что на квазидиске есть достаточно места для сохранения файла PGMP и необходимых графических фрагментов, в противном случае ваши усилия могут пропасть даром. Заблаговременно создайте редактором необходимые для вашего ролика спрайты, сохраните их на диске.

После того, как это сделано, перезапустите программу PENX$ снова и, пользуясь ранее созданными образами и добавляя по мере надобности новые графические элементы, реализуйте сценарий вашего ролика. Старайтесь действовать при этом по возможности оптимально, т. е. без лишних и ошибочных действий, так как отредактировать запись нельзя. По окончании работы сохраните на диске файл PGMP. Таким образом, результатом вашей работы будет пакет файлов, состоящий из файла PGMP и нескольких графических файлов *.рс.

Необходимо помнить, что при запуске программы в режиме автоматического повтора файлы *.рс должны присутствовать на диске в том же количестве, что и до начала создания ролика, кроме того, порядок их следования на диске также должен быть сохранен (имена при этом не имеют значения, единственное условие - наличие в имени расширения .РС). Несоблюдение этих условий приведет к некорректному выполнению "ролика".

При отладке "ролика" с автозаписью выполнение можно в любой момент прервать, нажав любую клавишу, после чего продолжить работу в ручном режиме, однако, если до этого ролик не был сохранен на диске как файл, его не воспроизведенная часть будет утеряна.

ЦВТН./МНХР.

Включение и выключение цвета. При переходе в режим МОНОХРОМ все функции работы с цветом графического редактора продолжают действовать, отключается только цветной вывод на дисплей.

ДОС

Окончание работы с программой и передача управления ORDOS. При выполнении происходит очистка экрана, максимальный размер квазидиска устанавливается равным 0EFFFH.

В. САФРОНОВ, В. СУГОНЯКО

Московская обл.

Отсканировано с журнала Радио №8 1991 г.
Отредактировано Лесных Ю. 2001 г.

Описание компьютера Орион-128
Журнал РАДИО


(C) 2003-2010 www.danbigras.ru Наш адрес: info@danbigras.ru
Всё о старых компьютерах