📂 Документ: orion128-soft-ordos-ordos24_clean.html


 

OR DOS V2.4, Орион-128, работа в OR DOS, операционная система

OR DOS 2.4 для Ориона 128 для работы с Ром Диском

26/02/2022 Допилина Виталием из Автрахани, и полностью протестирована ORDOS 4.16. Которая работает на Орион Восточный Экспресс 512 с 512 к памяти и 1024!!! -   16 дисков при наличии 1024 к,   и 8 дисков при наличии 512к. Скачать можно здесь...

ОР ДОС V2.0 сборка РОМ Диска

Работа с ОР ДОС V 4.03

ORDOS занимает в Ром Диске объем 2кбт (первая микросхема), вместо нее можно ставить Монитор ЕХТ (В. Чистякова), но это уже другая история.

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

ORDOS4 - Описание программиста

Внешние программы и команды Ор Дос... расширяем сервис Ор ДОС

Операционная система OR DOS V2.4

Была Опубликована в журнале Радио № 7 1991 год

ОрДос V2.4 Орион 128

Ордос 2.4

С момента публикации перового варианта операционной системы OR DOS версии 2.00 прошел уже год. За это время авторы ее усовершенствовали, исправили ошибки и предлагают читателям новую версию - 2.4 (табл. 1). Помимо этого, нам хотелось бы рассказать о принципе расширения функций ORDOS (EXTENDED - система) и системных функциях операционной системы.

Аппаратно, РОМ ДИСК - это дополнительная плата подключаемая к порту F500

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

Среди пакетных файлов есть <особые> - выполняемые при запуске и инициализации операционной системы. При включении компьютера или реинициализации операционная система просматривает каталог диска и, если встречает пакетный <особый> файл с зарезервированным именем, выполняет его, прежде чем вступить в диалог с пользователем. Выполнение пакетных файлов не ограничивается только моментом Инициализации системы. Пользователь может создать пакетный файл для каждого случая, в котором приходится многократно вводить с клавиатуры одни и те же функции и команды. Таким приемом можно автоматизировать процесс управления компьютером.

В качестве механизма выполнения пакетных файлов в oперационной системе СР/М-80 применяется специальная внешняя команда SUBMIT, для которой создается текстовый файл с перечнем необходимых команд для выполнения. В ОС MS DOS этот механизм уже вмонтирован в систему, поэтому достаточно создать только текстовый файл и присвоить ему зарезервированное имя AUTOEXEC. ВАТ, чтобы операционная система могла его опознать.

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128 дампы скачать Версия для печати

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128 дампы скачать Версия для печати

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

Теперь вернемся к OR DOS. Все сказанное ниже относится к операционной системе версии 2.4, которую мы публикуем ниже, с программой МОНИТОР-2.

Наличие квазидиска в качестве внешней памяти накладывает определенные ограничения на механизм выполнения пакетных файлов, т. к. в момент включения компьютера и инициализации операционной системы ORDOS, пакетный файл в квазидиске еще отсутствует. Небольшие размеры ORDOS не позволяют расположить этот механизм в теле операционной системы, как это сделано в MS DOS. Чтобы найти компромисс, авторы вмонтировали в ORDOS только систему поиска и запуска программы с <особым> именем.

Рассмотрим более подробно последовательность действий ОС ORDOS с момента включения компьютера.

Загрузчик программы МОНИТОР-2 считывает с ROM-диска первые 2 К его содержимого и размещает их в адресах 0В300Н - 0BFFFH, после чего передает управление по адресу 0BFFDH.

ОС ORDOS содержит внутри себя еще два загрузчика: <холодный> и <теплый>. <Холодный> загрузчик (назван условно) проводит первичную инициализацию операционной системы ORDOS после загрузки и формирует каналы управления. До следующего перезапуска (нажатия клавиши <Сброс>) операционная система к <холодному> загрузчику больше не обращается.

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

Оба загрузчика по окончании работы передают управление процессору команд, который начинает свою работу с поиска на диске В файла с именем ЕХТ (от слова EXTENTION - расширение). Если поиск происходит сразу после включения компьютера и диск В еще не форматирован или вовсе отсутствует, в некоторых случаях возможно <зависание> системы. Чтобы блокировать эту ситуацию или же просто не допустить поиск файла ЕХТ при запуске OR DOS, следует удерживать л обую символьную клавишу перед отпусканием клавиши <Сброс>.

Прежде чем рассматривать достоинства автоматического поиска и выполнения файла ЕХТ (этот механизм мы будем условно называть EXTENDED - система, т. е. система расширения), оговорим некоторые обязательные начальные условия.

- ORDOS считывает ЕХТ-файл (файл с именем <ЕХТ>) по тем же правилам, что и директива <LOAD>. Этот файл должен находиться на диске В. Если необходимо, чтобы ЕХТ-файлу было передано управление, добавьте в конце имени символ (ЕХТ).

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128

таблица 2

23. 0bfb2h зарезервировано

24. 0bfb3h зарезервировано

23. 0bfb8h mxdsk - конеч.адрес программ.на диске

22. 0bfbbh ver - номер версия ос "ordos"

21. 0bfbeh adrp - изменение адреса "посадки" файла

20. 0bfc1h rmax - чтение максим. размера диска

19. 0bfc4h umax - запись максим.размера диска

18. 0bfc7h atfm - чтение атрибутов файла

17. 0bfcah watf - запись адресов <н/к> блока озу

16. 0bfcdh atf - чтение адресов размещения файла

13. 0bfd0h sdma - запись н/адреса буфера имени файла

14. 0bfd3h ldma - чтение н/адреса буфера имени файла 13. 0bfd6h wnd - определение текущего диска

12. 0bfd9h rnd - чтение имени текущего диска

11. 0bfdch rdisk - чтение байта из диска

10. 0bfdfh wdisk - запись байта в диск

9. 0bfe2h stop - запись стол-слова в диск

8. 0bfe3h pscf - поиск файла в диске

7. 0bfe8h dirm - вывод каталога диска в буфер

6. 0bfebh renum - пл. переименования файла

5. 0bfeeh eras - пл. уничтожения файла

4. 0bff1h ofill - открыть последовательный файл

3. 0bff4h cfill - закрыть последовательный файл

2. 0bff7h wfile - пп.записи файла на диск

1. 0bffah rfile - пл.чтения -"- из -"-

0. 0bffdh starti db 0c3h вход в ос "ordos"

0bffeh stadr dw address адрес перехода

В этом случае файл должен заканчиваться командой RET (Ассембл.) и не нарушать структуру стека. После выполнения (или только загрузки) ЕХТ-файла управление будет возвращено ORDOS и на экране появятся атрибуты диалога с пользователем.

- ЕХТ-файл может <затирать> процессор команд, однако для этого он обязательно должен быть самозапускаемым, т. е. принимать управление и поддерживать диалог с пользователем (если это необходимо).

Самый простой пример применения EXTENDED-систе-мы - это автоматическая загрузка нового знакогенератора, учитывающего, например, национальные особенности языка. Для этого файлу с таким знакогенератором присваивают имя EXT. Напомним, что знакогенератор в ОЗУ размещается с адреса 0F000H и имеет размер - три блока, т. е. до адреса 0F2FFH, поэтому необходимо проследить, чтобы был установлен соответствующий адрес старта (<посадки>) в реквизитах файла. Теперь, при каждом перезапуске системы, внутренний знакогенератор будет замещаться новым из файла EXT.

Более сложный пример использования EXTENDED системы - выполнение функции PRINT-SCREEN, т. е. <распечатки> содержимого экрана на принтере. Следует только иметь в виду, что это будет графическая копия, а не символьная.

Как это можно сделать? Программе, которая будет распечатывать или сохранять в виде файла на диске В изображение экрана, присваивают имя ЕХТ$. Затем запускают программу, копию экрана (допустим это игра) которой необходимо зафиксировать. В выбранный сюжетный момент нажимают клавишу <Сброс>. Выполнение программы при этом прервете ч, но на экране сохранится необходимая фаза изображения. После сброса затем, естественчо, начнется инициализация ORDOS и EXTENDED - система загрузит и передаст управление файлу ЕХТц который и будет выводить информацию на печать, или создаст файл на диске В. По окончанию работы управление операционной системе необходимо возвратить командой RET, т. к. в стеке уже хранится адрес возврата. Если возвращаться в ОС по команде безусловного перехода (JMP по адресу старта ORDOS), операционная система не сможет выйти из цикла вызова ЕХТ-файла.

Еще более сложное применение EXTENDED-системы - это подмена ССР. т. е. процессора команд. Вместо него можно автоматически загружать, к примеру, SCREEN - COMMANDER (по примеру NORTON COMMANDER) - оболочку операционной системы, в которой вместо директив используется удобные меню и окна.

EXTENDED - система, созданная авторами в ORDOS, позволяет выполнять и BATCH - файлы (пакетные файлы), однако эта возможность реализуется дополнительной специальной программой-интерпретатором - внешней командой операционной системы. Рассмотрение этой программы выходит за рамки данной публикации.

СИСТЕМНЫЕ ФУНКЦИИ ОС ORDOS

В одной из предыдущих статей [3] мы рассказывали о структуре операционной системы ORDOS. Напомним кратко. ORDOS состоит из трех составных частей: ССР - командный процессор, В DOS - базовая дисковая операционная система и BIOS - базовая система ввода-вывода, в качестве которой используется резидентный МОНИТОР.

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

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

Первая группа - функции, оперирующие на уровне файлов; это самые мощные подпрограммы ORDOS, собственно директивы или резидентные команды. К этой группе относятся функции с номерами 1-8. Прежде чем вызывать на выполнение эти функции, необходимо выполнить ряд подготовительных операции тем собственно и занимается вторая группа функций) или установок. К примеру: установить текущий диск, указать, по какому адресу находится имя файла, или определить адреса той области памяти, которую пользователь предполагает записать в виде файла на диск и т. д. К подготовительным относятся функции с номерами 13, 15, 17.

Третья группа - функции 9, 10, 11, 19 и 21 - выполняет ряд служебных операций. Это они выполняют операции с диском на уровне байта, а также другие служебные функции.

И последняя группа функций: 12, 14, 16, 18, 20, 22, 23. Они необходимы для получения информации о состоянии диска, положения указателей, адресов.

Рассмотрим предварительно две установочные функции: установка диска (13) и установка начального адреса буфера имени файла (15). Об остальных функциях этой группы расскажем позднее.


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

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

Вернемся к функциям, работающим с файлами (функция 1).

Файл в ОЗУ размещается начиная с адреса <посадки>, который хранится в оглавлении. Самозапуск эта функция не производит.

Перед вызовом функции 2 необходимо занести в служебные ячейки ORDOS информацию о начальном и конечном адресах массива ОЗУ, который предполагается записать на диск в виде файла. Это выполняет функция 17.

Функцию 4 используют в тех случаях, когда на момент создания файла невозможно определить его размер, а содержимое накапливается по мере работы другой программы. Например, можно в программе пользователя вывод информации на дисплей заменить на накопление её в последовательном файле. Вызов функции первый раз производит от
Имя файла может содержать не более восьми символов. В конце используется пробел или возврат каретки.

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

Вернемся к функциям, работающим с файлами (функция 1).

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128 дампы скачать Версия для печати

Файл в ОЗУ размещается начиная с адреса <посадки>, который хранится в оглавлении. Самозапуск эта функция не производит.

Перед вызовом функции 2 необходимо занести в служебные ячейки ORDOS информацию о начальном и конечном адресах массива ОЗУ, который предполагается записать на диск в виде файла. Это выполняет функция 17.

Функцию 4 используют в тех случаях, когда на момент создания файла невозможно определить его размер, а содержимое накапливается по мере работы другой программы. Например, можно в программе пользователя вывод информации на дисплей заменить на накопление её в последовательном файле. Вызов функции первый раз производит отАдрес буфера, в котором будет размещаться каталог диска, должен содержать ноль в качестве младшего символа. Например: 1000Н, 7020Н, 9880Н и т. д. Функция 7 переписывает оглавление каждого файла в буфер, не изменяя его структуру.

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

Функция 19 позволяет ограничить максимальный размер диска В. Один из примеров применения функции - ограничение объема диска при работе компьютера в цветном режиме. В этом случае устанавливается максимальный адрес - 0BFFFH.

Функция 21 выполняется только с диском В.

Функции 12, 14, 16, 18, 20, 22, 23 - информационные.

Входы функций 24 и 25 зарезервированы.

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

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128 дампы скачать Версия для печати

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

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128 дампы скачать

ТАБЛИЦА 3

0 - 7 - ИМЯ ФАЙЛА. МОЖЕТ СОДЕРЖАТЬ НЕ БОЛЕЕ 8 СИМВОЛОВ. ЕСЛИ ИМЯ СОДЕРЖИТ МЕНЬШЕ СИМВОЛОВ, СВОБОДНЫЕ ЯЧЕИКИ ЗАПОЛНЯЮТСЯ ПРОБЕЛАМИ.

8 - 9 - НАЧАЛЬНЫЙ АДРЕС РАЗМЕЩЕНИЯ ПРОГРАММЫ ПРИ

СЧИТЫВАНИИ ЕЕ ИЗ ДИСКА В ОЗУ - АДРЕС "ПОСАДКИ".

А - В - РАЗМЕР ФАЙЛА. В ЭТОТ ПАРАМЕТР ОГЛАВЛЕНИЕ ФАЙЛА (16 БАЙТ) НЕ ВХОДИТ.

С - БАЙТ ФЛАГОВ. В "ORDOS" V2. X ИСПОЛЬЗУЕТСЯ

ТОЛЬКО БИТ D7. СОСТОЯНИЕ "1" УКАЗЫВАЕТ НА ТО, ЧТО ФАЙЛ ЗАЩИЩЕН ОТ УНИЧТОЖЕНИЯ. ОСТАЛЬНЫЕ БИТЫ ЗАРЕЗЕРВИРОВАНЫ ДЛЯ РАСШИРЕНИЯ. ИЗМЕНЕНИЕ СОСТОЯНИЯ БИТА D7 ПРОИЗВОДЯТ ВНЕШНИЕ ЗАГРУЖАЕМЫЕ ДИРЕКТИВЫ ОПЕРАЦИОННОЙ СИСТЕМЫ.  Например программой STAT$ из пакета ОР ДОС

БИТ D7 - бит защиты от стирания - это адрес 0C заголовка функция R/O или R/W , бит 7=1 скрытый бит 0=1 этого же адреса 0C.   Об этом на примере приведем пример.

D - F - СЛУЖЕБНЫЕ ЯЧЕЙКИ СИСТЕМЫ.

 

ОрДос V2.4 Орион 128 OR DOS2.4 - Орион -128 дампы скачать

Чтобы легче понять структуру файла (табл. 4), представим ее в виде дампа памяти. В дампе каждая строка начинается с адреса, последний символ которого имеет нулевое значение. Аналогично и в операционной системе ORDOS:

оглавление файла всегда начинается с адреса, кратного 16. Если предыдущий файл не имел кратную длину, ORDOS его округляет. Оглавление следующего файла будет всегда начинаться с адреса, кратного 16. Оглавление следующего файла будет всегда размещаться как бы на следующей строке. Если взять за точку отсчета начальный адрес <тела> файла (0010Н), а он на 16 (ЮН) ячеек больше, чем начальный адрес оглавления файла (0000) (следующая строка после оглавления - см. таблицу 4), и прибавить к нему длину этого файла (в нашем примере 1FD0H), то легко отыскать начальный адрес оглавления следующего файла (1FE0H). В результате такого построения файловой структуры нет необходимости просматривать весь файл - можно вычислить адрес оглавления следующего файла и перейти в нужное место. Помимо того, что такая файловая структура наглядно просматривается директивой <D> МОНИТОРа, сокращается и время поиска файла на диске.

В конце последнего файла на диске - по адресу, где будет размещаться начало оглавления будущего файла - ORDOS, автоматически устанавливает <Стоп-байт> - 0FFH, который указывает на то, что дальше файлов нет и ячейка памяти диска по этому адресу относится уже к свободному пространству диска. По мере добавления или уничтожения файлов <Стоп-байт> соответственно перемещается.

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

В. СУГОНЯКО, В. САФРОНОВ Московская обл.

Внутренние команды Ор Дос

F(ORMAT) - ПОДГОТОВКА ("ФОРМАТИРОВАНИЕ")"КВАЗИДИСКА"
D(IR) - ВЫВОД КАТАЛОГА ДИСКА НА ЭКРАН ДИСПЛЕЯ
L(OAD) - ЧТЕНИЕ ФАЙЛА ИЗ ДИСКА В ПАМЯТЬ КОМПЬЮТЕРА
S(AVE) - ЗАПИСЬ УЧАСТКА ПАМЯТИ В КАЧЕСТВЕ ФАЙЛА НА ДИСК
R(EN) - ПЕРЕИМЕНОВАНИЕ ФАЙЛА
E(RA) - УДАЛЕНИЕ ФАЙЛА, ХРАНЯЩЕГОСЯ НА ДИСКЕ
Т(УРЕ) - ПРОСМОТР ТЕКСТОВЫХ ФАЙЛОВ

ЛИТЕРАТУРА

1. В. Э. Фигурнов. IBM PC для пользователя.- М.: Финансы и статистика, 1990.

2. М. Уэйт, Дж. Ангсрмейср. Операционная система СР/М.- М.: Радио и связь, 1986.

3. В. Сугоняко, В. Сафронов. Операционная система ORDOS для ПРК <Орион-128>.- Радио, 1990, № 8, с. 38.

ОРДОС 4.03 - описание

Пример скрытых файлов и файлов защищеных от стирания и записи

Программа STAT$ Орион-128 скачать программы под ОРДОС Программа STAT$ Орион-128 скачать программы под ОРДОС Программа STAT$ Орион-128 скачать программы под ОРДОС

Как работает программа STAT$ под ОРДОС

Теперь на примере программы BASIC$ скрытые и защищенные файлы для ОР ДОС

Заголовок программы со значением R/W Программа STAT$ Орион-128 скачать программы под ОРДОС

Заголовок программы со значением R/W

Заголовок программы со значением R/O Программа STAT$ Орион-128 скачать программы под ОРДОС

Заголовок программы со значением R/O, файл статус только чтение, защита от удаления. Нельзя удалить с квазидиска.

Файл со значением R/O отображение в дос Программа STAT$ Орион-128 скачать программы под ОРДОС

Файл R/O отображение в OR DOS (после размера файла стоит "точка")

Файл со значением R/O отображение в NC$ Программа STAT$ Орион-128 скачать программы под ОРДОС

Файл R/O отображение в NC$

Файл со значением R/O отображение удаление файла Программа STAT$ Орион-128 скачать программы под ОРДОС

Удаление файла со статусом R/O, файл со статусом R/O не удаляется и остается на месте

Файл со значением Скрытый отображение в дос Программа STAT$ Орион-128 скачать программы под ОРДОС

Заголовок программы со значением "Скрытый файл"

Файл со значением R/O отображение Скрытый файл ОР ДОС его видит Программа STAT$ Орион-128 скачать программы под ОРДОС

Скрытый файл ОР ДОС его видит

Файл со значением Скрытый файл NC$ его не видит STAT$ Орион-128 скачать программы под ОРДОС

NC$ и VC$ - скрытые файлы не видит

Работа в CP/M-80 программы и железо

Программы DS DOS

 

 

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

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