📂 Документ: orion128-soft-ordos5-love_clean.html


 

Операционная система OR DOS V5.0 Орион-128

Отличительные особенности версий V4.03 и V5.0

По журналу Радиолюбитель № 1, 1994 год

Стандарты ПО, адресов и портов

Стандарты Х2

А. КУНЧЕНКО, Д. КИСЕЛЕВ.

ОПЕРАЦИОННАЯ СИСТЕМА OR DOS V5.00 ДЛЯ ПРК "ОРИОН-128" - НАЧАЛО

ОБЩИЕ СВЕДЕНИЯ

Операционная система OR DOS V5.00 - результат модернизации описанной в журнале "Радио" авторской ДОС версии 2.4.

При этом сохранена программная совместимость с ранними версиями: не измелилось расположение ДОС в адресном пространстве, ее длина осталась неизменной. Модернизация ДОС велась, прежде всего, по пути максимального увеличения достоверности хранения файлов на квазидисках. Д ля этой цели усовершенствована работа подпрограмм записи файла на диск и чтения файла с диска. В оглавлении файла выделены два из трех свободных байта для хранения контрольной суммы. В результате этого добавился еще один код завершения подпрограммы чтения файла с диска - "плохой файл". В каких же случаях может нарушиться информация, хранимая в файле? Наиболее распространенной можно считать ситуацию, когда по какой-либо причине запущенная на выполнение программа теряет управление и начинает хаотично модифицировать содержимое квазидисков, или (в случае ROM-диска) наблюдается неправильное считывание из ППЗУ. В этом случае передачи управления испорченному файлу может привести к полной потере шкрормации на квазидисках, что исключается при использовании ДОС, предлагаемой вашему вниманию в данной статье. Вторым направлением модернизации является ввод механизма обработки пакетных файлов. Пакетный файл (текстовый файл, созданный любым текстовым редактором) содержит последовательность выполнения встроенных и внешних команд операционной системы и другие команды. Синтаксис и использование пакетных файлов будут рассмотрены ниже.

В OR DOS V5.00 заложена возможность работы с дополнительными RAM-дисками С: и D: при наличии дополнительных банков ОЗУ (соответственно 2-я и 3-я страницы). Однако при попытке выбора одного из RAM-дисков ДОС производит контроль физического наличия соответствующей страницы, поэтому при обращении к несуществующим дискам выбора не произойдет.

Рассмотрим процесс инициализации. После запуска ДОС производит контроль RAM-дисков на наличие в них информации. Для этого в соответствующей странице ОЗУ проверяются первые восемь байт RAM-диска и, если хотя бы в один из них записан код меньше 20Н, производится автоформатирование соответствующего диска. Такому контролю последовательно подвергаются диски В:, С: и D:. После этого производится поиск сначала на диске В:, затем на А: пакетного файла с именем SETUP.TX, в котором задана начальная установка среды: запуск драйверов и т.д. После его обработки, как и в ORDOS ранних версий, производится поиск и запуск файла с именем ЕХТ, причем он также может быть пакетным. Если файл ЕХТ не перехватывает управление, а возвращается в ДОС командой RET, то ДОС выведет на экран сообщение:

OR-DOS (R) V5.00 (С) 1992, 93 К&К, INC.

А>_

Мигающий курсор свидетельствует о том, что ожидается ввод команды. В табл.1 приведены машинные коды, а в табл.2 - контрольные суммы дампов ДОС (таблицы будут опубликованы в следующих номерах).

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

Набор встроенных команд по сравнению с ДОС более ранних версий не изменился, однако был несколько изменен их синтаксис и выдаваемые ими сообщения. Рассмотрим каждую из них подробнее. Синтаксис рассмотрим на примерах.

1. Форматирование диска. Предназначена для форматирования RAM-дисков:

B>F (ВК). После этого ДОС запросит подтверждения. Если Вы уверены, то нажмите (ВК), иначе - любую клавишу.

При попытке форматирования ROM-диска будет выдано сообщение READ ONLY (только чтение).

2. Вывод каталога диска. Наберите после промпта:

C>D (ВК). Каталог диска выводится в усеченном виде. Пример:

Операционная система Орион-128 Пример ОР ДОС V5.0

В одной строке выводится четыре имени, разделенных двоеточием.

3. Удаление файла. Формат команды: В>Е <FileName> (ВК).

Как и в случае форматирования диска, ДОС запросит подтверждения. При выполнении удаления возможны следующие сообщения ДОС.

NO FILE: <filcname> - нет файла с заданным именем; READ ONLY: <filename> - указанный файл имеет статус только чтение.

4. Переименование файла. Формат команды: B>R <new_name> <filename> IBK],

где <new_name> - новое имя. Возможные сообщения об ошибках:

NO FILE: <filename> - нет файла, который нужно переименовать; EXISTS: <new_name> - существует файл с именем, котороезада-но в команде как новое.

5. Запись блока ОЗУ на диск в виде файла. Формат команды: B>S <filcnamc> bcghcx.endhex [ВК],

где beghex - начальный шестнадцатиричный адрес блока; endhex - конечный шестнадцатиричный адрес блока. Возможные сообщения об ошибках:

EXISTS: <filename> - существует файл с заданным именем: DISK FULL: <filename> - нет места на диске.

6. Просмотр текстового файла. Формат команды: В>Т <filename> [ВК].

Чтобы временно приостановить вывод, нажмите любую клавишу. Возможное сообщение об ошибке: NO FILE: <filename> - нет файла с заданным именем.

7. Запуск файла на выполнение. Запустить на выполнение можно запускаемые и пакетные файлы. Формат:

B><filename> (ВК).

Возможные сообщения об ошибках:

NO FILE: <filename> - на диске нет файла с заданным именем; BAD LOAD: <filename> - файл разрушен на диске. При описании синтаксиса команд приняты сокращения: <filemame> - имя файла;

(ВК) - нажатие на клавишу "возврат каретки".

ПАКЕТНЫЕ ФАЙЛЫ

Пакетным файлом в системе считается файл, имеющий в имени символ "&" (по аналогии с "$" в случае с запускаемыми файлами). К пакетным относится и файл настройки операционной среды SETUP.ТХ, и все сказанное ниже в полной мере относится и к нему. Пакетные файлы могут быть созданы любым текстовым редактором и могут содержать набор внешних и внутренних команд ДОС, а также некоторые дополнительные команды управления дисплеем. К таким командам относятся команды очистки экрана и вывода текстовых сообщений на экран. Строка, начинающаяся символом '"", при выполнении пакетного файла интерпретируется подпрограммой обработки пакетного файла как текстовое сообщение: производится перевод курсора в первую позицию следующей строки, а затем вся строка выводится на экран. При этом, если сообщение содержит символ "#", его вывод вызывает очистку экрана (эквивалентно коду 1FH). Признаком окончания пакетного файла является либо символ "."на месте первого символа последней строки (эта строка игнорируется) , либо код 0FFH (если пакетный файл набран текстовым редактором, создающим массив в формате "Микрон", то последняя строка как раз и содержит код 0FFH, что является признаком конца текста).

Приведем пример пакетного файла: '#

'"ORION-128.2" *

A:TEST$ A:DI$

A:COPY$ A:SET_.TX B:SETUP.TX A: DCS

В данном случае приведен пример файла SETUP.TX, предназначенного для записи в ROM-диск. Рассмотрим действия, которые произведет ДОС при обработке данного файла. Первая строка содержит команду очистки экрана, вторая строка приводит к появлению на экране сообщения: "ORION-128.2" в верхнем левом углу экрана (курсор туда устанавливает код 1FH). Затем производится последовательный запуск программ тестирования TESTS и DI$ с диска А:. Затем с диска А: на В: будет скопирован текстовый файл SET_ТХ под

именем SETUP.TX. Это сделано для того, чтобы тестирование работы компьютера не производилось при последующих перезапусках системы: ДОС будет после инициализации находить первым файл SETUP.TX на диске В:, а он содержит минимальный набор команд установки среды. И, наконец, производится запуск графической оболочки DC$.

Приведем другой пример пакетного файла, в котором использованы встроенные команды ДОС, который может пригодиться при работе с ASSM$ в режиме автоматического присвоения имен оттранслированным программам (создаются файлы вида СОМn$, где n- номер от 1 до 9). Его запуск приведет к удалению (с запросом) всех таких файлов на диске В:

В:ЕСОМ1
B:E COM2
В:Е COM3
В:Е COM4
В:Е СОМ5
В:Е СОМ6
В:Е СОМ7
В:Е СОМ8
В:Е СОМ9

Запомните этот текстовый файл под именем ЕСОМ& и запустите, набрав следующее:

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

ПОДПРОГРАММЫ ДОС

В табл.3 приведена таблица стандартных подпрограмм ДОС, их входные и выходные параметры. Порядок вызова основных подпрограмм был подробно рассмотрен при описании ОС ORDOS версии 2.4 в журнале "Радио". В данной статье рассмотрим порядок обращения к добавившейся по сравнению с ранними версиями точкой входа обработки пакетного файла. Эта точка выведена по адресу 0BFB5H специально для использования графической оболочкой при запуске ракетного файла. Рассмотрим пример обращения на языке Ассемблера:

LX1 H.NAME ; в IIL - адрес начала имени файла

CALL SDMA ; установка указателя

CALL RFILE ; чтение файла с диска

CPI0FFH ; код завершения - "пакетный файл"

JZ PFILE ; если да - переход на обработку

Данная точка входа не является подпрограммой. После отработки производится переход на теплый старт ДОС.

УСТАНОВКА ДОС НА ПРК "ОРИОН-128"

ПЗУ, "зашитое" кодами табл.1, помещается на первое посадочное место ROM-диска. ДОС на диске (как и в предыдущих версиях) занимает два килобайта. Теперь о самом неприятном. Как уже было упомянуто выше, новая ДОС после чтения файла проверяет, чтобы контрольная сумма прочитанного массива в ОЗУ совпала с указанной в оглавлении файла (в ячейке 0DH оглавления должен быть записан младший байт контрольной суммы, а в ячейке ОЕН - старший; здесь указаны адреса в оглавлении). Таким образом, файлы, созданные ДОС ранних версий, будут признаны данной ДОС как "плохие". Поэтому потребуется доработка ROM-диска: необходимо перепрограммировать соответствующие ячейки, которые должны содержать контрольные суммы и произвести корректировку оглавления всех имеющихся файлов OR DOS. Для облегчения данной работы нами была специально разработана программа INST$ для подготовки файлов к работе с ДОС новой версии. Листинг программы на Ассемблере приведен ниже, а машинные коды - в табл.4.

Операционная система Орион-128 Пример ОР ДОС V5.0

Продолжение следует...

 

 

 

Наладка контроллера "Орион Софт" на 4 ре дисковода

НГМД Орион Софта

 

С CP/M-80 на ты - публикация Сафонова и Сугоняко  по журналу Радиолюбитель №1, 1994

 

Полезные и интересные статьи

На предыдущую страницу  На главную страницу  На следующую страницу