Радио 07-93/СР/М-80. Операционная система

Материал из Emuverse
Данный материал защищён авторскими правами!

Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей.

Автор: М. БРИДЖИДИ, Г. РОГОВ

Источник: Архив жернала Радио

В предыдущих номерах журнала был описан контроллер дисковода для «Ориона-128» и пришла время рассказать о соответствующем программном обеспечении: ОС СР/М и о некоторых программах-утилитах. Но сначала несколько слое об особенностях установки ОС СР/М на «Орион-128».

Возможны три способа ее размещения в памяти компьютера: в нулевой странице ОЗУ (ниже области основного экрана), в первой страница ОЗУ (в области атрибутов цвета основного экрана) и в одной, из дополнительных страниц ОЗУ, Установка ОС СР/М в дополнительны* страницах ОЗУ требует, естественно, обязательного наличия их а компьютере. Для большинства программ вполне достаточно объема ОЗУ в 128 Кбайт и вводить дополнительные страница толь-до для установки ОС СР/М вряд ли целесообразно,

Объем свободной памяти при размещении ОС СР/М в нулевой странице ОЗУ составляет всего 39-40 Кбайт, а в первой — более 50 Кбайт. Поскольку для работы большинства наиболее интересных и мощных СР/М программ необходимо не менее 40 Кбайт свободной памяти, то напрашивается решение — разместить ее в первой странице ОЗУ. Но при этом накладываются ограничения на работу с цветом, так как включение цвета в основном экране приведет к уничтожению ОС СР/М в памяти компьютера.

Практически во всех СР/М программах, перенесенных на «Орион-128» с других компьютеров, используется монохромный режим работы, то есть необходимость использования атрибутов извета отпадает сама собой. ОС СР/М автоматически включает монохромный режим в «Орионе-128» (светлые символы на темном фона), что и позволяет замаскировать ее расположение в области цветовых атрибутов.

Отметим, что программы, написанные специально для «Ориона-128», могут работать с цветом самостоятельно, включая вместо основного экрана первый или второй. В дальнейшем мы расскажем о двух таким программах: о программе «Lord», используемой для работы с файлами ORDOS, и о программе: «Bridge Panels» — удобной многофункциональной графической оболочке ОС СР/М.

Приведенное ниже описание относится к ОС СР/М версии 2.2 с BIOS версии 3.00 и выше (СР/М V2.2, BIOS V3.00; СР/М V2.2, BIOS V3.10 и др.), разработанных в ПМП «Орион-Сервис». Для получения начальных сведений об ОС СР/М целесообразно предварительно ознакомиться с [1].

BIOS V3.00 был разработан на основе предыдущих версий с учетом всех замечаний и обнаруженных недостатков. Характерными особенностями BIOS V3.00 являются:

  • использование внутренних команд, вводимых через клавишу [F1];
  • принципиально новый способ вывода курсора на экран;
  • «псевдо-аппаратный» ввод с клавиатуры;
  • увеличение надежности и скорости выполнения операций чтения-записи;
  • встроенный драйвер печати;
  • возможность одновременной работы с тремя дисководами;
  • возможность работы с квазидиском;
  • возможность запуска файлов в пакетном режиме при начальной загрузке системы «холодном» старте.

ВНУТРЕННИЕ КОМАНДЫ

В BIOS V3. 00 реализована возможность использования внутренних команд, вводимых через клавишу [F1] (F1-команды), что позволяет более гибко управлять компьютером, настраивая его на требуемые характеристики работы. Для входа в режим исполнения F1 -команд необходимо нажать клавишу [F1]. В левом верхнем углу экрана появится промпт режима внутренних команд:

СМD>

(сокращение от «COMMAND» — «команда»). Рядом будет мигать курсор. Ввод F1 -команды осуществляется нажатием на одну из следующих клавиш:

  • [С] — включение цветного режима;
  • [K] — эмуляция кодировки KОИ-8;
  • [R] — обслуживание управляющих кодов терминала компьютера Robotron-1715:
  • [U] — изменение формы курсора;
  • [G] — выход в СР/М по «горячему» старту;
  • [M] — выход в МОНИТОР;
  • [L] — включение служебной строки.

Клавиша [F1] в СР/М программах используется крайне редко. Поэтому именно она и была выбрана ДЛЯ входа в режим исполнения F1-Команд. Если какая-либо программа все же требует использования клавиши [F1], ее нажимают дважды. При первом нажатии выдается промпт режима F1 команд. При втором — в программу возвращается код клавиши [F1].

Включение цветного режима

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

Если Вы работаете в цветном режиме с какой-то программой и цвет экрана неожиданно портится, в этом нет ничего страшного: введите F1-команду «С» (цвет будет выключен) и продолжайте работу. Изменение цвета связано с тем, что в цветном режиме включен экран «Ориона-128», располагающийся с адреса B000H, а некоторые программы используют ату область для своей работы. По этой же причине опасно запускать программы, работающие в области 8000H-0AFFFH в нулевой странице, не выключив предварительно цвет, Примерами таких программ являются программы, самостоятельно выводящие символы на экран {файлы КОI8. СОМ, RLS0.COM и т. п.

При работе в монохромном режиме подобных ограничений на запуск программ нет.

Если находясь в монохромном режиме Вы решили включить цветной ражим, сделать это лучше, когда на экране еьше" ЯШ Промпт СР/М. Включить цвет можно, и работая в какой-либо программе, но в этом случае Вы должны быть уверены! что программа не использует для своей работы область 8000H-AFFFH.

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

Эмуляция кодировки КОИ-8

Многие СР/M программы ДЛЯ «Ориона- 123» были перенесены с компьютера «Корвет». Так как на «Корвете» применяется кодировка КОИ-8 (на «Орионе-128» — КОИ-7), работ с этими программами без загрузки дополнительного драйвера затруднена. Использование режима эмуляции кодировки КОИ-8 позволяет работать с указанными программами без загрузки дополнительного драйвера, Для включений режима применяете" F1-команда «К». При этом латинские и русские строчные буквы отображаются соответственно латинскими и русскими прописными буквами.

Отметим, что эмуляция относится только к выводу символов на экран и не обеспечивает ввод с клавиатуры кодов, значение, которых превышает 7FH.

Повторный ввод F1-команды «К» отключает эмуляцию.

Обслуживание управляющих кодов терминала компьютера Robotron-1715

Все большее число программ было взято с компьютера Robotron −1715, Все они используют в качестве управляющих кодов (очистка экрана, установка курсора и т. п.) коды, которые а большинстве своем отличаются от кодов, применяемых на «Орионе».

Применение F1 -команды «R» подключает внутреннюю подпрограмму, обслуживающую управляющие коды терминала компьютера Robotron-1715, что позволяет обойтись без загрузки дополнительного драйвера, как это делалось раньше.

Для отключения режима выполняется повторный ввод F1-команды «R».

Изменение формы курсора

Описываемая версия BIOS позволяет выбрать такую форму курсора, которая вам больше нравится. Каждый ввод F1-команды «U» заменяет форму курсора. Выбранная форма сохраняется до «холодной» загрузим ОС или очередного ввода команды.

Выход в СР/М по «горячему» старту

Очень часто при ознакомлении с новыми программами возникает ситуация, когда пользователь не знает, как вернуться в операционную систему. Обычно для зтих целей используется клавиша [F4] (или [УC]/[C]) однако в некоторых случаях и это не помогает.

Ввод F1-команды «G» позволяет завершить работу с программой без нажатия клавиши [Сброс].

Выход в МОНИТОР

F1 -команда «М» автоматически форматирует диск В: ORDOS и передает управление по стартовому адресу МОНИТОРа (0F800Н). Чтобы вернуться в СР/М, необходимо выполнить «холодную» загрузку системы.

Включение служебной строки

F1-команда «L» позволяет как включить, так и отключить служебную строку.

Служебная строка расположена в первой строке экрана и при включенном цветном режиме выделена цветом. Информация, выводимая в служебную строку, означает:

  • «CMD> — включен режим ввода F1-команд;
  • „COL“ — включен цветной режим;
  • „RBT“ —включен режим обслуживания кодов терминала компьютера; ЙоЫйгол-1715;
  • „КОИ“ — включена эмуляция кодировки КОИ-8;
  • „РУС“ — включен режим ввода русских букв;
  • „LAT“ — включен режим ввода латинских букв.

Информация о режимах выводится только в том случае» если служебная строка включена.

После «холодной» загрузки ОС включены цвет, служебная строка, режим ввода латинских букв,

ВЫВОД КУРСОРА НА ЭКРАН

В ранних версиях ОС при работе со многими СР/М программами курсор просто исчезал и появлялся на экране только в момент нажатия на клавишу. Естественно, такое свойство значительно усложняло работу с этими программами. В версиях СР/М для «Ориона-128», начиная с версии BIOS V2.60, подпрограмма вывода курсора на экран построена таким образом, что курсор присутствует на экране всегда. Правда, при работе с некоторыми программами он перестает мигать, но в любом случае показывает местоположение будущего символа. Отметим, что новый принцип получения курсора практически не снижает скорость вывода информации на экран,

ВВОД С КЛАВИАТУРЫ

Большинство программ в СР/М во время выполнения промежуточных действий опрашивают через BIOS клавиатуру. Это позволяет, не ожидая окончания обработки этих действий, вводить дополнительные команды или выполнять другие операции, связанные с вводом информации с клавиатуры. Для того чтобы вводимая информация не пропала и была в дальнейшем обработана, в BIOS организован специальный буфер для вводимых кодов. Ситуации, когда буфер переполняется, встречаются очень редко. Однако, если это все же произойдет, подпрограмма ввода символа с клавиатуры выдаст предупредительный звуковой сигнал и заблокирует ввод информации с клавиатуры. В этом случае Вам необходимо сделать небольшую паузу, пока программа, с которой Вы работаете, не обработает хотя бы часть символов из буфера, а затем опять продолжить ввод.

Переключение русского и латинского алфавитов осуществляется как с помощью клавиши [Рус/Лат], так и с помощью клавиши [СТР], Хотя эта и может показаться излишеством, но из-за особенностей построений МОНИТОР-2, работающего с клавиатурой MC7007t в некоторых СР/М-программах нажатие клавиши [СТР] — единственная возможность переключения алфавитов. К сожалению, это накладывает определенные ограничения на ее использование в программах. Для того, чтобы программа все же получила код клавиши [CTP], воспользуйтесь тем же способом, что и в случае о клавишей [F1], то есть войдите в режим ввода F1 -команд, нажав клавишу [F1], а затем нажмите клавишу [CTP].

ЧТЕНИЕ-ЗАПИСЬ НА ДИСКЕТУ

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

ДРАЙВЕР ПЕЧАТИ

Драйвер печати, встроенный в BIOS, поддерживает работу с принтером, осуществляющим прием данных в параллельном формате (Centronics, ИРПР, ИРПР-М). Вопрос подключения принтера подробно рассмотрен в [2].

Самый простой способ вывода информации на печатающее устройство — режим эхо-печати. Для его включения необходимо нажать клавиши [УС]/[Р] (нажатие клавиши [Р] при нажатой клавише [УС]). После этого вся информация, выводимая на экран, также будет выводиться и на принтер. Таким образом, можно распечатать директорий диска, текстовый файл или результаты работы любой программы, выводимые на экран. Для отключения режима повторно нажмите [УС]/[Р] или [F4].

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

РАБОТА С ДИСКОВОДАМИ

Описанный ранее контроллер обеспечивает возможность подключения до четырех дисководов. Однако, BIOS V3.00 позволяет работать только с тремя (А: — С:), За счет отказа от применений четвертого дисковода появилась возможность работы с квазидиском Е:, а также развитая структура внутренних F1-команд/

В BIOS хранится следующая информация о каждом дисководе:

  • число дорожек;
  • время перемещения головки дисковода.

Начальная установка этих параметров для каждого дисковода имеет вид:

  • А: 30 дорожек, время перемещения 30 мс;
  • B: 80 дорожек, время перемещения 30 мс;
  • С: 40 дорожек, время перемещения 30 мс.

Для изменения характеристик дисководов и генерации системы с новыми характеристиками используется программа «System Generator» (см. ниже).

РАБОТА С КВАЗИДИСКОМ

Расширив ОЗУ «Ориона-128» до 256 Кбайт, вы получите возможность работы с квазидиском. Квазидиск носит ИМИ Е:, под него используется расширенное ОЗУ второй и третьей страниц общим объемом 120 Кбайт, Работа с ним совершенно не отличается от работы с обычным дисководом.

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

Перед работой с квазидиском необходимо провести операцию инициализации. Это делается с помощью транзитной команды INITE (файл INITE.COM). При запуске программы без параметров будет выведена информация о ключах, указываемых в команде. Для инициализации диска E: используют ключ «F»:

A>INITE F

Ответьте «Y» на запрос подтверждений Ваших действий или «N» для отказа от проведения операции инициализации.

Кроме этого BIOS дает возможность назначить квазидиску имя А; и скопировать на него часть ОС СР/М, загружаемую при «горячем» старте системы. Дисковод, выбиравшийся под именем А: получит имя Е:. Что это дает? Операция «горячего» старта ОС выполняется гораздо быстрее, существенно ускоряется работа с пакетными файлами, облегчается работа программ, создающих файл $$$.SUB. При назначении квазидиску имени А: удобнее становится пользоваться запуском команд из графической оболочки ОС СР/М «Bridge Panels».

Для переназначении имен дисков и копирования части системы на квазидиск используют ключ «S» или «SF», если нужно провести еще и инициализацию. Обычно ключ «SF» применяется в самом начале работы. Если Вы вышли из ОС СР/М, а затем выполнили ее «холодную» загрузку, квазидиск опять будет выбираться под именем Е:. Чтобы получить доступ к информации, записанной на него ранее и переназначить имена дисков, используют команду «INITE» с ключом «S». Будьте внимательны! Указание ключа «F» приводит к пропаданию информации, записанной на квазидиске.

АВТОЗАПУСК ПРИ «ХОЛОДНОМ» СТАРТЕ

Если при начальной загрузке системы Вам приходится постоянно запускать некоторые программы (различные драйверы клавиатуры, экрана, дисководов, квазидиска и т. п.) либо выполнять одну и ту же последовательность команд СР/М, то проще всего занести их в командный файл с именем PROFILE.SUB и тогда они будут выполняться автоматически каждый раз при «холодном» старте системы.

В отличие от предыдущих версий BIOS, требующих, чтобы на дискете с файлом PROFILE.SUB находилась программа SUBMIT (файл SUBMIT.COM) и запрещающих заклеивание прорези защиты от записи дискеты, версия СР/М с BIOS V3.00 не имеет указанный ограничений.

Чтобы прервать выполнение командного файла, необходимо нажать любую клавишу.

Мы не будем подробно останавливаться на описании резидентных к транзитных команд ОС СР/М, так как журнал «Радио» уже уделял внимание этому вопросу [ 1]. Для подробного ознакомления с командами ОС СР/М можно воспользоваться литературой [3,4]. Кроме того, на заказанной Вами системной дискете, содержащей стандартный набор программ, имеется файл с описанием их применений. Уделим внимание лишь принципиальным различиям, а также программам, подробно не описанным в литературе.

ФОРМАТИРОВАНИЕ ДИСКЕТ

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

  • одностороннее/двустороннее форматирование;
  • форматирование с одинарной/двойной плотностью записи;
  • форматирование 40/80 дорожек;
  • перенос на дискету операционной системы;
  • проверку форматирования.

После форматирований каждая дорожка содержит 5 секторов размером 1024 байт каждый.

Синтаксис командной строки:

FORMAT d: [keys],

где d: — имя дисковода, на котором производится форматирование;

keys — ключи, определяющие параметры форматирования.

Каждый ключ предваряется знаком «/» (косая черта}. Между ключами допускается любое количество пробелов. Порядок расположения ключей в командной строке произвольный. В случае отсутствий ключа выполняются действия, обратные его указанию.

Допустимые ключи (в скобках указаны параметры, используемые при отсутствии данного ключа):

  • /1 — одностороннее (двустороннее) форматирование;
  • /0 — одинарная (двойная) плотность записи;
  • /4 — 40 (80) дорожек;
  • /NS — без переноса (с переносом) операционной системы;
  • /NV — без проверки (с проверкой) форматирования.

При неправильном задании ключа или при отсутствии имени диска на экран выводится справочная информация программы FORMAT.

Примеры использований ключей:

  • FORMAT В:/4/1 (40, SS, OD, Sys, Ver);
  • FORMAT A;/0/NS/NV< (80, DS,SD, NoSys, NoVer);
  • FORMAT B: (80, DS, DD, Sys, Ver).

Здесь 40 и 80 — 40 и 80 дорожек соответственно; SS и DS — одна и две стороны соответственно; SO и DP -одинарная и двойная плотность соответственно; Sys и NoSys — с переносом и без переноса системы соответственно; Ver и NoVer—с проверкой и без проверки форматирования соответственно.

После запуска программы FORMAT необходимо вставить в выбранный дисковод дискету, которую нужно отформатировать, и нажать клавишу [BK],

При проведении операции форматирования на экран выдается информация о текущей форматируемой дорожке дискеты (рис. 1). Символы, ПОЯВЛЯЮЩИЕСЯ в процессе форматирования, означают:

  • «F» — форматирование текущей дорожки;
  • «V»—проверка форматирования текущей дорожки;
  • «W» -—запись информации на текущую дорожку;
  • «.» — отформатированная дорожка ;
  • «S» — системная дорожка;
  • «I»—дорожка с информационным сектором;
  • «Е» — ошибка при проверке форматирования.

форматирование, проверка форматирования, запись информационного сектора и перенос системы осуществляются в едином цикле без повторных возвратов головки дисковода. Прервать форматирование можно нажатием клавиши [АР2] или [F4j ([УС]/[C]).

ПОСЛЕ окончания форматирования выдается запрос на форматирование следующей дискеты:

FORMAT ANOTHER? (Y/N)

Ответьте «Y» для форматирования очередной дискеты или «N» для возврата в операционную систему,

УСТАНОВКА СИСТЕМЫ НА ДРУГИЕ ДИСКЕТЫ

Дли настройки системы на характеристики дисководов и переноса системы на дискету служит программа «System Generator», находящаяся в файле SG.COM. После запуска программа выведет информацию об авторском праве, дату последней модификации характеристик, имя диска, на который будет записываться система, характеристики дисководов, указанные в данном файле SG.COM. Снизу будет выведена подсказка о клавишах, которыми можно пользоваться {рис.2}.

Вверху находятся четыре команды, одна из которых выделена инверсией. Перемещение инверсного указателя осуществляется с помощью клавиши [ТАБ], вызов команды — [ВК].

Список и описание команд:

  • «GENERATE» — записать систему на диск, имя которого задано в строке «DESTINATION DRIVE»;
  • «CHANGE» — изменить характеристики" Изменение параметров осуществляется клавишей [BK], переход к следующему параметру—[ТАБ]. Для возврата в командный режим используется клавиша [АР2];
  • «SAVE» — записать измененные параметры в файл SG.COM. Файл SG.COM записывается на текущий дисковод. Если на диске существует файл с таким именем, eго содержимое будет перезаписано. Перед выполнением команды «SAVE» рекомендуем указать дату модификации параметров в строка «MODIFICATION DATE».
  • «QUIT» — закончить работу с программой и вернуться в ОС СР/М. Кроме того, в СР/М можно вернуться в любой момент нажав клавишу [F4].

Генератор системы версии 1.3 позволяет задать характеристики для трех дисководов и записать систему на диск, имя которого указано в строке «DESTINATION DISK». Если ранее с помощью команды «INITE» было произведено переназначение имен (квазидиск получил имя А:, а дисковод выбиравшийся ранее как А: — имя Е:), то для того, чтобы записать систему на диск, выбиравшийся ранее под именем А:, необходимо указать его новое имя, то есть Е:.

Программа позволяет установить число дорожек и время перемещения головки дисковода.

Число дорожек — 40 или 80.

Время перемещения головки дисковода — 6,12,20 или 30 мст

Большинство дисководов работают вполне надежно при 6 мс (5305, 5311, 6313, 5323, «TEAC»), Однако для некоторых дисководов приходится эту постоянную увеличивать (5321 и Т. П.), Попробуйте подобрать оптимальное время перемещения головки для своих диско вводов. Используя программу «System Generator», это будет совсем несложно.

М, БРИДЖИДИ, Г. РОГОВ г. Москва

ЛИТЕРАТУРА

  1. Ахманой А., Рой Н., Скуряхин А. Пользователям о «Корвете», Операционная система и программное обеспечение. Радио, 1989, № 10, с. 39, № 12, с. 33.
  2. Рогов Г., Бриджиди М. «Орион-128» — настоящее и будущее. — Радио, 1993, № 4, стр. 19.
  3. Бриджиди М., Рогов Г. Операционная система CP/M 80 для ПРК «Орион-128». — Радиолюбитель, 1992, № 12, с. 12, 1993, № 1, с. 12, № 2, с. 10.
  4. Уайт М., Ангермейер Дж., Операционная система CP/M. М.: Радио и связь, 1986.