mirror of
https://github.com/aaru-dps/Aaru.git
synced 2026-07-08 18:16:24 +00:00
1598 lines
124 KiB
Plaintext
1598 lines
124 KiB
Plaintext
М.Королев, Д.Бутырский, А.Панфилов
|
||
|
||
Дисковая операционная система MK-DOS версия 3.15
|
||
|
||
I. Знакомьтесь: MK-DOS v3.15 ............................. 3
|
||
1. Основополагающие понятия ........................... 3
|
||
II. Принципы работы с MK-DOS .............................. 3
|
||
1. Характеристики MK-DOS .............................. 3
|
||
2. Технические требования MK-DOS и использование ад-
|
||
ресного пространства................................ 4
|
||
3. Загрузка MK-DOS .................................... 4
|
||
4. Работа с MK-DOS .................................... 4
|
||
4.1. Файловая система MK-DOS .......................... 5
|
||
4.2. Логический диск MK-DOS ........................... 5
|
||
4.3. Работа MK-DOS с диском ........................... 5
|
||
4.3.1. Обработка имени ................................ 5
|
||
4.3.2. Функционирование перехватчика .................. 6
|
||
4.3.3. Команды перехватчику MK-DOS .................... 6
|
||
III. Принципы работы с MicroCommander v3.00 ................ 7
|
||
1. Введение ........................................... 7
|
||
2. Технические требования МС и распределение адресного
|
||
пространства ....................................... 8
|
||
3. Экран MC ........................................... 8
|
||
4. Выполнение простых операций ........................ 9
|
||
5. Управление файлами и подкаталогами ................. 10
|
||
5.1. Просмотр текстового файла ........................ 10
|
||
5.2. Редактирование текстового файла .................. 12
|
||
5.3. Создание подкаталога ............................. 12
|
||
5.4. Переименование файла, подкаталога или логического
|
||
диска ............................................ 12
|
||
5.5. Перемещение файлов и логических дисков по подка-
|
||
талогам на текущем диске ......................... 12
|
||
5.6. Копирование файлов и логических дисков ........... 13
|
||
5.7. Удаление файлов,подкаталогов и логических дисков . 14
|
||
6. Выход в монитор БК0010(-01) ........................ 14
|
||
7. Главное меню MicroCommander ........................ 14
|
||
7.1. Установка параметров панели ...................... 14
|
||
7.2. Дополнительные команды ........................... 14
|
||
7.3. Установка цвета, параметров ДОС, принтера и со-
|
||
хранение конфигурации ............................ 15
|
||
8. Обработка файлов по расширению ..................... 15
|
||
8.1. Редактирование файла MC.EXT ...................... 16
|
||
9. Использование внешних функций ...................... 16
|
||
9.1. Файлер ........................................... 16
|
||
9.2. Эмулятор ANDOS ................................... 17
|
||
9.3. Дерево подкаталогов и логических дисков .......... 17
|
||
IV. Форматирование и создание нового системного диска ..... 18
|
||
V. Комплект поставки MK-DOS .............................. 19
|
||
Vа. Утилиты MFORMAT, SQUEEZER, COPDEV ..................... 20
|
||
VI. Руководство программиста .............................. 25
|
||
1. Дополнительные команды ЕМТ-перехватчику ............ 25
|
||
2. Формат каталога MK-DOS ............................. 25
|
||
3. Формат записи о файле .............................. 26
|
||
4. Статус файла ....................................... 26
|
||
5. Таблица ссылок, переменных и констант MK-DOS ....... 26
|
||
6. Подпрограммы MK-DOS и обращения к ним .............. 27
|
||
6.1. Подпрограммы MK-DOS .............................. 28
|
||
6.2. Обращения к подпрограммам MK-DOS ................. 28
|
||
Приложение 1 (Схема распайки БК - Принтер) ................. 32
|
||
|
||
I. Знакомьтесь: MK-DOS v3.15
|
||
Если Вы начинающий пользователь, то перед началом работы
|
||
Вам предлагается в обязательном порядке ознакомиться с нижеиз-
|
||
ложенной информацией.
|
||
Внимание! Никогда не включайте и не выключайте питание дисково-
|
||
да или ЭВМ со вставленной в дисковод дискетой. Это
|
||
чревато потерей информации, записанной на дискете.
|
||
|
||
1. Основополагающие понятия
|
||
Дисковая Операционная Система (ДОС) - программная среда,
|
||
комплекс программ, организующий на магнитном или виртуальном
|
||
носителе информационное пространство в файловую систему и обес-
|
||
печивающий, таким образом, работу утилит и прикладных программ
|
||
с информацией на носителе.
|
||
Среда пользователя (командный монитор или оболочка) -
|
||
программа обеспечивающая взаимодействие пользователя с ДОС.
|
||
Драйверы внешних устройств - программы, управляющие ус-
|
||
тройствами и обеспечивающие доступ к ним ДОС. В частности,
|
||
драйвер дисковода или винчестера управляет двигателями и голов-
|
||
ками привода; драйвер электронного диска управляет работой па-
|
||
мяти, переключениями ее страниц и т.д. Таким образом, ДОС не
|
||
видит разницы между, в нашем случае, дисководом или электронным
|
||
диском; это для нее лишь внешние устройства с разным объемом
|
||
хранимой информации. ДОС будет работать с написанным даже через
|
||
сто лет драйвером какого-нибудь вновь созданного устройства.
|
||
|
||
II. Принципы работы с MK-DOS
|
||
1. Характеристики MK-DOS
|
||
У MK-DOS каталог с последовательным расположением файлов,
|
||
что обеспечивает повышенную надежность, оперативность, высокую
|
||
скорость доступа к информации и позволяет без проблем восста-
|
||
навливать утраченную информацию, делая систему привлекательнее
|
||
других, имеющих возможность фрагментации файлов по таблице FAT.
|
||
При удалении файла, в каталоге образуется "дырка", включающая
|
||
эту область в общий объем свободного места на диске. При записи
|
||
новых файлов ДОС ищет "дырку" подходящего размера и записывает
|
||
туда файл, если файл достаточно мал, то "дырка" перед записью
|
||
файла дробится на две, позволяя использовать оставшееся свобод-
|
||
ное место в дальнейшем (в отличие от NORD, MICRO DOS и т.п.).
|
||
Новая версия операционной системы MK-DOS принципиально от-
|
||
личается от предыдущих возможностью работы с устройствами объ-
|
||
емом до 32 Мб и логическими дисками объемом до 16 Мб создава-
|
||
емых на этих устройствах (не следует путать логические диски
|
||
винчестера с логическими дисками MK-DOS и RT-11), что позволяет
|
||
полностью использовать дисковое пространство винчестера. При
|
||
работе с дисководом такая организация файловой системы тоже
|
||
удобна, т.к. с логическими дисками можно производить те же опе-
|
||
рации, что с обычными файлами (различие только в их размерах).
|
||
На логических дисках MK-DOS запускаются и работают все програм-
|
||
мы, обращающиеся к ДОС через EMT 36, а также все корректно на-
|
||
писанные программы и утилиты.
|
||
Дополнительно введены такие понятия как "системный диск"
|
||
(привод, с которого произошла загрузка) и "привод для оверлеев"
|
||
(на БК0011М им может быть, например, электронный диск) по ана-
|
||
логии с RT-11. К этим устройствам имеется доступ не только из
|
||
оболочки, но и из любой программы имеющей функции чтения/записи
|
||
файлов. Эти устройства получили имена "@:" (системное устрой-
|
||
ство) и "!:" (привод для оверлеев).
|
||
|
||
2. Технические требования MK-DOS и использование
|
||
адресного пространства
|
||
MK-DOS V3.15 и сервисная оболочка MicroCommander v3.00 ра-
|
||
ботают как с минимальной конфигурацией БК (БК0010(-01) + кон-
|
||
троллер дисковода с 8(16) Кб ДОЗУ + 1 дисковод), так и с макси-
|
||
мальной (БК0011М с винчестером до 2 Гигабайт) благодаря модуль-
|
||
ому построению системы. При загрузке ДОС определяет, на какой
|
||
машине ей предстоит работать, и подбирает максимально возможную
|
||
и удобную для пользователя комбинацию модулей. На БК0010(-01)
|
||
оснащенной контроллером с 16 Кб ДОЗУ в дополнительную память
|
||
загружается резидент MK-DOS и сервисная оболочка; если есть
|
||
только 8 Кб ДОЗУ, то оболочка всегда будет подгружаться с дис-
|
||
кеты в основную память (с 1000 адреса); на БК0011(М) без вин-
|
||
честера дополнительно подгружаются МОНИТОР БК0010 и драйвер
|
||
электронного диска, сервисная оболочка "прячется" в 7-ю страни-
|
||
цу ОЗУ; на БК0011М с винчестером выводится марка винчестера и
|
||
его параметры, а электронный диск не грузится, т.к. он не ну-
|
||
жен. Отличительной особенностью MK-DOS является возможность
|
||
"возрождаться", если какая-либо программа испортила модули ДОС
|
||
(автоматически подчитываются необходимые модули с системного
|
||
диска).
|
||
|
||
3. Загрузка ДОС
|
||
Для загрузки ДОС на БК0010(-01) на клавиатуре набирается
|
||
команда "S160000" (буква Т для контроллеров фирмы "АЛьТЕК"); на
|
||
БК0011 в ответ на приглашение "@" наберите "160000G"; БК0011М
|
||
при включении сразу начинает автоматическую загрузку, если же
|
||
вы оказались в мониторе БК0011М - для загрузки нажмите "B".
|
||
После вышеперечисленных действий (если таковые имели мес-
|
||
то) загорится лампочка дисковода, и через несколько секунд заг-
|
||
рузившаяся MK-DOS запустит программу начальной инициализации.
|
||
Программа начальной инициализации делает проверку на нали-
|
||
чие винчестера. Если винчестер есть, то выводится его конфигу-
|
||
рация и параметры. На БК0011(М) без винчестера загружается
|
||
драйвер электронного диска, на него копируются файлы, перечис-
|
||
ленные в командном файле VDISK.COM.
|
||
|
||
4. Работа с MK-DOS
|
||
MK-DOS имеет модульную структуру и состоит из резидента
|
||
ДОС, расположенного в файле "MKDOS V3.15", и оверлейной (т.е.
|
||
подчитываемой) оболочки MC. ДОС находится в памяти постоянно,
|
||
обеспечивая доступ к диску из любой программы пользователя или
|
||
из монитора.
|
||
MK-DOS поддерживает до 26 стандартных устройств, набор ко-
|
||
торых может быть расширен загрузкой драйверов дополнительных
|
||
устройств. Эти устройства следующие:
|
||
- на всех типах БК - A:, B:, C:, D: - Дисководы (подключе-
|
||
ние приводов C: и D: нуждается в доработке контроллера);
|
||
- на БК0011М с винчестером C:, D:, E:, F: и т.д. - логи-
|
||
ческие диски винчестера;
|
||
- на БК0011(М) без винчестера устройством E: является
|
||
электронный диск.
|
||
|
||
4.1. Файловая система MK-DOS
|
||
В MK-DOS, кроме обычных файлов, бывают так называемые
|
||
BAD-файлы. Это отмеченные области с нечитающимися блоками, соз-
|
||
данные для исключения их из общего дискового пространства. Они
|
||
не отображаются в каталоге и не перемещаются программой сжатия
|
||
дисков "Squeezer" (перемещающей файлы в начало диска для обра-
|
||
зования в конце его свободного места максимального размера).
|
||
Кроме того, на устройствах возможно создавать логические
|
||
диски объемом до 16 Мегабайт.
|
||
|
||
4.2. Логический диск MK-DOS
|
||
В корневом каталоге MK-DOS может храниться информация мак-
|
||
симум о 172 файлах. При работе с дисководом этого более чем
|
||
достаточно (в ANDOS - не более 112 файлов), но при работе с
|
||
винчестером этого явно недостаточно, т.к. объем носителя боль-
|
||
шой, а использовать его пространство становится невозможным
|
||
из-за малого объема каталога.
|
||
С этой проблемой столкнулись и авторы ANDOS, но решение
|
||
было найдено совсем не оригинальное: винчестер разбивается на
|
||
большое количество "дискет" по 800 Кб, доступ к ним осуществля-
|
||
ется как и раньше - указанием имени привода. Если не хватает
|
||
строчных букв, то предлагается вводить номер привода числом!
|
||
В MK-DOS все гораздо проще, ибо авторы решили использовать
|
||
принцип реализованный в RT-11, а именно, организация на носите-
|
||
лях логических дисков.
|
||
Логический диск представляет собой файл большого размера,
|
||
но в этом файле есть свой каталог, файлы и логические диски.
|
||
Таким образом, запомнив смещение к логическому диску возможно
|
||
сделать его текущим! Создать логический диск, сделать его теку-
|
||
щим, скопировать в него файлы можно с помощью сервисной оболоч-
|
||
ки MicroCommander.
|
||
|
||
4.3. Работа MK-DOS с диском
|
||
4.3.1. Обработка имени
|
||
При операциях чтения и записи управляющие коды и все дру-
|
||
гие неотображаемые коды в имени файла заменяются на пробел. До-
|
||
полнительно, при операции чтения, буквы в заявленном имени и
|
||
имени в каталоге приводятся к латинскому заглавному регистру,
|
||
что позволяет вводить имя на любом регистре. После всех опера-
|
||
ций в ячейки ответа блока параметров ЕМТ36 копируется имя, за-
|
||
явленное в команде, что обеспечивает работу программ с защитой
|
||
имени.
|
||
При удалении файлов все соседние "дырки" объединяются в од-
|
||
ну общей длины, абсолютной величиной здесь является длина файла
|
||
в блоках, так как разрядности длины файла в байтах может просто
|
||
не хватить.
|
||
|
||
4.3.2. Функционирование перехватчика
|
||
При операциях чтения, в случае отсутствия файла в катало-
|
||
ге, выдается соответствующее сообщение и происходит возврат с
|
||
кодом ошибки 4. В противном случае файл будет загружен по адре-
|
||
су, указанному в смещении 2 от начала блока параметров ЕМТ36,
|
||
при ненулевом его значении, иначе по адресу, указанному в заго-
|
||
ловке файла в каталоге. Если загружаемый файл накладывается на
|
||
монитор БК0010, на БК0011 происходит загрузка до монитора и вы-
|
||
ход по команде HALT имитируя наличие ПЗУ. После операции чтения
|
||
адрес загрузки помещается в ячейку 264, адрес из каталога - по
|
||
смещению 26 блока параметров и в ячейку 266, а по смещению 30
|
||
помещается длина файла.
|
||
При операциях записи, если встречен файл с таким же именем
|
||
происходят следующие действия:
|
||
- при включенном режиме "Overwrite" (замена) происходит
|
||
автоматическая замена файла без вопроса, иначе задается
|
||
вопрос "Overwrite, Rename or Abort", предлагающий нажа-
|
||
тием соответствующих клавиш выбрать дальнейшее действие:
|
||
"Заменить, Записать с другим именем или отменить опера-
|
||
цию";
|
||
- при выбранной опции "Заменить" ("Overwrite") и включен-
|
||
ном режимe "Predelete" (предварительное удаление) старый
|
||
файл удаляется до записи нового, в противном случае
|
||
(выключенном режиме "Predelete") сначала записывается
|
||
новый файл и только при успешном окончании операции уда-
|
||
ляется предыдущий, что позволяет обеспечить максимальную
|
||
защиту от потери информации, что очень актуально на БК
|
||
(с нашей-то аппаратурой). Режим реализован на БК впер-
|
||
вые.
|
||
Подкаталоги MK-DOS являются удобной сортировкой одного об-
|
||
щего каталога по признаку, определяемому пользователем (имя
|
||
подкаталога). Следовательно, файлы считываются с диска по име-
|
||
ни, независимо от принадлежности к подкаталогу, а записываются
|
||
в текущий подкаталог, удаляя в случае перезаписи файл там, где
|
||
он был. Подкаталоги MK-DOS совместимы с подкаталогами DOS NORD.
|
||
|
||
4.3.3. Команды перехватчику MK-DOS
|
||
Команды, которые можно подавать в имени файла, позволяют
|
||
обращаться к ДОС из любой программы, имеющей функцию чтения или
|
||
записи файла. Признаком того, что подается команда, является
|
||
двоеточие, стоящее вторым символом в имени файла. Исключение
|
||
составляет лишь команда просмотра каталога.
|
||
|
||
A: B: C: ... - Смена текущего устройства. Признак
|
||
подкаталога переключается в корень;
|
||
. или пустое имя - Показать полный каталог диска. Нажати-
|
||
ем клавиш возможно сортировать выводи-
|
||
мые имена по первой букве, пробел -
|
||
приостановить вывод;
|
||
B:. - Показать каталог диска B: без смены
|
||
текущего устройства;
|
||
B:NAME - Обращение к другому диску, без смены
|
||
текущего устройства (файлы пишутся в
|
||
корень);
|
||
-:NAME - Удалить указанный файл с текущего ус-
|
||
тройства;
|
||
?: - ВКЛ/ВЫКЛ режимов "Overwrite" - автома-
|
||
тическая перезапись файлов и
|
||
"Predelete" - при замене удаление пе-
|
||
ред или после записи;
|
||
NAME.DSK - сделать текущим логический диск с име-
|
||
нем NAME.DSK.
|
||
|
||
III. Принципы работы с MicroCommander v3.00
|
||
1. Введение
|
||
Основные команды MK-DOS имеют простой синтаксис и не тре-
|
||
буют особых усилий для их запоминания (см. главу "Работа с
|
||
ДОС"). Однако при увеличении количества дискет и используемых
|
||
файлов работать с ДОС становится значительно сложнее.
|
||
Одним из первых инструментальных средств, с которым стал-
|
||
кивается пользователь после загрузки MK-DOS, является пакет
|
||
программ MicroCommander v3.00, в дальнейшем MC. Обладая
|
||
"дружественным" интерфейсом, он чрезвычайно легок в освоении и
|
||
создает массу удобств при работе с файлами, дискетами и логи-
|
||
ческими дисками.
|
||
Пользователь может не только запускать игры, но и редакти-
|
||
ровать тексты программ, с максимальным удобством запускать
|
||
трансляторы и утилиты с передачей параметров для пакетной и
|
||
одиночной обработки файлов (что избавляет от рутинного
|
||
"набивания" имен файлов), копировать и переименовывать файлы и
|
||
многое другое. В частности, в пакете программ MC реализованы
|
||
следующие дополнительные функции:
|
||
- информация о файлах на панелях может выводится в двух
|
||
режимах: Full (в одну колонку) и Brief (в две колонки);
|
||
- реализована обработка файлов по расширению (как в Norton
|
||
Commander на IBM PC);
|
||
- реализована передача параметров из командной строки (как
|
||
в RT-11 (ОС БК v4.1)) как для одиночной так и для груп-
|
||
повой обработки файлов;
|
||
- возможен просмотр (в режимах 64 и 80 символов в строке)
|
||
и печать на любом принтере текстовых файлов неограничен-
|
||
ной длины в кодировке БК и IBM;
|
||
- появилась возможность вызова текстового редактора, с по-
|
||
мощью которого можно редактировать текстовые файлы раз-
|
||
мером до 4 Кб (командные файлы);
|
||
- используя МЕНЮ оболочки можно установить и сохранить на
|
||
диске ЛЮБЫЕ параметры ДОС и оболочки, а также инициали-
|
||
зировать дискету или логический диск, создать логический
|
||
диск любого объема, сохранить или восстановить копию
|
||
корневого каталога дискеты на последней дорожке и т.д.;
|
||
- копирование файлов стало более надежным и быстрым, для
|
||
наглядности течение процесса отбражается на линейном ин-
|
||
дикаторе. Исключены ошибки, связанные со сменой диска
|
||
при операциях (копировании, переименовании и др.) на од-
|
||
ном дисководе,;
|
||
- по ключу AР2+2 (User) на текущей панели появляется спи-
|
||
сок файлов только с расширением ".USR", Вы можете сами
|
||
включать программы в этот список простым переименованием
|
||
имени часто используемой программы. В частности, к обо-
|
||
лочке прилагаются подгружаемые функции "Эмулятор ANDOS"
|
||
(он позволяет копировать с дисков ANDOS файлы и запус-
|
||
кать программы на дисках ANDOS), "Дерево подкаталогов и
|
||
логических дисков" (для быстрого и наглядного поиска
|
||
файлов), "Commander Link" (для осуществления связи между
|
||
двумя БК через параллельный порт, что очень удобно при
|
||
"перекачивании" информации с одной БК с винчестером на
|
||
другую без использования дисководов и дискет).
|
||
После завершения работы прикладной программы, выбранной
|
||
пользователем, происходит возвращение в MC.
|
||
|
||
2. Технические требования МС и распределение
|
||
адресного пространства
|
||
MC - резидентная часть. При загрузке резидент помещается в
|
||
7-ю страницу ОЗУ на БК0011(М) или в ДОЗУ на адрес 140000 на
|
||
БК0010(-01). В случае БК0010(-01) с 8 Кб ДОЗУ, каждый раз при
|
||
запуске автоматически подгружается с системного диска на адрес
|
||
1000. Если какая-либо программа пользователя испортила резидент
|
||
в памяти, то происходит автоматическая подгрузка модуля и его
|
||
восстановление в памяти.
|
||
Если ДОС установлена на винчестер, то модули будут автома-
|
||
тически подгружаться с системного диска, на БК0011(М) их жела-
|
||
тельно скопировать на электронный диск (т.е. просто перечислить
|
||
в командном файле VDISK.COM - при загрузке ДОС перепишет их са-
|
||
ма). На БК0010(-01) с двумя дисководами не следует вынимать
|
||
системный диск (где и будут находиться оверлейные модули), на
|
||
БК0010(-01) с одним дисководом ситуация сложнее: либо Вам при-
|
||
дется отказаться от использования меню, редактора, View'ера и
|
||
обработки файлов по расширению, либо скопировать на каждый ра-
|
||
бочий диск вышеперечисленные модули.
|
||
|
||
3. Экран MC
|
||
На рабочем экране MC отображаются две панели, на которые
|
||
выводится информация о каталоге, подкаталогах, файлах и логи-
|
||
ческих дисках. На одной из панелей расположен так называемый
|
||
"курсор MC", представляющий собой выделение слова другим фоном.
|
||
Он указывает на текущий рассматриваемый файл или подкаталог.
|
||
Панель, на которой находится курсор, называется АКТИВНОЙ
|
||
(текущей), а другая, соответственно, НЕАКТИВНОЙ (нетекущей) или
|
||
СОСЕДНЕЙ.
|
||
В нижней строке экрана перечислены основные команды MC.
|
||
Рядом с каждой из них расположена цифра, обозначающая какой
|
||
клавише соответствует каждое действие.
|
||
Например, слева от слова "Quit" (прекратить работу, поки-
|
||
нуть) стоит цифра 0. Если Вы нажмете ОДНОВРЕМЕННО клавиши [АР2]
|
||
и [0] (далее, одновременное нажатие на две клавиши обозначается
|
||
через "+", например: [АР2]+[0]), то это приведет к завершению
|
||
сеанса работы с MicroCommander (выход в МОНИТОР БК0010: "?").
|
||
Эта строка называется СТРОКОЙ ФУНКЦИОНАЛЬНЫХ КЛАВИШ.
|
||
Сразу над ней находится КОМАНДНАЯ СТРОКА, в которой можно
|
||
набирать имена файлов (с ключами и параметрами) для запуска. В
|
||
командной строке отображается имя ТЕКУЩЕГО УСТРОЙСТВА (дисково-
|
||
дa) например: А:\>. В этой строке могут вводиться команды для
|
||
исполнения, например: VX <─┘ - файл VX запустится на исполне-
|
||
ние.
|
||
Еще один вид экрана MicroCommander - "звездное небо". Если
|
||
в течение 3-х минут MC не использовался, то его основной экран
|
||
"гаснет", уступая место изображению звездного неба с вспыхива-
|
||
ющими и исчезающими звездами. Это осуществлено для сохранения
|
||
люминисцентного слоя монитора от выгорания под действием посто-
|
||
янной "картинки". Для возобновления работы просто нажмите любую
|
||
клавишу.
|
||
4. Выполнение простых операций
|
||
Для перемещения курсора MC используйте обычные клавиши уп-
|
||
равления курсором - стрелки ([^], [|], [<], [>]). Если файлов
|
||
больше, чем может поместиться на панели, то они будут прокручи-
|
||
ваться. Для перемещения курсора на другую панель нажмите клави-
|
||
шу [ТАБ].
|
||
Попробуем теперь выполнить в MC несколько простых функций.
|
||
Вначале установим тип панели, при котором отображается
|
||
полная информация о файлах. Для определенности сделаем активной
|
||
левую панель. Используйте [ТАБ] для переключения между панеля-
|
||
ми. Теперь нажмите [СУ]+[F]. На панели будут высвечиваться
|
||
строчки, в каждой из которых содержится полная информация об
|
||
одном подкаталоге, файле или логическом диске.
|
||
Если бы мы нажали [СУ]+[B], то на панели выводились бы
|
||
только имена файлов (без адреса и длины), но в две колонки (до
|
||
36 имен файлов).
|
||
Теперь попробуем сменить дисковод на текущей панели. Для
|
||
этого нажмем клавишу [ШАГ]. Появится окно, в котором указаны
|
||
названия дисководов (A:, B:, C:...). Клавишами [<] и [>] можно
|
||
выбрать нужный и нажать [<─┘]. Если выбранный привод у вас есть
|
||
(Например, A:, B: - дисководы, C:, D:... - "диски" винчестера),
|
||
то произойдет чтение каталога диска указанного Вами привода и
|
||
отображение его на экране. Если по каким-либо причинам каталог
|
||
не может быть считан (отсутствует дискета в дисководе, дискета
|
||
не в формате MK-DOS и пр.), то панель останется пустой, а в
|
||
нижней ее строке появится сообщение об ошибке чтения каталога.
|
||
Клавиша [ШАГ] позволяет сменить устройство на текущей па-
|
||
нели, а клавиши [├<─] (сдвижка) и [├─>] (раздвижка), для ЛЕВОЙ
|
||
и ПРАВОЙ соответственно.
|
||
Если у Вас БК0010(-01), а контроллер оснащен АПК "Дисковый
|
||
Бейсик", то не пытайтесь выбирать устройства с именами больше
|
||
"C:"!
|
||
|
||
Итак, что же мы видим на панели?
|
||
. . .
|
||
│ DOS │>SUB< │>DIR< │ - ПОДКАТАЛОГ
|
||
. . .
|
||
│GAMES │>DISK<│ 400 │ - ЛОГИЧЕСКИЙ ДИСК
|
||
. . .
|
||
│MFORMAT │ 1000│ 14000│ - ФАЙЛ
|
||
Попробуем сменить подкаталог. Подведем курсор к нужному и
|
||
нажмем [<─┘] (ВВОД), в нашем примере подкаталог имеет имя
|
||
"DOS". Содержимое панели изменится - теперь здесь будут отобра-
|
||
жаться файлы этого подкаталога. Если Вы находитесь не в корне-
|
||
вом каталоге, то самым верхним элементом является родительский
|
||
подкаталог. Он изображается двумя точками (".."), чтобы быстро
|
||
попасть в родительский подкаталог, надо установть курсор на эти
|
||
точки и нажать [ВВОД]. Попробуйте попутешествовать по подката-
|
||
логам Вашего диска.
|
||
В процессе работы Вы можете воспользоваться помощью, кото-
|
||
рую предоставляет MC. Для этого нажмите [АР2]+[1] "Help". Для
|
||
продолжения работы - [KT].
|
||
Вы можете создать новый подкаталог. Для этого войдите в
|
||
тот подкаталог, где Вы хотите его создать, и нажмите [АР2]+[7]
|
||
"Mkdir" (Make directory - создать подкаталог). Появится окно в
|
||
центре панели, в котором Вам следует напечатать желаемое имя
|
||
(оно может иметь до 13 символов). Нажмите [ВВОД] и подкаталог
|
||
будет создан. Возможно, на вашем диске будут файлы, которые Вы
|
||
хотели бы поместить в создаваемый подкаталог. Чтобы сделать
|
||
это, перед созданием подкаталога необходимо ВЫДЕЛИТЬ файлы, ко-
|
||
торые Вы хотите в него поместить. При помощи клавиши [ВС] выде-
|
||
ляется ТЕКУЩИЙ файл (т.е. файл, на котором стоит курсор MC), а
|
||
курсор переходит на следующий файл. Этой же клавишей выделение
|
||
СНИМАЕТСЯ, если файл уже был выделен. Имена выделенных файлов
|
||
ожирняются на черно-белом мониторе или выводятся другим цветом
|
||
на цветном. Сочетанием клавиш [АР2]+[+] можно выделить все фай-
|
||
лы ниже курсора, а [АР2]+[-] - снять выделение со всех файлов
|
||
ниже курсора.
|
||
Теперь СКОПИРУЕМ в наш подкаталог какие-нибудь файлы с
|
||
другого диска.
|
||
Для этого перейдите на другую панель, укажите нужное ус-
|
||
тройство. Если у Вас только один дисковод, то вставьте другой
|
||
диск и нажмите клавишу [СБР], чтобы увидеть его каталог.
|
||
Если надо копировать только один файл, то просто встаньте
|
||
на него курсором, если несколько - ВЫДЕЛИТЕ их, и нажмите
|
||
[АР2]+[5] "Copy" (Copy - копировать). Появится информационное
|
||
окно, в котором будет отображено устройство, на которое мы хо-
|
||
тим скопировать, имя копируемого файла или количество выделен-
|
||
ных файлов.
|
||
Нажмите [ВВОД] для копирования или [КТ], чтобы отказаться
|
||
от копирования. Если копирование происходит на одном дисководе,
|
||
то необходимо менять диски и нажимать после этого любую клави-
|
||
шу. Сообщение "Insert INPUT volume" - приглашение вставить диск
|
||
на чтение, "Insert OUTPUT volume" - вставить диск на запись
|
||
(т.е. диск НА который мы копируем файлы).
|
||
|
||
5. Управление файлами и подкаталогами
|
||
5.1. Просмотр текстового файла
|
||
Вызов команды - [АР2]+[3] "View". Эта команда показывает
|
||
на экране содержимое текстового файла, на который указывает
|
||
курсор. Экран просмотра перекрывает весь главный экран MC.
|
||
MC может показывать и печатать текстовые файлы большинства
|
||
текстовых редакторов БК (VorteX, BRED, EDASP, TURBO) и тексто-
|
||
вые файлы в формате IBM. При просмотре файлов IBM можно вклю-
|
||
чить режим "80 символа в строке", чтобы концы длинных строк бы-
|
||
ли видны на экране. Клавиши управления:
|
||
|
||
[|],[^] - вверх/вниз на одну строку;
|
||
[<],[>] - назад/вперед на экран;
|
||
[АР2]+[<] - в начало текста;
|
||
[АР2]+[>] - в конец текста;
|
||
[K] - включение кодировки КОИ-8 (кодировка БК, включена
|
||
по умолчанию);
|
||
[A] - включение альтернативной кодировки (кодировка IBM,
|
||
отключает режим только клавиша [K]);
|
||
[6] - режим 64 символа в строке (включен по умолчанию);
|
||
[8] - режим 80 символов в строке;
|
||
[L] - задание количества строк на странице при печати. По
|
||
умолчанию - 60 строк. Изменяется клавишами [^] и
|
||
[|]. Если сделать количество строк равным нулю, то
|
||
печать будет осуществляться без разбивки на страни-
|
||
цы;
|
||
[P] - печать текста начиная от верхней строки экрана.
|
||
После печати каждой страницы необходимо нажимать
|
||
любую клавишу для продолжения печати. [KT] - эк-
|
||
стренный останов печати;
|
||
[KT] - возврат в MC.
|
||
|
||
5.2. Редактирование текстового файла
|
||
Вызов - [АР2]+[4] "Edit". Эта команда позволяет редактиро-
|
||
вать текстовые файлы размером до 4 Кбайт. Формат текстового ре-
|
||
дактора совместим с редактором из ассемблера "TURBO" и другими
|
||
редакторами, где код конца строки - 12, пробел - 40, табуляция
|
||
- 11 (числа восьмиричные). Не рекомендуется редактировать файлы
|
||
в формате ".VXT". Эта команда предназначена для редактирования
|
||
командных файлов MK-DOS и MC (файлы с расширением ".COM"). Кла-
|
||
виши управления:
|
||
|
||
[ВС]+[E] - выход из текстового редактора. При вводе этой ко-
|
||
манды появляется информационное окно, где Вам
|
||
предлагается сохранить отредактированный файл под
|
||
старым именем, ввести новое имя и сохранить файл
|
||
или отказаться от сохранения файла (клавиша [KT]);
|
||
[<],[>], - перемещение курсора;
|
||
[^],[|]
|
||
[ТАБ] - табуляция (курсор "перепрыгивает" на позицию крат-
|
||
ную 10.);
|
||
[<─┘] - раздвижка строк;
|
||
[<─┤] - забой символа слева от курсора;
|
||
[K──] - сдвижка в строке;
|
||
[├─>] - раздвижка в строке;
|
||
[СУ]+[B] - забрать строку в буфер;
|
||
[ВС]+[K──] - забрать правую часть(от курсора) строки в буфер;
|
||
[ВС]+[├─>] - выдать из буфера строку (часть строки);
|
||
[СБР] - поставить метку (запомнить строку, где стоял кур-
|
||
сор), курсор должен быть в начале строки;
|
||
[ВС]+[T] - уйти к метке;
|
||
[ВС]+[U] - удалить текст от метки до строки, на которой стоит
|
||
курсор;
|
||
[ВС]+[B] - забрать в буфер текст от метки до курсора;
|
||
[ВС]+[W] - выдать из буфера текст начиная со строки, где сто-
|
||
ит курсор;
|
||
[ВС]+[D] - задание модели поиска;
|
||
[BC]+[G] - поиск по модели, введенной ранее ([BC]+[D]).
|
||
|
||
5.3. Создание подкаталога
|
||
Вызов функции - [АР2]+[7] "Mkdir". Появится окно в центре
|
||
панели, в котором следует ввести желаемое имя (оно может иметь
|
||
до 13 символов). Для отказа от операции нажмите [KT], [ВВОД]
|
||
для создания подкаталога. Если перед созданием подкаталога были
|
||
выделены файлы, то они переместятся в этот подкаталог.
|
||
|
||
5.4. Переименование файла, подкаталога
|
||
или логического диска
|
||
Вызов команды - [АР2]+[6] "RenMov". Перед вызовом команды
|
||
необходимо убедиться, что выделенных файлов нет. Для переимено-
|
||
вания файла (подкаталога, логического диска) необходимо устано-
|
||
вить на него курсор MC и нажать [АР2]+[6]. Появится информаци-
|
||
онное окно, в котором Вам будет предложено старое имя файла для
|
||
редактирования. Указав желаемое имя, необходимо нажать [ВВОД].
|
||
Если Вы вызвали функцию ошибочно, то отказаться от переименова-
|
||
ния - [KT].
|
||
|
||
5.5. Перемещение файлов и логических дисков
|
||
по подкаталогам на текущем диске
|
||
Эта функция вызывается также, как и "Переименование"
|
||
([АР2]+[6] "RenMov"), но выполняет ПЕРЕМЕЩЕНИЕ ВЫДЕЛЕННЫХ ФАЙ-
|
||
ЛОВ. Файлы выделяются клавишами [ВС] (для текущего файла),
|
||
[АР2]+[+] (для всех файлов ниже курсора). Для снятия выделения
|
||
можно использовать [ВС] (для текущего файла) и [АР2]+[-] (для
|
||
всех файлов ниже курсора). Будте внимательны, т.к. если не один
|
||
файл не выделен запускается функция "Переименование".
|
||
Для перемещения всех выделенных файлов в нужный подкаталог
|
||
необходимо на соседней панели установить то же устройство что и
|
||
на текущей, а также войти там в тот подкаталог, куда Вы хотите
|
||
поместить выделенные файлы. Далее можно смело нажимать
|
||
[АР2]+[6]. В появившемся информационном окне будет выведено ко-
|
||
личество выделенных файлов и имя подкаталога, в который Вы хо-
|
||
тите их поместить. Если Вас все устраивает, нажмите [ВВОД], для
|
||
отказа от перемещения - [KT].
|
||
|
||
5.6. Копирование файлов и логических дисков
|
||
Вызов функции - [АР2]+[5] "Copy". Команда копирует текущий
|
||
файл (логический диск) или все выделенные файлы и логические
|
||
диски на другое устройство, логический диск или просто на дру-
|
||
гую дискету (в том случае, если у Вас один дисковод).
|
||
Для копирования нескольких файлов их необходимо выделить,
|
||
для копирования одного файла необходимо установить на него кур-
|
||
сор MC. На соседней панели необходимо установить нужное устрой-
|
||
ство и при необходимости войти в нужный логический диск и под-
|
||
каталог. При нажатии [АР2]+[5] появляется информационное окно,
|
||
в котором указывается количество файлов для копирования или имя
|
||
текущего файла и "путь" (т.е. устройство и подкаталог), куда
|
||
они будут скопированы. Если Вы не установили на соседней панели
|
||
нужное устройство, то его можно указать нажатием клавиши от [A]
|
||
до [Z]. В последнем случае файлы будут копироваться только в
|
||
корневой подкаталог. При нажатии на [ВВОД] начинается копирова-
|
||
ние, [KT] - отказ от операции.
|
||
При копировании могут появляться следующие сообщения:
|
||
Overwrite, All, Skip - Перезаписать под тем же именем, Переза-
|
||
писывать ВСЕ файлы при копировании, Про-
|
||
пустить текущий файл? Это сообщение по-
|
||
является если при записи файла на диске
|
||
обнаружен файл с тем же именем;
|
||
Disk full - диск полон, дальнейшее копирование не-
|
||
возможно;
|
||
Non DOS disk! - попытка записи на диск НЕ MK-DOS;
|
||
Insert INPUT volume - "Вставьте диск на чтение";
|
||
Insert OUTPUT volume - "Вставьте диск на запись";
|
||
Последние два сообщения появляются при
|
||
копировании на одном дисководе. В случае
|
||
копирования файлов с одного ЛОГИЧЕСКОГО
|
||
диска на другой на одном приводе (т.е.
|
||
когда смена дискеты не требуется) можно
|
||
запретить запросы на смену диска нажав
|
||
на запрос "Insert OUTPUT volume" клавишу
|
||
[БЛОКРЕД].
|
||
Error #n, Retry,Next,Abort? - ошибка чтения/записи #n, Попробо-
|
||
вать еще раз, Приступить к копи-
|
||
рованию следующего файла, Прер-
|
||
вать операцию копирования?
|
||
Расшифровка номера ошибки (n):
|
||
|
||
1 - при чтении: ошибка CRC в зоне данных,
|
||
при записи: защита диска от записи (заклейка);
|
||
2 - ошибка CRC в зоне заголовка сектора;
|
||
3 - привод не найден или нет позиционирования на нулевую
|
||
дорожку. В случае возникновения на винчестере означает,
|
||
что нет указанного логического диска винчестера;
|
||
4 - ошибка позиционирования. На винчестере означает попытку
|
||
записи в блок, который выходит за пределы логического
|
||
диска винчестера;
|
||
5 - сектор не найден. На винчестере: потеря конфигурации
|
||
(из-за сбоев питания и пр.), случается очень редко. Ус-
|
||
траняется только выкл./вкл. питания машины);
|
||
6 - диск не вращается или отсутствует;
|
||
7 - нажата клавиша [СТОП];
|
||
8 - не найден адресный маркер;
|
||
9 - не найден маркер данных;
|
||
10 - нестандартный формат диска;
|
||
11 - попытка чтения меченого сектора без разрешения. На вин-
|
||
честере с контроллером "АльтПро" означает, что испорче-
|
||
на таблица разделов в ДОЗУ.
|
||
|
||
5.7. Удаление файлов, подкаталогов и логических дисков
|
||
Вызов функции [АР2]+[8] "Delete". Удаляет текущую запись
|
||
или все выделенные файлы и логические диски. Подкаталог можно
|
||
удалить только при отсутствии в нем вложенных подкаталогов и
|
||
файлов. При удалении файлов со статусом "защищен" выдается до-
|
||
полнительный запрос:
|
||
File <имя файла>, delete (Y/N)?
|
||
[Y] - удалить
|
||
[N] - пропустить
|
||
|
||
6. Выход в монитор БК0010(-01)
|
||
[АР2]+[0] "Quit" - выход в монитор БК0010(-01) на "?".
|
||
Запустить MC из монитора можно так:
|
||
? M
|
||
ИМЯ? @:MC <─┘
|
||
|
||
? S <─┘
|
||
|
||
7. Главное меню MicroCommander
|
||
Вызов Главного Меню осуществляется по нажатию клавиши [KT]
|
||
или [АР2]+[9] "Menu", при этом в верхней строке экрана появля-
|
||
ется горизонтальное меню:
|
||
|
||
Left Commands Options Right
|
||
| | | |
|
||
установка дополнительные установка установка
|
||
параметров команды параметров параметров
|
||
левой панели ДОС правой панели
|
||
|
||
|
||
7.1. Установка параметров панели
|
||
Brief - краткая информация о файлах (без адреса и длины);
|
||
Full - полная информация о файлах;
|
||
Unsort - вывод имен без сортировки;
|
||
Name - вывод имен с сортировкой по алфавиту;
|
||
Extens - вывод имен с сортировкой по расширению (в алфавитном
|
||
порядке).
|
||
|
||
7.2. Дополнительные команды
|
||
Protect - установить статус "защищен" для всех выделенных
|
||
файлов на текущей панели;
|
||
Unprotect - снятие статуса "защищен" для всех выделенных файлов
|
||
на текущей панели;
|
||
Backup - сохранение корневого каталога диска на 81-й дорожке
|
||
(только для дисководов);
|
||
Restore - восстановление корневого каталога диска с копии на
|
||
81-й дорожке (только для дисководов);
|
||
Init - инициализация диска. При инициализации логического
|
||
диска винчестера его объем узнается с помощью драй-
|
||
вера винчестера (т.е. работает корректно!). При
|
||
инициализации логического диска MK-DOS предлагается
|
||
старый объем лог. диска. Если Вы решились изменять
|
||
предлагаемое число, то будте осторожны: размер дис-
|
||
ка в корневом каталоге не увеличивается, изменяется
|
||
только каталог логического диска (т. е. если иници-
|
||
ализировать LD на объем больший чем его реальный
|
||
размер в корневом каталоге можно испортить при ко-
|
||
пировании файлов в LD другие логические диски и
|
||
файлы);
|
||
Create - создание логического диска MK-DOS на текущем ус-
|
||
тройстве. Вам будет предложено выбрать размер логи-
|
||
ческого диска и ввести его имя.
|
||
|
||
7.3. Установка цвета, параметров ДОС, принтера
|
||
и сохранение конфигурации
|
||
Save Setup - сохранение на системном диске всех текущих пара-
|
||
метров ДОС: устройств на панелях, драйвера принте-
|
||
ра, шрифта и палитры (только на БК0011М) и т.д.;
|
||
Color - изменение палитры (для БК0011М) или вкл./выкл. ре-
|
||
жима оцветнения для БК0010(-01). Эту команду можно
|
||
подавать и без выхода в Главное Меню клавишей
|
||
[ИНДСУ];
|
||
Pr. Code - установка кодировки, которую "понимает" Ваш прин-
|
||
тер: K-7 - код КОИ-7,
|
||
K-8 - код КОИ-8,
|
||
Осн. - основная кодировка ГОСТ,
|
||
Альт. - альтернативная кодировка;
|
||
Pr. Port - тип вывода данных: Прм. - код прямой,
|
||
Инв. - код инверсный;
|
||
Fl. Time - задержка для дисководов при переходе с дорожки на
|
||
дорожку;
|
||
Fl. Type - тип дисковода: 40/80 дорожек.
|
||
|
||
8. Обработка файлов по расширению
|
||
MC позволяет обрабатывать файлы по расширению. Это очень
|
||
удобно как для программистов, так и для пользователей. Напри-
|
||
мер, если установить курсор MC на файл DEMO.MAC (исходный текст
|
||
на ассемблере) и нажать [ВВОД], то произойдет поиск командной
|
||
последовательности для расширения "MAC" в файле MC.EXT. Если
|
||
последовательность будет обнаружена, она выполнится.
|
||
|
||
8.1. Редактирование файла MC.EXT
|
||
Для редактирования файла MC.EXT надо наставить на него
|
||
курсор MC и нажать [АР2]+[4] "Edit". Командная последователь-
|
||
ность состоит из следующих элементов:
|
||
|
||
MAC:TURBO7MK_LO$_SC
|
||
│ │ └──┬─┘
|
||
│ │ │
|
||
│ │ текст "ключа"
|
||
│ └──────── имя рабочей программы
|
||
└────────────── расширение, обязательно 3 символа
|
||
|
||
Примечание: 1. Символ "$" ("черепашка") заменяет имя текущего
|
||
файла.
|
||
2. Символ "_" (подчеркивание) заменяет [ВВОД].
|
||
Если необходимо ввести какой-либо управляющий код в коман-
|
||
дной последовательности (например код клавиши [KT]), то нажмите
|
||
[БЛОКРЕД], а затем клавишу с нужным кодом. Например, для заг-
|
||
рузки файлов с расширением .VXT в VorteX v1.05 последователь-
|
||
ность может иметь такой вид:
|
||
|
||
┌── расширение
|
||
│
|
||
VXT:VX_ 2NC111$_
|
||
│ │ │ │ └ <имя файла> <─┘
|
||
│ │ │ └ команда VorteX'у: KT,1,1,1
|
||
│ │ └ выбираем принтер No 2 и отказ от использования ДОЗУ
|
||
│ └── "пролистываем" заставку и рекламу
|
||
└───── имя программы - "VX"
|
||
|
||
9. Использование внешних функций
|
||
MicroCommander позволяет подгружать и использовать внешние
|
||
функции. Список их постоянно расширяется, поэтому опишем лишь
|
||
те три, которыe обязательно поставляются в комплекте
|
||
MicroCommander.
|
||
|
||
9.1. Файлер
|
||
Файлер позволяет наглядно выбирать имена файлов для заг-
|
||
рузки их из программ, не имеющих такой функции. Например, гра-
|
||
фический редактор Techno-Art, программа печати графики GPS4,
|
||
старые текстовые редакторы, из монитора БК0010(-01) и т.д.
|
||
Для загрузки и инсталляции файлера необходимо (находясь в
|
||
MC) нажать клавишу [БЛР]. Для работы файлера необходимы
|
||
БК0010(-01) с ДОЗУ 16Кб или БК0011(М). Файлер понимает ТОЛЬКО
|
||
диски МК-DOS.
|
||
При обращении программы к ДОС с пустым именем (состоящим
|
||
из пробелов) происходит вызов файлера (при запросе вывода ката-
|
||
лога - команда 4, 204 - он выводится). В нижней части экрана
|
||
появляется рамка с именами файлов, подкаталогов и логических
|
||
дисков. Если при вызове файлера в имени было указано расширение
|
||
(например, так делают VorteX, Techno-Art и т.п.), то будут
|
||
отображены только файлы с указанным расширением и логические
|
||
диски. Работать с файлером достаточно просто.
|
||
|
||
Для перемещения по содержимому каталога используются кла-
|
||
виши управления курсором ([<], [>], [^], [|]).
|
||
Выбора файла осуществлятся нажатием клавиши [ВВОД].
|
||
Для входа и выхода в подкаталоги и только для входа в ло-
|
||
гические диски используется также клавиша [ВВОД]. Выход из ло-
|
||
гических дисков осуществляется по клавише [СБР].
|
||
Перечитывание каталога текущего привода осуществляется
|
||
также помощи этой клавиши ([СБР]).
|
||
Смена привода производится нажатием на алфавитные клавиши
|
||
(т.е. клавиши [А] - [Z]).
|
||
Во время работы файлера возможно использование фильтра.
|
||
Для этого нажмите [ПОВТ] и введите текст фильтра (возможно ис-
|
||
пользование клавиш [<┤](ЗАБОЙ), [<], [>]), затем нажмите
|
||
[ВВОД]. Произойдет сортировка каталога и вывод логических дис-
|
||
ков (любых) и файлов, удовлетворяющих тексту фильтра. Если
|
||
текст фильтра начинается с символа "*" (звездочка), то все фай-
|
||
лы выводятся без учета принадлежности к подкаталогу; если текст
|
||
фильтра начинается с символа "." (точка), то будут выведены все
|
||
файлы, имеющие какое-либо расширение. Для отмены фильтра следу-
|
||
ет выполнить следующую последовательность действий: нажмите
|
||
клавишу [ПОВТ], а затем [KT].
|
||
Выход из файлера возможен при выборе файла по клавише
|
||
[ВВОД] и при нажатии клавиши [KT] (в этом случае по смещению 1
|
||
от начала блока параметров ЕМТ36 помещается код ошибки 4 - пре-
|
||
рывание по клавише СТОП). При выходе из файлера происходит ВОС-
|
||
СТАНОВЛЕНИЕ участка экрана, который занимал файлер (т.е. возмо-
|
||
жен вызов файлера даже из графических редакторов).
|
||
Файлер использует следующее адресное пространство:
|
||
- на БК0010(-01) с ДОЗУ 16Кб: адреса 140000 по 153777;
|
||
- на БК0011(М): адреса 116076-116355 плюс в седьмой стра-
|
||
нице адреса с 40000 по 46103 и с 57000 по 64673.
|
||
|
||
9.2. Эмулятор ANDOS
|
||
Эмулятор ANDOS позволяет копировать с дисков ANDOS на дис-
|
||
ки MK-DOS файлы и запускать с дисков ANDOS программы при усло-
|
||
вии, что файлы не фрагментированы (ANDOS v3.1 практически не
|
||
создает фрагментации на диске; если Вы хотите скопировать в
|
||
MK-DOS текстовый файл полученный в VorteX v4.0, то необходимо
|
||
убедиться, что файл был "закрыт" при выходе из VorteX).
|
||
При нажатии на [АР2]+[2] "User" на текущей панели появля-
|
||
ется список файлов с расширением ".USR". Кроме ANDOS.USR там
|
||
могут быть и другие функции. Вы можете сами занести часто ис-
|
||
пользуемую программу в этот список, дав ей расширение ".USR".
|
||
Для запуска функции необходимо наставить на нее курсор MC
|
||
и нажать [ВВОД]. После запуска ANDOS.USR можно вставлять диске-
|
||
ту в формате ANDOS, посмотреть ее каталог, скопировать с нее
|
||
файлы, запустить какую-либо программу. Естественно, что прог-
|
||
раммы, написанные под ANDOS, работать не будут. Запускать можно
|
||
только универсальные программы.
|
||
|
||
9.3. Дерево подкаталогов и логических дисков
|
||
Дерево подкаталогов и логических дисков очень удобно для
|
||
визуального восприятия файловой структуры на диске. Работать с
|
||
ним черезвычайно просто.
|
||
Для вызова функции наставьте курсор МС на файл TREE.USR
|
||
(для удобства используйте комбинацию клавиш [АР2]+[2]) и нажми-
|
||
те [ВВОД].
|
||
На соседней панели появится дерево того диска, откуда за-
|
||
пускалась функция. ROOT означает корневой каталог, подкаталоги
|
||
начинаются с символа "", остальными записями являются логичес-
|
||
кие диски. Например:
|
||
|
||
ROOT - корневой подкаталог
|
||
├DOS - подкаталог
|
||
├РАБОЧАЯ - логический диск
|
||
├┬GAME
|
||
│└┬ИГРЫ SW
|
||
│ ├┬ИГРЫ SW1
|
||
│ │└ИГРЫ SW2
|
||
│ └ИГРЫ BIL
|
||
...
|
||
│
|
||
| - означает, что на панели уместилась не
|
||
вся информация
|
||
|
||
Перемещение по дереву осуществляется клавишами [^] и [|].
|
||
Если на панели уместилась не вся информация, то происходит
|
||
прокрутка. При перемещении курсора, на панели (откуда запуска-
|
||
лась функция) будет отображаться содержимое текущего подкатало-
|
||
га.
|
||
Чтобы войти в логический диск следует навести на него кур-
|
||
сор и нажать [ВВОД], что приведет к отображению структуры логи-
|
||
ческого диска. Для возврата в корневой диск используется клави-
|
||
ша [СБР].
|
||
Смена привода осуществляется нажатием на алфавитные клави-
|
||
ши (т.е. [A] - [Z]). Если активны какие-либо эмуляторы
|
||
(например, ANDOS, RT-11), то диски не MK-DOS также будут обра-
|
||
батываться.
|
||
Для фиксирования текущего состояния следует нажать [ВВОД]
|
||
или [ТАБ].
|
||
Если небходимо вернуться к исходному состоянию панелей,
|
||
т.е. которое было до запуска функции, то просто нажмите [KT].
|
||
|
||
IV. Форматирование и создание нового системного диска
|
||
Перед использованием новую дискету необходимо ОТФОРМАТИРО-
|
||
ВАТЬ, т.е. разметить. Делается это при помощи одной из программ
|
||
форматирования, которых можно встретить до десятка, но рекомен-
|
||
дуется это делать программой 'MFORMAT', входящей в состав
|
||
MK-DOS, так как там применен новый нестандартный драйвер форма-
|
||
тирования, позволяющий уменьшить вероятность возникновения оши-
|
||
бок, а также благодаря использованию нового, оригинального ал-
|
||
горитма разметки - увеличить скорость общения с диском, что по-
|
||
вышает надежность общения с информацией и уменьшает его износ.
|
||
Так же эта программа, встретив неустранимые ошибки, метит сбой-
|
||
ные места на диске как BAD области, перекрывая .BAD файлом всю
|
||
сторону дорожки со сбойным блоком, чтобы головка дисковода и
|
||
близко там не появлялась.
|
||
Чтобы вы поняли, что делаете, готовя дискету к работе,
|
||
прибегнем к сравнению. Допустим, вам нужно записать табличные
|
||
данные на листе бумаги. Вы возьмете чистый лист и разлинуете
|
||
его - вы отформатировали диск. Делаете шапку таблицы - иници-
|
||
ализируете, т.е. создаете каталог дискеты. А лишь потом начина-
|
||
ете записывать данные.
|
||
Для создания копии системы необходимо отформатировать диск
|
||
и записать на него загрузчик (только программой MFORMAT: в ко-
|
||
мандной строке набрать MFORMAT4 A:/F/B для привода А:). Далее,
|
||
скопировать файлы "MONITOR" и "MKDOS V3.15", эти два файла дол-
|
||
жны быть первыми на диске, т.к. загрузчик читает их по физичес-
|
||
ким номерам блоков. Потом копируются остальные файлы подкатало-
|
||
га "\DOS".
|
||
Если у Вас есть винчестер или хотя бы два дисковода, то
|
||
процедура создания системного диска значительно упрощается,
|
||
т.к. MFORMAT может при записи загрузчика автоматически скопиро-
|
||
вать нужные Вам системные файлы в установленном порядке на но-
|
||
вый диск. Список файлов находится в файле SYSDSK.COM, который
|
||
возможно редактировать из оболочки по ключу "Edit".
|
||
Напимер, мы загрузились с дисковода B: (там стоит систем-
|
||
ный диск), тогда команда (подается в командной строке оболочки)
|
||
B:\>MFORMAT A:/F/S/B/C <─┘
|
||
отформатирует диск A: с использованием драйвера "быстрого" фор-
|
||
матирования, запишет на диск загрузчик, скопирует с системного
|
||
диска (в нашем случае - B:) все файлы, которые перечислены в
|
||
файле SYSDSK.COM.
|
||
|
||
V. Комплект поставки MK-DOS
|
||
Фирменная дискета MK-DOS включает следующие файлы:
|
||
|
||
MK-DOS и MicroCommander
|
||
/DOS
|
||
* MONITOR - загружаемый на БК0011(М) монитор БК0010(-01);
|
||
* MKDOS V3.15 - резидент ДОС;
|
||
* VD.SYS - драйвер электронного диска для БК0011(М);
|
||
* VDISK.COM - список файлов, которые переписыватся на элек-
|
||
тронный диск при загрузке системы.
|
||
/MC
|
||
* MC - резидентная часть оболочки;
|
||
+ MENU.MC - ┐
|
||
+ VIEW.MC - │
|
||
+ EDIT.MC - │автоматически подгружаемые по мере необходи-
|
||
+ FILER.MC - │мости модули оболочки;
|
||
+ EXTR.MC - │
|
||
+ HELP.MC - ┘
|
||
+ MC.EXT - командный файл для обработки файлов по расши-
|
||
рению.
|
||
|
||
Подгружаемые к оболочке функции пользователя
|
||
/USER
|
||
ANDOS.USR - эмулятор для чтения дисков ANDOS;
|
||
RT-11.USR - эмулятор для чтения и записи дисков RT-11;
|
||
TREE.USR - дерево подкаталогов и логических дисков;
|
||
CALC.USR - калькулятор;
|
||
ARIFM.OVL - модуль арифметики для CALC.USR;
|
||
DAY.USR - календарь до 2000 года;
|
||
TEKDAY.DAT - текущая дата для календаря (формат совместим
|
||
с форматом даты БЛОКНОТ 2);
|
||
- FIND.USR - поиск файлов на винчестере;
|
||
|
||
Утилиты
|
||
/UTILITIES
|
||
MFORMAT - форматирование дисков, запись загрузчика;
|
||
SYSDSK.COM - список системных файлов (необходим программе
|
||
MFORMAT) для быстрого создания нового систем-
|
||
ного диска;
|
||
COPDEV - копирование дискет, логических дисков и т.д.;
|
||
SQUEEZER - сжатие дисков MK-DOS;
|
||
DD - программа для восстановления дискет;
|
||
DD.CNF - конфигурация DD;
|
||
DD.DOC - документация к DD;
|
||
DESS - редактор информации на дисках;
|
||
DESS.DOC - документация к DESS;
|
||
FILES.DSS - ┐
|
||
ASSEMB.DSS - │подгрузки к DESS;
|
||
RADIX.DSS - │
|
||
MACRO.DSS - ┘
|
||
CF50 - магнитофонный копировщик, позволяет переписы-
|
||
вать файлы с магнитофона на дискету;
|
||
DISK.CF - ┐подгружаемые функции к CF50;
|
||
TEXT.CF - ┘
|
||
CF50.DOC - документация к CF50.
|
||
|
||
Бейсик и Фокал
|
||
/BASIC,FOCAL
|
||
|
||
BASIC10.DSK - дисковый Бейсик для БК0010(-01) с контролле-
|
||
рами PIT и "АЛьТЕК". Возможна работа с файла-
|
||
ми типа .ASC и .DAT;
|
||
BASIC11M - дисковый Бейсик для БК0011М;
|
||
BASIC.OVL - автоматически грузится в BASIC11M, если нет
|
||
ПЗУ Бейсика-11М;
|
||
FOCAL10 - загружаемый Фокал для БК0010(-01). Необходим
|
||
контроллер дисковода с ДОЗУ не менее 16 Кб;
|
||
FOCAL11M - загружаемый Фокал для БК0011М;
|
||
PREZIDENT - пример программы на Фокале(загружать командой
|
||
Фокала *L G PREZIDENT <ВВОД>,потом *G<ВВОД>).
|
||
|
||
Ассемблер
|
||
/TURBO
|
||
TURBO6M - ассемблер-система, работает как на БК0011М,
|
||
так и на БК0010(-01) с 16 Кб ДОЗУ;
|
||
ARIFM.OBJ - модуль плавающей арифметики к TURBO6M;
|
||
TURBO6.DC1 - ┐Документация к TURBO6M;
|
||
TURBO6.DC2 - ┘
|
||
|
||
TURBO7MK - ассемблер-система, только для БК0011М. Имеет
|
||
мощный редактор текста;
|
||
TURBO7M.DC1 - ┐Документация к TURBO7M;
|
||
TURBO7M.DC2 - ┘
|
||
NABOR.MAC - набор стандартных подпрограмм (текст на ас-
|
||
семблере).
|
||
|
||
Шрифты для БК0011(М)
|
||
/FONT
|
||
10.BKF - шрифт БК0010(-01);
|
||
11.BKF - шрифт БК0011(М);
|
||
STANDART.BKF- более четкий ч/б шрифт;
|
||
COLOR1.BKF - цветной шрифт (красный);
|
||
COLOR2.BKF - цветной шрифт (зеленый);
|
||
ПИШМАШ.BKF - шрифт "под пишущую машинку";
|
||
PC.BKF - шрифт с IBM PC (CGA).
|
||
|
||
Примечание: 1. Файлы, помеченные "*" (звездочка), при загрузке
|
||
ДОС автоматически подгружаются (если они необхо-
|
||
димы).
|
||
2. Файлы, помеченные "+" (плюс), являются модулями
|
||
оболочки и подгружаются автоматически (по мере
|
||
необходимости) с системного диска во время рабо-
|
||
ты сервисной оболочки.
|
||
3. Файлы, помеченные "-" (минус), обязательны толь-
|
||
ко в комплекте ДОС для винчестера.
|
||
|
||
В комплект ДОС входит также распечатанная документация на
|
||
ДОС, сервисную оболочку, утилиты и подгружаемые функции.
|
||
|
||
Установка MK-DOS v3.15 на винчестер стоит 15 USD.
|
||
|
||
Авторы надеются, что Вы преобрели авторский программный
|
||
продукт (если это не так, но есть желание, то позвоните по те-
|
||
лефону 375-76-96, Дмитрий), и желают приятной работы с операци-
|
||
онной системой MK-DOS всем честным пользователям!
|
||
|
||
Утилиты MK-DOS v3.15
|
||
В комплект MK-DOS входит минимальный комплект сервисных
|
||
утилит: MFORMAT (форматирование дискет, инициализация дискет и
|
||
логических дисков винчестера, запись загрузчика системы),
|
||
COPDEV (копирование дискет и логических дисков винчестера, поз-
|
||
воляет создавать на винчестере библиотеку "образов" дискет в
|
||
виде логических дисков MK-DOS), SQUEEZER (программа для сжатия
|
||
дисков MK-DOS).
|
||
|
||
Утилита MFORMAT
|
||
MFORMAT предназначена, прежде всего, для форматирования и
|
||
инициализации дискет MK-DOS. При форматировании, проверке и
|
||
инициализации дискеты в каталоге сохраняется информация о пло-
|
||
хих участках диска (BAD-блоках), если они обаружены во время
|
||
проверки. При работе, MK-DOS будет "обходить" плохие участки
|
||
диска, чтобы информация читалась и записывалась без збоев.
|
||
|
||
В отличии от многих программ, MFORMAT запускается из ко-
|
||
мандной строки MicroCommander. В командной строке необходимо
|
||
указать имя программы ("MFORMAT"), устройство с которым пред-
|
||
стоит работать и ключи (что с ним делать). Например, если наб-
|
||
рать строку
|
||
|
||
C:\>MFORMAT A:/F
|
||
|
||
то отформатируется дискета в дисководе A:, а строка
|
||
|
||
C:\>MFORMAT B:/F/S/B/C
|
||
|
||
- отформатирует дискету в дисководе B: с использованием
|
||
драйвера "быстрого" форматирования;
|
||
- запишет на диск загрузчик MK-DOS;
|
||
- скопирует с системного диска на дисковод B: системные
|
||
файлы (они должны быть перечислены в командном файле
|
||
SYSDSK.COM, который должен находиться на системном диске).
|
||
|
||
Совсем не обязательно запоминать все перечисленые ключи,
|
||
т.к. MFORMAT выдает подсказку при запуске ее как "обычной"
|
||
программы (т.е. наставили на нее курсор MC и нажали <ВВОД>).
|
||
|
||
Ключи MFORMAT:
|
||
|
||
/F - форматировать указанный диск (бесполезно пытаться
|
||
"отформатировать" логический диск винчестера). После форматиро-
|
||
вания производится проверка диска и исправление (по возможнос-
|
||
ти) BAD-областей. После завершения проверки - диск инициализи-
|
||
руется.
|
||
|
||
/I - инициализировать указанный диск (совместно с ключом
|
||
/F не имеет смысла). Для инициализации логических дисков вин-
|
||
честера этой командой можно пользоваться (аналогично функции
|
||
Главного Меню MicroCommander "Init").
|
||
|
||
/B - записать на диск загрузчик MK-DOS. Возможно использо-
|
||
вание ключа как совместно с /F или /I, так и самостоятельно.
|
||
Загрузчик невозможно записать, если первые 35 блоков диска
|
||
заняты файлами или перекрываются BAD-областями.
|
||
|
||
/C - копирование на диск системных файлов, используется
|
||
совместно с /B. На одном дисководе (т.е. если загрузка произош-
|
||
ла с того же привода, что и используется в операции) команда не
|
||
работает. На системном диске должен быть файл SYSDSK.COM, в ко-
|
||
тором должны быть перечислены системные файлы в нужном порядке.
|
||
|
||
Пример:
|
||
/DOS - создать подкаталог DOS и скопировать
|
||
в него:
|
||
MONITOR
|
||
MKDOS V3.15 - обязательно первыми !
|
||
MC
|
||
VD.SYS
|
||
VDISK.COM
|
||
MENU.MC
|
||
VIEW.MC
|
||
EDIT.MC
|
||
FILER.MC
|
||
|
||
/USR - созать подкаталог USR ...
|
||
ANDOS.USR
|
||
TREE.USR
|
||
... и т.д.
|
||
|
||
Комментарии в командном файле не допускаются !
|
||
|
||
/S - используется совместно с /F, включает драйвер
|
||
"быстрого" форматирования (после такого форматирования диски
|
||
прописываются с той же скоростью, что и читаются). На некоторых
|
||
экземплярах импортных дисководов (TEAC, EPSON) драйвер может
|
||
давать сбои! Рекомендуется использовать на отечественных диско-
|
||
водах (МС5313, МС5311, МС5305).
|
||
|
||
/V - используется совместно с /I, перед инициализацией
|
||
осуществляет проверку диска на BAD-блоки и сохраняет информацию
|
||
о них. Корректно работает даже с винчестером (на случай исполь-
|
||
зования "антиквариата"). Использование команды оправдано, если
|
||
диск был отформатирован какой-либо другой программой.
|
||
|
||
/A - инициализация диска в формат ANDOS. Используется сов-
|
||
местно с /I или /F. Следует учитывать, что информация о
|
||
BAD-блоках не указывается в FAT ANDOS. Если у Вас винчестер, то
|
||
использовать логические диски винчестера размером более 1600
|
||
блоков (800 Кб) для работы с ANDOS очень не разумно!
|
||
|
||
Утилита COPDEV
|
||
Утилита предназначена для копирования дискет, логических
|
||
дисков винчестера и логических дисков MK-DOS. На сегодня
|
||
(22.04.95г.) программа является единственным КОРРЕКТНЫМ копи-
|
||
ровщиком дисков при использовании винчестера.
|
||
Запускется COPDEV так же как и MFORMAT - из командной
|
||
строки оболочки. Если запустить программу другим способом, то
|
||
выдается подсказка. Входными параметрами для COPDEV являются
|
||
имена устройств чтения/записи (с возможностью указания имен ло-
|
||
гических дисков MK-DOS) разделенные знаком "=" (равно).
|
||
В конце, можно указать ключи /F (диск-приемник отформати-
|
||
ровать перед записью на него информации) и /S (использовать
|
||
драйвер "быстрого" форматирования).
|
||
Например, у Вас только один дисковод, а необходимо сделать
|
||
копию дискеты:
|
||
|
||
A:\>COPDEV A:=A:/F
|
||
|
||
- команда осуществляет копирование дискет на одном диско-
|
||
воде (A:), перед копированием диск-приемник (т.е. диск, НА ко-
|
||
торый будет записываться информация) будет отформатирован. При
|
||
запросе "Вставьте диск-ИСТОЧНИК и нажмите <ВВОД>" необходимо
|
||
вставлять диск С которого информация ЧИТАЕТСЯ и нажимать
|
||
<ВВОД>, а на запрос "Вставьте диск-ПРИЕМНИК..." - диск для за-
|
||
писи.
|
||
Если у Вас два дисковода, то операцию можно проделать так:
|
||
A:\>COPDEV A:=B:
|
||
|
||
- команда скопирует диск A: на диск B:.
|
||
|
||
При наличии винчестера, очень удобно создать БИБЛИОТЕКУ
|
||
ОБРАЗОВ ДИСКЕТ в виде логических дисков MK-DOS:
|
||
C:\>COPDEV A:=F:АЛЬТЕК13
|
||
|
||
- команда копирует образ дискеты A: в логический диск АЛЬ-
|
||
ТЕК13, который находится на устройстве F:. Если обнаружится,
|
||
что на F: нет логического диска АЛЬТЕК13, то COPDEV предложит
|
||
создать его. Если диск A: в формате MK-DOS, то создается логи-
|
||
ческий диск минимального объема (т.е. только под область заня-
|
||
тую файлами), если диск A: не в формате MK-DOS, то создается
|
||
логический диск объемом с дискету (800 Кб или 400 Кб - в зави-
|
||
симости от типа дисковода: 80/40 дорожек).
|
||
Логический диск можно создать и с помощью MicroCommander.
|
||
Если источник имеет больший объем чем приемник, то COPDEV
|
||
предупредит Вас.
|
||
Возможна и обратная операция - восстановление дискеты из
|
||
ее образа на винчестере:
|
||
|
||
C:\>COPDEV F:АЛЬТЕК13=A:
|
||
|
||
- команда восстанавливает дискету из ее образа в логичес-
|
||
ком диске АЛЬТЕК13.
|
||
|
||
Следует обратить Ваше внимание на то, что COPDEV всегда
|
||
правильно указывает объем приемника при записи (если диск в
|
||
формате MK-DOS, разумеется), поэтому без проблем можно копиро-
|
||
вать логические диски винчестера. Например:
|
||
|
||
C:\>COPDEV C:=Z:
|
||
|
||
- копирование диска C: (системного логического диска вин-
|
||
честера) на логический диск винчестера Z:. Даже если, например,
|
||
C: имеет объем 1600 блоков, а Z: - 5000 блоков, на диске Z: бу-
|
||
дет указан правильный его размер, т.е. 5000 блоков.
|
||
|
||
Утилита SQUEEZER
|
||
При интенсивной работе необходимо, хотя бы раз в неделю,
|
||
наводить порядок на рабочих дискетах или логическии дисках вин-
|
||
честера: удалять старые версии рабочих файлов, рассортировывать
|
||
файлы по подкаталогам и логическим дискам. После этого, диски
|
||
можно обработать утилитой SQUEEZER: она переносит все файлы в
|
||
начало диска, удаляя таким образом "дыры", которые могли полу-
|
||
читься при увеличении размеров рабочих файлов, их удалении и
|
||
проч. При сжатии диска, SQUEEZER "обходит" BAD-области. Работа
|
||
с программой очень проста и не требует комментариев
|
||
(пользуйтесь встроенной подсказкой).
|
||
С помощью SQUEEZER можно сжимать не только дискеты или ло-
|
||
гические диски винчестера, но и логические диски MK-DOS. Для
|
||
этого необходимо сделать текущим нужный логический диск, а
|
||
программу запустить из командной строки. После запуска програм-
|
||
мы надо нажать <ВВОД>.
|
||
|
||
VI. Руководство программиста
|
||
1. Дополнительные команды ЕМТ-перехватчику
|
||
К перехватчику можно обращаться с рядом дополнительных ко-
|
||
дов команд в блоке параметров ЕМТ36 (для утилит). Это байты:
|
||
|
||
2 - Запись файла;
|
||
3 - Чтение файла;
|
||
4 - Вывести каталог текущего диска;
|
||
200 - Удаление по запросу;
|
||
202 - Запись файла с указанием адреса для каталога. При
|
||
этом адрес в памяти помещается в ячейку по смещению 2 от начала
|
||
блока параметров, а адрес для помещения в каталог - по смещению
|
||
26 (ячейка адреса ответа блока параметров). Работает также и с
|
||
магнитофоном;
|
||
|
||
204 - Показать каталог.
|
||
|
||
Кроме того, можно устанавливать дополнительные биты в коде
|
||
команды, меняющие специфику выполнения данной команды:
|
||
|
||
10 - бит запрета остановки дисковода, для продолжения дисковых
|
||
операций, система перед операцией не инициализирует работу
|
||
с дисководом (т.е. он должен быть ранее инициализирован),
|
||
и после окончания операции не останавливает дисковод (на
|
||
раскрутку которого при каждой операции теряется не менее
|
||
3-х секунд);
|
||
20 - бит "No RDDIR" перед операцией не читать каталог с диска
|
||
(подразумевается, что он был ранее считан и находится в
|
||
буфере);
|
||
40 - бит "No SAVDIR" после окончания операции не записывать ка-
|
||
талог (подразумевается, что файловые операции будут про-
|
||
должаться и каталог будет записан в конце).
|
||
|
||
При удачной загрузке файла, его номер блока на диске поме-
|
||
щается в ячейку @#314, а размер в блоках - @#316. При записи
|
||
выполняются те же действия, но в @#316 помещается размер всей
|
||
бывшей свободной области. Если на диске нет места, то в @#314 -
|
||
номер первого свободного блока в конце диска, а в @#316 - раз-
|
||
мер области. Это может быть полезным для организации произволь-
|
||
ного доступа к файлам.
|
||
|
||
2. Формат каталога MK-DOS
|
||
Формат каталога представляет собой тщательно продуманный
|
||
каталог системы Micro DOS, ставший стандартным на БК, а именно
|
||
формат нулевого блока дискеты:
|
||
|
||
Адрес:
|
||
30 - Количество файлов в каталоге (НЕ ЗАПИСЕЙ!);
|
||
32 - Суммарное количество блоков в файлах (НЕ ЗАПИСЯХ!) ката-
|
||
лога;
|
||
400 - Метка принадлежности к формату Micro DOS (123456);
|
||
402 - Метка формата каталога MK-DOS (51414);
|
||
466 - Размер диска в блоках, величина абсолютная для системы (в
|
||
отличие от NORD, NORTON и т.п.) принимающая не два значе-
|
||
ния под 40 или 80 дорожек, а, скажем, если Ваш дисковод
|
||
понимает только 76 дорожек, то в этой ячейке нужно ука-
|
||
зать соответствующее число блоков (это делается при ини-
|
||
циализации);
|
||
470 - Номер блока первого файла. Величина также изменяемая;
|
||
500 - Первая запись о файле.
|
||
|
||
3. Формат записи о файле
|
||
Запись о файле имеет длину 30:
|
||
|
||
Смещение:
|
||
|
||
0 - Статус файла;
|
||
1 - Номер подкаталога (0 - корень);
|
||
2 - Имя файла 14. символов ASCII KOI8;
|
||
20 - Номер блока;
|
||
22 - Длина в блоках;
|
||
24 - Адрес;
|
||
26 - Длина.
|
||
|
||
4. Статус файла
|
||
Статус файла бывает:
|
||
|
||
0 - обычный;
|
||
1 - защищен;
|
||
2 - логический диск;
|
||
200 - BAD-файл;
|
||
377 - удален.
|
||
|
||
Если первый символ в имени файла имеет код 177, то это
|
||
подкаталог. Тогда вместо статуса у него байтом указан номер
|
||
этого подкаталога, и все файлы (в т.ч. подкаталоги), имеющие
|
||
эту цифру в ячейке номера подкаталога, лежат в этом подкатало-
|
||
ге.
|
||
5. Таблица ссылок, переменных и констант MK-DOS
|
||
Операционная система MK-DOS имеет неперемещаемую таблицу
|
||
ссылок, переменных и констант, дающую неограниченные возможнос-
|
||
ти для написания утилит и других программ, используемых совмес-
|
||
тно с MK-DOS.
|
||
|
||
Переменные, буфера и константы
|
||
|
||
┌────────┬────────┬───────────────────────────────┬───────────┐
|
||
│ ИМЯ │ АДРЕС │ НАЗНАЧЕНИЕ │ ЗНАЧЕНИЕ │
|
||
│ МЕТКИ │ │ │ │
|
||
├────────┼────────┼───────────────────────────────┼───────────┤
|
||
│ VERS │ 120004 │Версия Системы 3.15 │100000+315.│
|
||
│ BLK │ 120006 │Адрес блока параметров диска │ 136712 │
|
||
│ SUBTEK │ 120010 │Номер подкаталога на тек. диске│ 0 │
|
||
│ SUBOLD │ 120011 │Подкаталог в другой панели │ 0 │
|
||
│ DEVTEK │ 120012 │Номер текущего устройства │ 0 │
|
||
│ SUBDIR │ 120013 │Подкаталог для CREATE, временн.│ 0 │
|
||
│ DIR │ 120014 │Адрес буфера чтения каталога │ 126000 │
|
||
│ TSTEP │ 120070 │Задержка шага головки дисковода│ 2000 │
|
||
│ PANEL │ 120072 │Байты устройств в панелях "MC" │ 400 (0,1) │
|
||
│ SCREEN │ 120074 │Ячейка перехвата вывода сообще-│ 0 │
|
||
│ │ │ний системы, адрес подпрограммы│ │
|
||
│ │ │обращения вместо EMT16. Для за-│ │
|
||
│ │ │прета вывода - адрес ближайшей │ │
|
||
│ │ │команды RTS PC │ │
|
||
│ STEK │ 120076 │Адрес стека перехватчика ЕМТ36 │ 136712 │
|
||
│ USER │ 120100 │Значение 1 Адреса и значения│ 0 │
|
||
│ │ 120102 │Адрес 1 трех ячеек, восста-│ 0 │
|
||
│ │ 120104 │Значение 2 навливаемых систе-│ 0 │
|
||
│ │ 120106 │Адрес 2 мой после ЕМТ14 и│ 0 │
|
||
│ │ 120110 │Значение 3 перезапуска │ 0 │
|
||
│ │ 120112 │Адрес 3 │ 0 │
|
||
│ USER2 │ 120114 │Адрес подпрограммы перед запу- │ 0 │
|
||
│ │ │ском "MC" или 0 │ │
|
||
│ NONDOS │ 120116 │Адрес подпрограммы имитации │ 0 │
|
||
│ │ │ЕМТ36 для не DOS дисков, или 0 │ │
|
||
│ │ │(вывод сообщения Non DOS Disk) │ │
|
||
│ OVERWR │ 120124 │Признак AutoOwerwrite, 1-выкл. │ 1 │
|
||
│ PRED │ 120125 │Признак Predelete, 1-выкл. │ 0 │
|
||
│ FLOP │ 120126 │Дисковод: 0 - 40, 1 - 80 track│ 1 │
|
||
│ PALET │ 120127 │Палитра БК11(М),оцветнение БК10│ 0 │
|
||
│ SY │ 120130 │Диск загрузки системы (@:) │ - │
|
||
│ DK │ 120131 │Привод для оверлеев (!:) │ - │
|
||
│ SORTIR │ 120132 │Режимы сортировки на панелях MC│ │
|
||
│ LD0 │ 120134 │Смещение к логическому диску │ │
|
||
│ │ │(в блоках), 0 - корень │ │
|
||
│ LD1 │ 120136 │то же, но для текущей операции │ │
|
||
│ LD2 │ 120140 │Смещение для другой панели MC │ │
|
||
│ NAM │ 306 │Адрес блока параметров EMT36 │ - │
|
||
│ BLOK │ 314 │Номер блока загруженного файла │ - │
|
||
│ SIZE │ 316 │Кол-во блоков в файле │ - │
|
||
└────────┴────────┴───────────────────────────────┴───────────┘
|
||
|
||
6. Подпрограммы MK-DOS и обращения к ним
|
||
6.1. Подпрограммы MK-DOS
|
||
|
||
┌────────┬────────┬───────────────────────────────────────────┐
|
||
│ МЕТКА │ АДРЕС │ НАЗНАЧЕНИЕ │
|
||
├────────┼────────┼───────────────────────────────────────────┤
|
||
│ INIDRV │ 120016 │ Инициализация драйвера дисковода │
|
||
│ EMT6 │ 120020 │ Команда EMT6 с автоповтором (исп. Rename) │
|
||
│ INOUT │ 120022 │ Чтение/запись блока (160004 исп.буфер ДОС)│
|
||
│ RDDIR │ 120024 │ Чтение каталога в буфер (@#DIR) │
|
||
│ DIRFIN │ 120026 │ Поиск файла в каталоге │
|
||
│ DIRPRI │ 120030 │ Вывод каталога на экран │
|
||
│ FRFIN │ 120032 │ Поиск свободного места в каталоге │
|
||
│ CREAT │ 120034 │ Создание записи о файле в каталоге │
|
||
│ DELETE │ 120036 │ Удаление файла (с запросом или без него) │
|
||
│ SAVDIR │ 120042 │ Запись каталога │
|
||
│ EMT20 │ 120044 │ Полная имитация EMT20 с исп. ячейки SCREEN│
|
||
│ PRINAM │ 120046 │ Вывод имени с без пробелов в конце │
|
||
│ TXT │ 120050 │ Перемещаемый вывод надписей │
|
||
│ STROKA │ 120052 │ Редактор строки (исп. Rename) │
|
||
│ OCTOUT │ 120056 │ Вывод восьмиричного числа │
|
||
│ DECOUT │ 120060 │ Вывод десятичного числа │
|
||
│ TST │ 120062 │ Замена управляющих кодов в R0 на пробелы │
|
||
│ TST2 │ 120064 │ Привести R0 к ЛАТ,ЗАГЛ регистру(корректно)│
|
||
│ ERROR │ 120066 │ Расшифровка текстом No ошибки дисковода │
|
||
│ FRFIN2 │ 120120 │ Поиск свободного места по длине в блоках │
|
||
│ CREAT2 │ 120122 │ Создание записи о файле по длине в блоках │
|
||
└────────┴────────┴───────────────────────────────────────────┘
|
||
|
||
Система имеет точку входа имитации EMT36, для совместимос-
|
||
ти с ANDOS выбран адрес 120002. Для обеспечения работы с диском
|
||
программ, использующих 30-й вектор для своих нужд, достаточно
|
||
вместо команды "EMT36" использовать "CALL @#120002". Ячейка
|
||
VERS предназначена для распознавания утилитами версии MK-DOS,
|
||
т.к. при неизменении адресов подпрограмм указанных в этом опи-
|
||
сании, их список в последующих версиях будет расширен, и для
|
||
обеспечения неработоспособности утилит, пользующихся возможнос-
|
||
тями ДОС, отсутствующими в предыдущих версиях.
|
||
|
||
ВНИМАНИЮ ПРОГРАММИСТОВ, пишущих под MK-DOS. Ячейку версии
|
||
следует проверять на "больше или равно" если вы пользуетесь
|
||
только стандартными запросами ДОС, и проверять "строго равно" -
|
||
если программа пользуется обращениями в тело MK-DOS, т.к. адре-
|
||
са не входящие в таблицу подпрограмм и переменных в следующих
|
||
версиях, а также при модификациях, могут изменяться.
|
||
|
||
6.2. Обращение к подпрограммам MK-DOS
|
||
|
||
INIDRV - инициализация блока параметров драйвера дисковода
|
||
Вызов: CALL @INIDRV
|
||
Выход: R3 - адрес блока параметров
|
||
Действия: Инициализация блока параметров пр аргументу R3, зане-
|
||
сение длины сектора в словах (400) по 64(R3) и задер-
|
||
жки перехода между дорожками из ячейки TSTEP.
|
||
|
||
EMT6 - Полный аналог EMT6, реализованный с автоповтором
|
||
Вызов: CALL @EMT6
|
||
|
||
INOUT - Чтение/запись блока
|
||
Вызов: CALL @INOUT
|
||
Вход: R0 - номер блока
|
||
R2 - адрес в памяти
|
||
R1 - длина в СЛОВАХ
|
||
ВЫХОД: бит C при ошибке, в ячейке 52 код ошибки
|
||
Действия: Производится чтение с диска массива и помещение его
|
||
по указанному адресу, если длина в команде отрица-
|
||
тельна - запись.
|
||
В случае ДИСКОВОЙ ОШИБКИ делается ШАГ ВПЕРЕД/ШАГ
|
||
НАЗАД головкой дисковода и ПОВТОР операции, что поз-
|
||
воляет исключить прерывание работы из-за случайных
|
||
ошибок.
|
||
|
||
RDDIR - Чтение каталога диска в буфер MK-DOS (@DIR)
|
||
Вызов: CALL @RDDIR
|
||
Вход: должен быть инициализирован блок параметров подпрограм-
|
||
мой INIDRV, входных регистров нет.
|
||
Выход: бит C при ошибке, адрес каталога в R3 (@#DIR).
|
||
Действия: Считывается каталог по адресу содержащемуся в ячейке
|
||
DIR, в случае безошибочного считывания происходит
|
||
проверка размера диска (ячейка 466 нулевого блока) и
|
||
включение в случае необходимости режима пропуска до-
|
||
рожек.
|
||
|
||
DIRFIN - Поиск файла в каталоге
|
||
Вызов: CALL @DIRFIN
|
||
Вход: R3 - адрес буфера каталога
|
||
@#NAM - адрес блока параметров EMT36
|
||
Выход: R3 - адрес записи о файле, или бит C если файл не найден
|
||
Действия: Поисходит поиск в каталоге файла, имя которого указа-
|
||
но в блоке параметров EMT36, управляющие символы в
|
||
имени приравниваются к пробелу.
|
||
|
||
DIRPRI - Вывод на экран каталога
|
||
Вызов: CALL @DIRPRI
|
||
Вход: R3 - адрес буфера каталога
|
||
Действия: На экран выдается каталог диска, во время вывода воз-
|
||
можна сортировка, нажатием клавиши - первой буквы
|
||
имени, вывод можно приостановить нажав пробел. R3
|
||
сохраняет свое значение.
|
||
|
||
FRFIN - Поиск свободного места в каталоге
|
||
Вызов: CALL @FRFIN
|
||
Вход: R3 - адрес буфера каталога
|
||
@#NAM - адрес блока параметров EMT36
|
||
Выход: R3 - адрес свободной записи
|
||
бит C - нет места на диске
|
||
бит C и R3=0 - нет места в каталоге
|
||
Действия: Поисходит поиск в каталоге свободного места по разме-
|
||
ру файла, имя которого указано в блоке параметров
|
||
EMT36.
|
||
|
||
FRFIN2 - Поиск свободного места для "длинного файла"
|
||
Команда полностью аналогична FRFIN, но на вход в R1 нужно
|
||
подавать длину файла в блоках. Если R1=-1, то ищется "дырка"
|
||
наибольшего размера. При выходе из п/п: R1-длина свободной об-
|
||
ласти в блоках, R0-номер первого свободного блока.
|
||
|
||
CREAT - Создание записи о файле
|
||
Вызов: CALL @CREAT
|
||
Вход: R3 - адрес записи
|
||
R4 - адрес буфера каталога
|
||
@#NAM - адрес блока параметров EMT36
|
||
Действия: Производится создание записи о файле в указанном мес-
|
||
те каталога, все управляющие символы в имени прирав-
|
||
ниваются к пробелу. Если "дырка" больше файла проис-
|
||
ходит раздвижка каталога и создание за файлом "дырки"
|
||
меньшего размера. Исправляются ячейки 30 и 32 шапки
|
||
директория.
|
||
|
||
CREAT2 - Создание записи о "длинном" файле
|
||
Команда полностью аналогична CREAT, но на вход в R1 нужно
|
||
подавать длину файла в блоках.
|
||
|
||
DELETE - Удаление файла
|
||
Вызов: CALL @DELETE
|
||
Вход: R3 - адрес записи о файле
|
||
бит C - удалять без подтверждения
|
||
Выход: бит C - файл защищен
|
||
Действия: Выдается запрос на удаление, или сообщение "File
|
||
protected!". При удалении без запроса защищенность
|
||
файла не анализируется. Удаляется запись о файле, ис-
|
||
правляются ячейки 30 и 32 шапки директория, в случае
|
||
необходимости образовавшееся свобоное место оъединя-
|
||
ется с соседними "дырками" в одну общей длины.
|
||
|
||
SAVDIR - Запись каталога на диск
|
||
Вызов: CALL @SAVDIR
|
||
Работа с функцией полностью аналогична работе с подпрог-
|
||
раммой RDDIR.
|
||
|
||
EMT20 - Аналог системного запроса EMT20
|
||
Вызов: CALL @EMT20
|
||
Работа с функцией полностью аналогична одноименному запро-
|
||
су EMT - диспетчера, но текст выводится с учетом состояния
|
||
ячейки SCREEN.
|
||
|
||
PRINAM - Вывод имени файла
|
||
Вызов: CALL @PRINAM
|
||
Вход: R3 - адрес записи о файле в каталоге
|
||
Выход: R3 сохраняет свое значение
|
||
Действие: На экран выводится имя файла заявленное в команде, с
|
||
игнорированием конечных пробелов (выводится один про-
|
||
бел). Используется при формировании сообщений типа:
|
||
"?MKDOS - MONITOR Deleted?".
|
||
|
||
TXT - Перемещаемый вывод надписей
|
||
Вызов: JSR R1,@TXT
|
||
.ASCIZ /СООБЩЕНИЕ/
|
||
.EVEN
|
||
Функция облегчает процедуру вывода сообщений программам
|
||
пользователя.
|
||
|
||
STROKA - Редактор строки
|
||
Вызов: CALL @STROKA
|
||
Вход: R3 - адрес строки
|
||
R2 - длина строки
|
||
Действие: Указанная строка символов вызывается на редактирова-
|
||
ние клавишей стрелка вправо можно возвращать по сим-
|
||
волам (с автоповтором) предидущее значение строки, по
|
||
нажатию клавиши ВВОД "хвост" забивается пробелами.
|
||
|
||
OCTOUT - Вывод восьмиричного числа
|
||
Вызов: CALL @OCTOUT
|
||
Вход: R2 - число для вывода
|
||
Действие: Выводится пробел, затем число в восьмиричном пред-
|
||
ставлении с лидирующими нулями.
|
||
|
||
DECOUT - Вывод десятичного числа
|
||
Вызов: CALL @DECOUT
|
||
Вход: R0 - число для вывода
|
||
Действие: Выводится пробел, затем заявленное в команде число в
|
||
десятичном представлении без лидирующих нулей.
|
||
|
||
TST - Замена пробелом управляющих кодов
|
||
Вызов: CALL @TST
|
||
Вход: R0 - код символа
|
||
Выход: R0 - код сивола или пробел
|
||
|
||
TST2 - Приведение к ЛАТ,ЗАГЛ регистру
|
||
Вызов: CALL @TST2
|
||
Вход: R0 - код символа
|
||
Выход: R0 - код символа на ЛАТ,ЗАГЛ регистре
|
||
|
||
ERROR - расшифровка номера ошибки дисковода
|
||
Вызов: CALL @ERROR
|
||
Вход: @#NAM - адрес блока параметров EMT36
|
||
@#52 - байт кода ошибки
|
||
Действие: В байт ответа блока параметров EMT36 помещается код
|
||
ошибки "4", далее анализируется байт содержащийся в
|
||
ячейке @#52, при нулевом его значении происходит вы-
|
||
ход из подпрограммы, при всех остальных же выводится
|
||
на экран текстовая спецификация ошибки.
|
||
|
||
Приложение 1
|
||
Схема распайки БК - Принтер
|
||
┌───────────────────────────────┬─────────────┬───────┬───────┐
|
||
│ Контакт │ Сигнал │Контакт│Контакт│
|
||
│6329│УПЗ │D100 │6337│6312 │6313│ │ БК │ КМ │
|
||
├────┼────┼─────┼────┼─────┼────┼─────────────┼───────┼───────┤
|
||
│B-05│B-14│ 2 │ 3 │ 2 │ 3 │DATA 1 (BD00)│ A16 │ 1 │
|
||
│B-06│B-13│ 3 │ 5 │ 3 │ 5 │DATA 2 (BD01)│ A13 │ 3 │
|
||
│B-07│B-12│ 4 │ 7 │ 4 │ 7 │DATA 3 (BD02)│ B12 │ 5 │
|
||
│B-08│B-11│ 5 │ 9 │ 5 │ 9 │DATA 4 (BD03)│ B10 │ 7 │
|
||
│B-09│B-10│ 6 │ 11 │ 6 │ 11 │DATA 5 (BD04)│ B5 │ 9 │
|
||
│B-10│B-08│ 7 │ 13 │ 7 │ 13 │DATA 6 (BD05)│ B7 │ 11 │
|
||
│B-11│B-09│ 8 │ 15 │ 8 │ 15 │DATA 7 (BD06)│ B6 │ 13 │
|
||
│B-12│B-07│ 9 │ 17 │ 9 │ 17 │DATA 8 (BD07)│ A7 │ 15 │
|
||
│B-02│B-06│ 1 │ 1 │ 1 │ 23 │STROBE (BD08)│ A28 │ 17 │
|
||
│B-03│B-04│ 14 │ 21 │ 11 │ 21 │BUSY (BB08)│ B31 │ 19 │
|
||
│A-01│A7,8│19-32│2-24│24-25│4-28│GND Общий│A18,B18│ 2-24 │
|
||
└────┴────┴─────┴────┴─────┴────┴─────────────┴───────┴───────┘
|