Орион-128/Радио 08-90/Операционная система ORDOS
Данный материал защищён авторскими правами!
Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей. Автор: В. СУГОНЯКО, В. САФРОНОВ |
ОПЕРАЦИОНАЯ СИСТЕМА "ОRDOS"
Итак, компьютер уже собран и отлажен. Диалог на уровне МОНИТОРа вам уже знаком. Такой уровень, в свое время, был предложен при общении с ПРК “Микро-80”, “Радио-86РК” и других компьютеров, выпускаемых нашей промышленностью: БК-0010, Микроша и др. Давайте посмотрим, что же представляет собой диалог пользователя с компьютером на этом уровне.
В программе МОНИТОР все директивы можно разделить на два типа:
- директивы загрузки/разгрузки
- директивы отладки.
В некоторых мониторах общее количество директив достигает полутора десятка. Если пользователь не относит себя к профессионалам и не испытывает необходимости копаться в “памяти” компьютера на уровне битов и байтов, то все общение сводится только к трем директивам: чтение программы с магнитной ленты в память компьютера — обычно “I”, запись программы на магнитную ленту —“О” и передача управления программе, находящейся в памяти компьютера — “G” или “J”. При этом, естественно, подразумевается, что пользователь должен все-таки хорошо ориентироваться в абсолютных адресах программ (ее начало и конец, да еще в шестнадцатиричном исчислении), следить за распределением памяти между одновременно работающими программами, запоминать адрес старта (или запуска) программы, адреса различных буферов и еще выполнять массу других функций “управляющего”. Такое положение дел наводит на мысль — а нельзя ли поручить все эти заботы самому компьютеру? Конечно, можно. Все эти операции могут произвести специальные управляющие программы — так называемые операционные системы (ОС). Именно они и выполняют функции “управляющего” над программными и аппаратными ресурсами компьютера и позволяют создать принципиально новую пользовательскую среду, поддерживая диалог с пользователем на уровне файлов.
Понятно, что при наличии такого “помощника” в компьютере, как операционная система, отпадает необходимость в программе МОНИТОР в том функциональном виде, в котором мы привыкли его видеть. Программа МОНИТОР должна выполнять функцию загрузчика операционной системы, а также содержать необходимые программы-драйверы, обслуживающие “железо” (аппаратные средства) компьютера. К такому взгляду на МОНИТОР мы еще не раз вернемся в будущем.
В настоящее время уже существует целый ряд операционных систем, которые с годами стали стандартом для того или иного типа процессора. Применительно к процессору К580 (I8080), таким стандартом является ОС СР/М-80. В краткой форме она вполне доступно описана в [1], а ее более подробное описание можно найти в [2]. Однако опыт эксплуатации СР/М на ПРК “Орион-128” в базовом варианте (как он опубликован в [3]), где “квазидиск” может иметь максимальный объем не более 60 Кбайт, показал, что для “серьезных дел” такой объем “тесноват” и без аппаратных добавлений — увеличения “квазидиска” или подключения накопителей на гибких магнитных дисках — говорить о серьезной работе в среде СР/М не приходится. Именно это и побудило авторов разработать свою операционную систему, доступную для понимания начинающими пользователями. Она учитывает архитектуру данного компьютера, занимает небольшой объем памяти, выполняет операции на уровне файлов и имеет приемственность в диалоге со стандартной ОС — с тем, чтобы в будущем пользовательские навыки пригодились при переходе к стандартной ОС СР/М.
Однако и для функционирования предлагаемой ОС (авторы назвали ее “ORDOS”) требуются аппаратные “добавки” в виде дополнительной ROM-платы. Мы будем называть ее ROM-диском. На этом диске хранится сама операционная система и часто используемые инструментальные (Бейсик, АССЕМБЛЕР, РЕДАКТОР и др.) средства, а также служебные (загрузчики, дополнительные знакогенераторы, эмуляторы, сменные драйверы дисплея и т. д.) программы. Для ОС ROM-диск является диском “А”. С диска “А” можно файлы только считывать. Вторая страница памяти компьютера интерпретируется как диск “В”, откуда файлы можно не только считывать, но и записывать. На плате ROM-диска ОС занимает объем в 2К байта, т. е. может разместиться в одной микросхеме К573РФ2. Еще одна микросхема ППЗУ необходима для размещения необходимого минимума загружаемых команд. О них мы поговорим позднее. Если пользователь испытывает затруднения в приобретении микросхем ППЗУ, то большинстве файлов, которые удобно и целесообразно держать на диске “А”, можно загружать с магнитофона на диск “В”. Конечно, это резко снизит оперативность работы (придется постоянно подгружать необходимые системные программы) и уменьшит также реальный объем диска “В” для пользовательских целей. Одним словом, рано или поздно без ROM-диска не обойтись, поэтому прервемся ненадолго, чтобы выяснить, что он из себя представляет.
ROM-ДИСК
Для ПРК «Орион» авторами разработано устройство, которое позволяет постоянно хранить в нем пакет самых необходимых программ и оперативно их загружать в ОЗУ для выполнения. При выключении питания программы сохраняются.
Аппаратно — это дополнительная плата, на которой установлено 8 микросхем К573РФ2 или К573РФ4. Она подключается к основной плате через разъем Х3, то есть обращение к ней происходит через порт DD54.
Данную плату с микросхемами ПЗУ мы будем рассматривать как эмулятор диска, а точнее как ROM-диск или ПЗУ-диск.
Принципиальная схема ПЗУ-диска приведена на рис.1, а печатная плата со стороны установки деталей, обратной стороны и рисунок размещения элементов на ней — соответственно на рис.2, а, б, в. Плата рассчитана на размещение восьми микросхем К573РФ2 или К573РФ4. На рис.2, в оба типа микросхем условно показаны одновременно. В первом случае ПЗУ-диск имеет емкость 16 Кбайт, а во втором — 64 Кбайт. Указанные микросхемы имеют разные типы корпусов — 24-выводный у К573РФ2 и 28-и выводный у К573РФ4, однако расположение выводов и их назначение почти совпадают. Если установить на плате 28-выводные панельки, то в них можно устанавливать как микросхемы К573РФ4, так и К573РФ2, причем в последнем случае микросхемы К573РФ2 следует устанавливать так, чтобы 1-я ножка микросхемы К573РФ2 соответствовала 3-й ножке микросхемы К573РФ4, как это показано на рис.2, в (пунктиром здесь обозначены микросхемы К573РФ4). Сплошными линиями показана установка перемычек для К573РФ2, пунктирными — К573РФ4. Для уменьшения коммутаций на плате, при замене одних типов микросхем другими использован мультиплексор DD1 — К555КП11 или К531КП11. Если вы собираетесь использовать на данной плате только микросхемы одного типа, корпус DD1 можно исключить, а контактные площадки микросхемы соединить дополнительными перемычками — для микросхем К573РФ2 следует соединить попарно выводы 2 и 4, 5 и 7, 11 и 9, а для К573РФ4 — выводы 3 и 4, 6 и 7, 10 и 9.
Плата допускает агрегатирование, то есть одновременное подключение к компьютеру несколько таких плат. Выбор платы осуществляется подачей уровня 0 на контакт В10 разъема X1. Если используется только одна плата, то контакт В10 следует соединить с общим проводом. При агрегатировании надо помнить об ограниченной нагрузочной способности порта DD54, особенно в упрощенном варианте — без мультиплексора DD1. А теперь вернемся к рассмотрению ОС ORDOS.
СТРУКТУРА ОС «ORDOS»
Как же устроена ОС? «ORDOS» состоит из нескольких частей (рис.3), точнее из трех, в каждой из которых четко определены их функции.
Первая — ССР (процессор консольных команд — по аналогии с СР/М) поддерживает диалог с пользователем, организовывает выполнение встроенных команд. При запуске прикладной программы ССР может быть удален (стерт) из памяти, однако после возвращения в ОС его необходимо восстановить, иначе некому будет поддерживать диалог с пользователем. Процедура восстановления (реинициализации) происходит автоматически. Каждый раз при возврате в ОС специальный «теплый» загрузчик считывает с ROM-диска только ССР и передает ему управление ОС. Принудительно это можно сделать, если нажать одновременно клавиши УС+С или F4.
Вторая часть ОС — BDOS (базовая дисковая операционная система). Это самая ответственная часть ОС, всегда резидентно находится в ОЗУ и ни при каких обстоятельствах не должна быть повреждена или затерта. Если все же это произошло, необходим полный перезапуск ОС, то есть «холодный» запуск. BDOS содержит набор программ-утилит, которые ведут всю работу с диском на уровне файлов. Пользовательские программы тоже могут воспользоваться этим набором программ-утилит, выполняя определенные соглашения, но об этом мы расскажем в будущем. После запуска ОС переустанавливает верхнюю границу ОЗУ пользователя на уровне BDOS, то есть блокирует себя от несанкционированного размещения в этой области ОЗУ каких-либо программ или данных.
Третья часть ОС — BIOS(базовая система ввода-вывода). Это набор программ, обслуживающих периферийные устройства, то есть «железо». Мы уже отмечали, что именно МОНИТОР и содержит подобный набор программ. Поэтому в качестве BIOS используется набор стандартных подпрограмм МОНИТОРа.
В программе МОНИТОР [4] введена специальная директива «R», которая запускает загрузчик первоначальной («холодной») загрузки ОС. Порядок ее ввода следующий:
=>R[BK]
Загрузчик переносит коды ОС из ROM-диска в ОЗУ пользователя по адресам ОВ800Н— OBFFFH и передает ей управление. После запуска ОС производит первоначальную установку своих служебных ячеек и флагов. На экран выводится сообщение:
ORDOS (С) VERSION 2.00 А>
Символ «А» (в третьей строке) указывает на то, что в данный момент текущим (рабочим) является диск «А». Угловая скобка «>» — признак (промпт) нахождения ОС в управляющем режиме и готовности к диалогу с пользователем. Рядом с Промптом должен мигать курсор. Если Промпт с мигающим курсором все же не появился; несмотря на то, что на экран выведено наименование ОС, нажмите кнопку «СБРОС» и повторите директиву R", но клавишу ВК отпускать не спешите, задержите ее нажатой на 1—2 секунды. Необходимость перезапуска может возникать в некоторых экземплярах компьютеров при первом запуске ОС, когда еще не проведена операция форматирования (инициализации) диска (второй страницы памяти) или нарушена файловая структура при сбое в квазидиске. Предложенный прием блокирует защитные механизмы ОС. Подобным образом можно запустить ОС и при отсутствии второй страницы памяти.
Прежде чем рассматривать директивы, разберемся с процедурой изменения имени текущего диска — ведь у нас их два. Это делается несложно:
А>В:[ВК] В>
После завершения ввода (нажатия клавиши ВК) ОС на следующей строке выведет уже новое имя диска и рядом Промпт (смотри вторую строку примера). При таком формате переключения диска сразу же после завершения ввода будет автоматически происходить и вывод каталога диска, на который мы переключились (если там уже хранятся файлы).
Изменить имя текущего диска можно и попутно с выполнением какой-либо команды. При этом необходимо твердо придерживаться следующего правила: имя диска вводят без пробела после Промпта, затем вводят символ «:», далее тоже без пробела символ команды. Остаток строки вводится согласно синтаксису команды.
А>В:Е ТЕХТ[ВК] В> КОМАНДЫ ОС “ORDOS”
ОС «ORDOS» имеет два типа команд — встроенные и транзитные или загружаемые.
Познакомимся с встроенными командами ОС. Часть их еще называют резидентными, потому что они являются частью ОС и хранятся вместе с ней в той же области оперативной памяти.
Перечень команд ОС «ORDOS» приведен в табл. 1.
ТАБЛИЦА 1.
- F(ORMAT) — ПОДГОТОВКА («ФОРМАТИРОВАНИЕ»)"КВАЗИДИСКА"
- D(IR) — ВЫВОД КАТАЛОГА ДИСКА НА ЭКРАН ДИСПЛЕЯ
- L(OAD) — ЧТЕНИЕ ФАЙЛА ИЗ ДИСКА В ПАМЯТЬ КОМПЬЮТЕРА
- S(AVE> — ЗАПИСЬ УЧАСТКА ПАМЯТИ В КАЧЕСТВЕ ФАЙЛА НА ДИСК
- R(EN) — ПЕРЕИМЕНОВАНИЕ ФАЙЛА
- E(RA) — УДАЛЕНИЕ ФАЙЛА, ХРАНЯЩЕГОСЯ НА ДИСКЕ
- Т(УРЕ) — ПРОСМОТР ТЕКСТОВЫХ ФАЙЛОВ
Как и в МОНИТОРе, команды ОС однобуквенные и вводятся без пробела, сразу же после угловой скобки (промпта). Затем можно ввести необязательный пробел и далее — имя (имена) файла, другие реквизиты. Завершается ввод нажатием клавиши ВК. Рассмотрим более подробно синтаксис и работу встроенных команд.
Команда «F» — форматирование или инициализация (подготовка) диска (кроме диска «А») к работе. Эта директива выполняется самой первой и только один раз — после включения компьютера и первой «холодной» загрузки ОС. Если попытаться вывести оглавление диска «В» до форматирования, то на экране будет появляться хаотическая информация.
A>B:F[BK] Да?[ВК]
Мы надеемся, читателю уже понятен смысл и порядок ввода команды. Напомним, что предварительно мы устанавливаем текущим диск «В» (именно его мы будем форматировать), а затем выполняем команду «F». В ответ ОС выведет запрос на дополнительное подтверждение ваших намерений — «Да? [ВК]». В ответ необходимо еще раз нажать клавишу ВК, если вы действительно намерены инициализировать текущий диск. Такие условности необходимы потому, что если команда «F» будет выполнена при наличии информации на диске, то все файлы будут уничтожены. Физически информация на диске не стирается (в первую ячейку диска «В» заносится значение «FF»), но на уровне ОС она становится недоступной. Мы надеемся, что вы не будете пытаться форматировать диск «А», который содержит ППЗУ и допускает запись только с помощью специального программатора. Если такой казус все же произойдет, ОС вас об этом предупредит. Команда «D» — (DIR) — наиболее часто используемая команда для вывода на экран данных о файлах, содержащихся на текущем диске.
A>D[BK]
Команда «DIR» будет выполняться и без ввода символа «D», а просто нажатием клавиши ВК. Это сделано для упрощения диалога и повышения оперативности в работе. Напомним, директива «D» выполняется автоматически при переименовании текущего диска. Посмотрим примерную структуру вывода оглавления.
A>D[BK] (ИЛИ А>[ВК]) СН$ B000 1216/04С0Н СНМ$ В000 688/02В0Н M128$ В000 1744/06D0H ORD.HLP 1000 1024/07FFH
Что же представляют собой эти символы и цифры. Рассмотрим для примера первую строку. «СН$» — это имя файла. Оно может содержать не более восьми любых символов, за исключением управляющих (меньше 20Н), пробела и «$» ($). Имя файла не может повторяться на одном и том же диске. Символ «$» указывает на то, что данный файл самозапускаемый, то есть после считывания его с диска в ОЗУ директивой «LOAD» ОС тут же передаст ему управление. Такой файл еще называется командным.
Следует иметь в виду, что символ «$» не является составной частью имени файла (но входит в количество восьми) и в индефикации (или поиске) не участвует. Поэтому имена «СН$» и «CH» для ОС при поиске равнозначны.
Цифра, идущая за именем файла (В000Н),— начальный адрес размещения файла в ОЗУ при считывании его с диска. Этот же адрес является стартовым при наличии признака «$» (самозапуска). Это означает, что управление будет передано на первую ячейку считанного файла, то есть по адресу 0В000Н.
Далее «1216/04С0Н» — это длина (размер) файла в байтах. Первая цифра приведена в десятичном исчислении, а вторая — в шестнадцатиричном.
Если в имени файла отсутствует признак самозапуска ($), то ОС только считывает такой файл с диска в ОЗУ и возвращается в режим диалога с пользователем. К примеру, это может быть дополнительный знакогенератор, блок данных или какие-либо другие файлы.
Команда «L» — считывание файла с диска в ОЗУ. Как считывается файл и как ОС реагирует на признак ($) файла мы уже рассмотрели. Необходимо только добавить, что вместо символа «L» можно вводить пробел. Допустимость такой подмены повышает оперативность работы.
A>L СH[ВК] или А> СН[ВК]
Как видно из примера, символ «$» (если он присутствует в имени файла) можно для упрощения не вводить. Команда «S» — запись содержимого оперативной памяти на диск в виде файла.
A>SMICRO 0,FFF [BK]
Рассмотрим синтаксис команды. После имени команды (S) и необязательного пробела, вводим имя файла не более восьми символов (остальные ОС игнорирует), далее обязательный пробел и — начальный адрес, через запятую конечный адрес того участка памяти, который мы хотим сохранить на диске в виде файла. Не значащиеся нули можно опускать. Команда «S» не проверяет адреса на корректность (какой из них должен быть больше). За этим должен следить пользователь. Но если такая некорректность все же допущена, катастрофы не произойдет. Просто ОС попытается создать огромный файл, который заведомо не уместится на диске и будет выведено сообщение об ошибке.
С помощью команды «S» удобно переносить «старые» программы (например от «Радио-86РК», если они выполняются на «Орионе») на диск в виде файлов. Напомним, что если это программы в кодах и после считывания должны запускаться на выполнение -(например, АССЕМБЛЕР/РЕДАКТОР «МИКРОН», игры и др. программы), необходимо в конце имени файла добавить признак запуска — символ «$».
В заключение рассмотрения команды «S» можно дать маленький совет: чтобы более экономно расходовать объем диска — в конечном адресе сохраняемого участка памяти, в качестве последнего символа следует вводить не «ноль» (если только в этом нет крайней необходимости), а значение на единицу меньше — «F» (вместо 1000—0FFF или 350—34F), то есть не нужно стремиться к округлению адреса. Такой прием сохранит вам лишних 16 ячеек в диске на каждом файле.
Команда «R» — переименование имени файла.
А>R BRU$CH [BK]
Как видно из примера, первым вводится новое имя файла, а затем старое имя (в старом имени признак самозапуска ($) можно опускать), то есть имя, которое необходимо изменить. Выполнение команды происходит по нажатию клавиши — ВК.
Команда «Е» — удаление файла из диска.
А>Е СH[ВК] Да? [ВК]
После нажатия клавиши ВК ОС выведет запрос на дополнительное подтверждение выполнения данной команды — «Да? [ВК]» (также как и в команде «F»). Если пользователь действительно хочет уничтожить файл, необходимо подтвердить это повторным нажатием клавиши ВК, в противном случае следует нажать любую другую клавишу. Помните, что восстановить уничтоженные командой «Е» файлы уже невозможно никакими средствами, поэтому не стоит торопиться при работе с этой директивой.
Команда «Т» — просмотр содержимого текстовых файлов на экране дисплея. Команда удобна тем, что нет необходимости загружать редактор для просмотра файла. Однако этой командой нельзя просматривать файлы, содержащие шестнадцатиричные коды. В этом случае на экран будет выводиться непредсказуемая информация.
А>Т ORD.HLP[ВК]
Если текстовый файл больше одной страницы экрана и вывод необходимо временно остановить, нажмите любую символьную клавишу. Чтобы продолжить вывод, отпустите клавишу; чтобы прервать работу директивы (до окончания просмотра всего файла), нажмите клавишу F4.
ЗАГРУЖАЕМЫЕ КОМАНДЫ
В качестве загружаемых команд используются командные файлы (мы уже говорили о них выше), т. е. программы, выполняющие служебные функции. Какие же это функции?
Например, мы не должны забывать, что у нас в качестве диска “В” используется электронная память, в которой информация будет сохраняться до тех пор, пока включено питание. Поэтому прежде чем выключить компьютер, диск необходимо “разгрузить”, т. е. его содержимое перенести в память не теряющую информацию при выключении питания. В нашем случае это магнитная лента. Подобная проблема будет возникать у пользователя и при первичной загрузке диска. Всю эту работу выполняет программа — загрузчик файлов “СН$” — CHANGER. Эту программу можем считать как одну из загружаемых команд, которая необходима нам для вполне определенных целей.
Рассмотрим второй пример: резидентный МОНИТОР компьютера, имеет всего лишь несколько директив. Этот минимум необходим для запуска и наладки компьютера при его изготовлении. Конечно, с таким МОНИТОРОМ трудно работать. Чтобы устранить эту проблему, пользователь может иметь загружаемый МОНИТОР, в котором может находиться расширенный набор отладочных функций. Мы можем присвоить ему имя (например “М128$”) и хранить его как обычный файл.
Примеров использования загружаемых команд можно привести много, и можно предположить, что они будут определяться кругом интересов пользователя.
При умении программировать на языке АССЕМБЛЕР или в машинных кодах пользователь может сам создавать свои команды, хранить их на диске “А” или магнитной ленте в виде библиотеки и по мере необходимости загружать их на диск “В” по своему усмотрению.
СООБЩЕНИЯ ОБ ОШИБКАХ
В процессе диалога и выполнения команд ОС “ORDOS” постоянно контролирует действия пользователя и при ошибочных или некорректных вводах выводит сообщение об ошибке. На начальном этапе освоения (чаще всего) и при приобретении навыков в работе ОС может выводить символ “?” после завершения ввода строки, а затем опять возвращаться в режим ожидания ввода. Это говорит о том, что вы нарушили синтаксис при формировании командной строки, а точнее ввели несуществующую команду — пропустили обязательный пробел или поставили его там, где это недопустимо, ввели некорректное шестнадцатиричное число и т. п. В этом случае необходимо повторно ввести командную строку и обратить особое внимание на правильность своих действий.
Помимо сообщения о синтаксической ошибке, ОС выводит еще четыре сообщения при работе с файлами:
- “нет файла:”,
- “повторный файл:”,
- “только чтение:”,
- “мало диска:”.
Первое сообщение — на текущем диске нет файла с именем, которое указал пользователь, а второе — при попытке записать новый файл с именем, уже имеющимся на текущем диске.
И, наконец, последнее сообщение — “мало диска:”. ОС выводит его при попытке записать на диск файл по размерам больше, чем там осталось свободного места.
Читатель, видимо, заметил, что в конце каждого сообщения стоит двоеточие, после которого ОС выводит имя файла, операция с которым привела к ошибке.
В табл.2 приведены коды операционной системы “ORDOS”.
Контрольные суммы по блокам — в табл. 3.
ТАБЛИЦА 3
0000 - 00FF CF55 0100 - 01FF 1B5C 0200 - 02FF CE54 0300 - 03FF D963 0400 - 04FF 9765 0500 - 05FF В05А 0600 - 06FF B6EF 0700 - 07FF 9302
Что можно посоветовать при установке ОС “ORDOS” на ПРК “Орион-128”.
Запрограммируйте кодами ОС микросхему К573РФ2(5) и установите ее по посадочному месту №1, т. е. с выборкой по адресу 0000—07FFH. Посадочные места можно определить, если ряд значений (для К573РФ2): 00Н, 08Н, 10Н, 18Н, 20Н, 28Н, З0Н, 38Н выводить по адресу 0F502H. Нулевое значение на 18-й или 20-й ножке микросхемы (панельки) будет указывать на то, что именно эта микросхема в настоящий момент выбрана. Посадочные места 1—8 (в соответствии с приведенными значениями) необходимо обозначить на плате. Это позволит легко ориентироваться при установке микросхем.
Последний совет самый неприятный. В опубликованной прежде программе МОНИТОР необходимо исправить два байта. По адресу 0FB95H необходимо записать код 0В8Н, а по адресу 0FBA8H — 08Н. Эти изменения относятся к директиве “R”. Связано это с тем, что за время, прошедшее с момента публикации МОНИТОРа, авторы значительно усовершенствовали операционную систему и поэтому параметры загрузки изменились. Если у пользователя нет возможности оперативно перепрограммировать ППЗУ МОНИТОРа, то можно с помощью директивы “М” ввести небольшую программу внешнего загрузчика, коды которого приведены в табл. 4.
ТАБЛИЦА 4
0000 ЗЕ 9В 32 03 F5 21 FF 07 11 FF BF 22 01 F5 ЗА 00 0010 F5 12 1В 2В 7С BS C2 ИВ 00 СЗ FD BF 00 00 00 00
Программу загрузчика можно хранить на ленте. Управление загрузчику передают директивой “G”, т. е. “G[BK]”. Загрузчик используется в работе только один раз — при первой, “холодной” загрузке (чтения из ROM-диска в память компьютера) операционной системы. В дальнейшем ОС сама реинициализирует себя в процессе работы. Если вы нажали кнопку “сброс”, то вернуться в ОС можно директивой “Z”.
Естественно, что раскрыть все особенности операционной системы в короткой журнальной статье не представляется возможным. Поэтому по мере дальнейших публикаций авторы будут рассказывать о дополнительных возможностях и приемах работы с ОС.
В. СУГОНЯКО, В. САФРОНОВ
Московская обл.
ЛИТЕРАТУРА
- А. Ахманов, Н. Рой, А. Скурихин. Пользователям о “Корвете”.— Радио, 1989, № 10, с. 39.
- М. Уэйт, Дж. Ангермейер. Операционная система СР/М.— М.: Наука, 1988.
- В. Сугоняко, В. Сафронов, К. Коненков. Персональный радиолюбительский компьютер “Орион-128”.— Радио, 1990, № 1, с. 37.
Отсканировано с журнала Радио №8 1990 г.
Отредактировано Лесных. Ю. 2001 г.