SMUC. Универсальный контроллер HDD, CMOS, NVRAM, IBM периферии. 1995 г.

Глава 3 - работа с жестким диском.


3. Работа с жестким диском

Пожалуй, наиболее важным и ожидаемым приспособлением нв универсальном контроллере внешних устройств SMUC является
IDE интерфейс жесткого диска. Этот интерфейс позволяет одновременно подключить до двух устройств, причем на сегодняшний день
этим популярным интерфейсом снабжаются не только жесткие диски, но и некоторые другие устройства, как то приводы дисхов
CD ROM. Программное обеспечение Теневого Монитора рассчитано пока только на обслуживание одного жесткого диска, но
аппаратно контроллер SMUC обеспечивает все возможности интерфейса IDE, реализация которых естественно будет осуществлена в
будущем.

Этот раздел описывает работу с жестким диском, подключенным к контроллеру SMUC. Собственно, работа с диском не многим
сложнее, чем с дискетой и дисководом, и, пожалуй, главным отличием является "не сменяемость" "дискеты" и на порядок больший ее
объем.

Начинать работу необходимо, естественно, с подключения жесткого диска ("вставить дискету"). Затем нужно определить
параметры устройства (вспомните, что и при работе с дискетой TR-DOS сначала пытается определить ее формат — число дорожек, и
сторон). Однако в отличие от дисковода, эта процедура для жесткого диска несколько сложнее, но зато должна выполняться только
один раз. На этом этап подключения заканчивается, и жесткий диск необходимо разметить — то есть создать информационные
структуры, разделить большой объем диска на приемлемые для работы части. Сразу скажем, понятие форматирование для жестких
дисков с интерфейсом IDE отсутствует, эти устройства выходят отформатированными с завода-изготовителя и больше в своей
"жизни" никогда формат не изменяют. Ну и. неконец, — собственно работа с данными нв жестком диске.

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

3.1. Подключение жесткого диска

Подключение жесткого диска с интерфейсом IDE, состоит из трех основных этапов. Аппаратное подключение, программная
идентификация и тестирование диска.

3.1.1. Аппаратное подключение HDD

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

Контроллер SMUC вставляется а разъем платы компьютера так, что бы детали контроллера 'смотрели" на детали платы.
Контроллер соединяется с жестким диском специальным 40 жильным плоским кабелем так, что бы 1 контакт совпал и на контроллере
и на жестком диске (на кабеле крайний провод, соответствующий 1 контакту, обычно промаркирован). Питание подается на жесткий
диск через специальный разъем, аналогичный такому же на дисководе.

После всех соединений можно включить питание, на
экране компьютера сразу же должна появиться знакомая
надпись "fast test of computer" (в последних версиях ТМ первой
появляется надпись об авторских правах), и далее несколько
сообщений о найденных (или не найденных) устройствах
контроллера SMUC (см. рис.3). После подачи питания жесткие
диски различных фирм и моделей ведут себя по-разному. Но
характерным является небольшая (не более секунды) пауза,
затем звук взлетающего самолета в миниатюре (у современных
моделей он почти не слышен), это раскрутка двигателя самих
дисков ("блинов"). Далее происходит "рекалибровка" и
внутренние тестирование механизма магнитных головок,
выражающееся в легком (а у старых моделей — довольно-таки
громком) 1похрюкивании". Вся операция по авл-отесгнрованию
происходит при каждом включении питания (и, кстати,
независимо от подключения к контроллеру), и длится от S—10
до 30 секунд.

Если после включения напряжения жесткий диск "молчит", то либо ему не хватает мощности источника питания (это можно
проверить, замерив тестером напряжение +5 и -и 2 В), либо неправильно (наоборот) подключен кабель, соединяющий жесткий диск и
контроллер. Недостаточная мощность источника питания может служить причиной нестабильной работы диска (особенно это
справедливо для старых моделей, которые могут потреблять в импульсе ток до нескольких ампер по 12 вольтам, для сравнения новые
современные жесткие диски могут потреблять меньше дисковода для гибких дисков).

Теперь посмотрим на экран. Если, несмотря на Потуга" жесткого диска, на экране сразу появляется надпись "Hard disk not found",
то, опять-таки, скорее всего "перевернут" кабель или недостаточно питания для интерфейса жесткого диска (интерфейсная часть
любого жесткого диска, как правило, работает даже при выявлении ошибок аатотестирования и сообщает о них контроллеру).
Возможно, впрочем полная неработоспособность всей электроники диска.

3.1.2. Программное подключение

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

Успешно опознанный жесткий диск выдает на экран компьютера надпись вида "IDE/AT 42 MB Hard disk found*, где вместо числа
42 будет стоять определенный программой объем вашего диска. Если этот объем не соответствует действительному объему диска,
значит этот диск не правильно сообщает о себе программе и требует ручной настройки параметров, о чем чуть ниже. Далее выводятся
три строки с информацией фирмы производителя. Первая строка, как правило, содержит осмысленное имя фирмы или модели, две
другие серийный номер и дату производства модели, но каждый производитель волен вписывать что хочет. Монитором не
предусмотрены какие-либо задержки для рассматривания этих надписей, если они вас все-таки заинтересовали, нажмнте (и не
отпускайте) кнопку "Сброс", но после обязательно произведите "холодный" запуск компьютера (сброс с удерживаемой на клавиатуре
клавишей "Стрелка влево").

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

Если у вас старый и медленный диск, то возможно он не успеет выполнить все внутренние тесты ко времени проверки его
стартовой программой монитора, в этом случае на экране компьютера вместо вышеприведенных сообщения возникнет какое-либо
сообщение об ошибке (скорее всего "Hard disk data not ready" или "Busy not found"). В этом случае попробуйте не выключая питания
произвести повторный "холодный" старт компьютера. Если он не поможет (продолжают появляться сообщения об ошибке), то
проверьте еще раз аппаратное подключение контроллера SMUC и жесткого диска. Возможно, что с таким экземпляром диска
необходима ручная установка параметров, либо он не сможет работать вообще.

3.1.2.1. Автоматическая идентификация

Итак, мы в меню Теневого Сервис-Монитора. Выбирайте пункт меню "Hard disk utility*, а в нем "Set Up".

Как понятно из названия автоматическая идентификация жесткого диска происходит автоматически. Собственно, первая
автоматическая идентификация уже произошла (см. предыдущий раздел). Или, по крайней мере, пыталась произойти. Результаты
процесса отображаются в пунктах меню Cylinders, Head и Sector, которые показывают "геометрические" параметры жесткого диска,
соответственно число цилиндров, головок и секторов. Эти параметры в идеальном случае должны соответствовать паспортным
параметрам жесткого диска Вы можете еще раз. "на всякий случай", выполнить процедуру автоконфигурирования жесткого диска,
выбрав пумст "Auto detection hard disk". "Геометрические" размеры должны оставаться стабильными и неизменными.

Итак, если все я порядке, данные найденные совпадают с данными ожидаемыми, то можно разрешить идентификацию при
старте (она разрешена по умолчанию, пункт меню "on start" в состояние ON), и сразу переходить к тестированию жесткого диска. В
противном случае переходите к ручной идентификации диска.

3.1.2.2. Ручная настройка параметров

Собственно вы должны ввести в пунктах меню 'Hard disk
utiltty/Set Up" реальные "геометрические" размеры вашего жесткого
диска (см. рис.4). Это число цилиндров, головок, и секторов. Эти ,
параметры иногда приводят на корпусе самих дисков, если их нет,
то обратитесь к продавцу всучившему вам это чудо.

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

Итак, вы ввели реальные параметры жесткого диска. Теперь
необходимо позаботиться, что бы стартовая программа Монитора
не проводила автоидентификацию , при "холодном" сбросе
компьютера Дня этого переведите пункт "on start" в состояние OFF.

3.1.2.3. Сохранение параметров настройки

Любые изменения параметров в меню Теневого Сервис-Монитора действуют только до момента выключения питания или
"холодного" сброса компьютера. После чего все восстанавливается в состояние "ло умолчанию". Это в полной мере относится к
параметрам жесткого диска и состоянию триггера "on start*. Однако не все так печально. На контроллере SMUC установлены
микросхемы энергонезависимой памяти, которые способны хранить часть жизненно важных переменных Монитора, и восстанавливать
их сразу после включения питания. Однако записать эти переменные в память необходимо вручную.

Выйдите в главное меню Сервис-Монитора ("Main menu"), затем выберите подменю "Set Up", а в нем подменю "Monitor. Теперь
выберите пункт "Save CMOS'. Все сделанные Вами установки параметров будут сохранены в микросхеме энергонезависимой памяти
(NVRAM), которая установлена на всех выпускаемых контроллерах.

3.1.3- Тестирование жесткого диска

После автоматической, а тем более ручной идентификации жесткого диска, необходимо проварить как будет работать диск с
установленными "геометрическими* размерами. Для этого в подменю Set Up меню Hard disk utility можно выбрать два теста, первый
(обозначаемый цифрой 1) предназначен для проверки схемы трансляции секторов внутри жесткого диска и выявления нечитаемых
секторов. Кроме этого, тест позволяет визуально оценить скорость жесткого диска, поскольку использует реальные подпрограммы
драйвера, "зашитого" в ПЗУ Теневого Монитора. Второй тест (обозначенный цифрой 2) более длителен и сложен. Он позволяет
проверить механизм передачи данных, то есть работу схемы IDE "в усиленном режиме*.

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

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

Второй тест является более информативным, но и более опасным. Его алгоритм следующий — из сектора считывавтся
находящаяся там информация, затем сектор записывается псевдослучайным кодом, после чего новая информация считывавтся и
проверяется с записанной, ну а в сектор возвращается прежнее значение. Такая операция производится для всех секторов на жестком
диске. Как видно, тест не только полагается на диагностику ошибок, выдаваемую самим диском, но и объективно проверяет качество
тракта записи/чтения. Почему тест опасен — очевидно. Если имеются ошибки записи, то в сектор можат не вернуться, находившееся
там до операции значение, к тому же непредвиденное прерывание теста (выключение питания, ручной или произвольный сброс
компьютера) может привести к аналогичным последствиям. Поэтому, во-первых, производите второй тест только после успешного
прохождения первого, а. во-вторых, прерывайте прохождение теста только по команде с клавиатуры BREAK.

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

Несколько замечаний по управлению выводом сообщений об ошибках, вы можете приостановить вывод текста (и тест), нажав на
клавишу SPACE, в этом состоянии отмена дальнейшего прохождения теста — клавише EDIT/C, ну а клавиша ENTER продолжает тест.

На тестировании заканчивается этап подключения жесткого диска, теперь необходимо создать готическую структуру для
хранения данных.

3.2. Создание информационных разделов

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

Для чего нужны несколько систем1? Этот вопрос должен рассматриваться не здесь, но кратко отметим, что, ни одна из
существующих на ZX Spectrum дисковых систем не охватывает а полной мере всех интересов всех пользователей. TR DOS де факта
стал "общей" системой, и в том числе для хранений игровых программ. Is DOS — система для делопроизводства. Micro DOS — лучшее
средство для программиста и т. д. Кроме этого, вполне можно совмещать использование одного и того жв жесткого диска на
ZX Spectrum и, скажем, на IBM PC. Для совмещения всех этих требований был разработан формат хранения данных, который в
достаточном объеме поддерживается Теневым Монитором.

3.2.1. Глобальная таблица разделов (MBR)

Прежде всего необходимо разграничить доступ к
жесткому диску со стороны ZX Spectrum и. если
необходимо, ОС других компьютеров. Для этого на диске
создается, так называемая, главная загрузочная запись
(Master Boot Record, MBR), а в ней главная таблица
разделся (Global Partition Table, GPT). Идея такая: один
раздел — одна система.

В подменю Hard disk utility выберите пункт Partition
manager (см. рис. 5) и войдите а редактор разделов.
Обратите внимание на названия подменю, оно должно
быть "Global partition manager" (см. рис. 6), если же вы
попали в "Local partition manager" это означает, что
данный жесткий диск уже использовался на ZX Spectrum,
и MBR создана. Посмотрите на текущую главную таблицу
разделов, выберите пункт Partition Information.

На экране появится таблица, в которой справа выводится тип раздела, а слева — объем раздела в мегабайтах. Отказаться от
просмотра таблицы можно воспользовавшись клавишей EDIT/C.

Тип Unused означает "пустое" место (свободную запись в
таблице, несоответствующую никакому типу). Если ваш диск не
новый, то вероятно весь его объем будет разбит на несколько
(или один) разделов MS DOS или других. Воспользуйтесь пунктом
Delete partition для удаления ненужных вам разделов (подведите
курсор на эфа не к занятой записи и нажмите ENTER).

Теперь можно приступать к созданию специального
"слектрумоеекого" раздела. Выберите пункт Create partition..., в
появившейся знакомой таблице выберите строчку Unused,
нажмите клавишу ENTER. Отредактируйте, если необходимо,
число в правой части строки (см. рис. 7). Как уже говорилось, это
число задает объем создаваемого раздела. Если работа с
другими компьютерами не предполагается, то оставьте число без
изменений. Снова нажмите на клавишу ENTER. В таблице будет
создан раздел с названием MFS, и заданным объемом. Пункт
Create partition... может создавать только раздел MFS, для
создания других типов разделов необходимо использовать
соответствующие программы других ОС.

Если предполагается работа с несколькими компьютерами, то можно "разбить" жесткий диск стандартными средствами, скажем,
на IBM PC, например программой fdisk, оставив для раздела MFS необходимое место.

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

Заметьте, что все действия по редактированию
таблицы разделов происходит в памяти компьютера,
можно удалять и создавать раздел, сколько угодно, но
для того, что бы информация попала на диск,
необходимо выбрать пункт Write to disk. И только после
подтверждения операции (клавиша Y) главная таблица
разделов будет записана. Пункт Restore from disk, служит
для копирования в память компьютера текущей таблицы
с диска. Если вы что-либо изменили, находясь а подменю
редактора, то при попытке выхода из подменю вам будет
предложено либо записать изменения (опять-таки,
клавиша Y), либо отказаться от изменений и оставить все
как было (любая другая клавиша).

Серьезно относитесь к изменению таблиц разделов, поскольку изменение формата таблицы нарушает существующие связи и
приводит к потере ранее содержавшейся на жестком диске информации.Обратите внимание, что мы ничего не говорим о
максимальном размере создаваемого раздела MFS. И действительно, его размер практически ничем не ограничен. Хотя, Теневой
Монитор может иметь доступ к объему около 1800 Мб, объем раздел» может быть и больше, но "лишняя" часть просто пропадет зря.

Как только раздел MFS создан к главной таблице разделов, в подменю Global partition table "открывается" пункт Local partition
table. Выбрав этот пункт вы попадете в похожее подменю редактора локальных разделов или подразделов.

3.2.2. Локальная таблица (под)разделов

Созданный в главной таблице "слектрумовский" раздел MFS, должен, в свою очередь, быть разделен на один (а, скорее,
несколько) подразделов. Каждый подраздел способен "нести" свою операционную систему в рамках ZX Spectrum. В текущей вереи»
Теневого Монитора предусмотрены следующие типы ОС: TR-DOS, Micro DOS, IsDOS. В следующих версиях возможно добавление
других систем, если в этом будет необходимость. Отмечу, что только TR-DOS пока полностью поддерживается встроенным
программным обеспечением Теневого Сервис-Монитора. Для остальных ОС должны существовать соответствующие драйверы в
рамках этих ОС-

Сразу отметим ограничение раздела MFS — он может содержать до 63 различных подразделов, о&ьемом до 32 Мб каждый.
Кроме типа подразделы различаются именами, можно создать несколько подразделов одного типа, но с разными названиями. Длина
имени не более шести символов.

3.2.2.1. Коллекции дискет (Подразделы TR-DOS)

Наиболее важной (и сложной) особенностью встроенного программного обеспечения является попытка эмуляции на жестком
диске дисковой системы TR-DOS В силу разных обстоятельств и несмотря на вопиющие ошибки и недостатки именно эта система
стала наиболее распространенной для слектрум-совместимых компьютеров в нашей стране. Поэтому именно этой ОС с самого начала
работы уделено наибольшее внимание.

При сравнении объема дискеты, на который ориентирована TR-DOS, и объема подраздела на жестком диске сразу бросается в
глаза несоразмерность служебной информации в каталоге дискеты. Каталог не был рассчитан на большие объемы Попытка как-то
изменить саму систему, "подогнать" ее параметры к жесткому диску неминуемо привела бы к несовместимости новой и старой версий,
а в конечном итоге — просто к новой операционной системе, причем с заведомо плохими характеристиками. Не пытаясь
реанимировать TR-DOS, Теневой Монитор, в тоже время, дает возможность использовать жесткий диск для работы со старой
системой.

Идея чрезвычайно проста — жесткий диск представляет собой коллекцию псеедодискет, формат которых в точности
соответствует обычным дискетам. Специальные средства позволяют "вставлять" такие дискеты в "обычные" дисководы, a TR-DOS
даже не догадывается, что работает с эмулятором. Непосредственно работе посвящена целая часть этого описания, здесь же мы
рассхажем как создать коллекцию псевдодисков (подразделов TR-DOS).

Для начала нужно создать подраздел TR-DOS. Выберите
пункт Create partition... (напомним, это необходимо делать в
подменю Local partition manager). Подведите курсор с строке с
надписью Unused (в начале это единственная строка),
нажмите клавишу ENTER В строке появится надпись TR-DOS
— снова нажмите ENTER. Теперь необходимо ввести имя
подраздела. Это имя будет в последующем использовано для
доступа к хранящимся а подразделе псевдодискам. Оно может
содержать до € символов. Зафиксируйте ввод имени
клавишей Enter. Наконец необходимо выбрать объем
подраздела — введите число, равное количеству
псевдодисков, содержащихся в атом подразделе.
Минимальное число дисков — один, максимальное — 51
(естественно, если хватит свободного места в данном
подразделе). По умолчанию предлагается максимально
возможное в данном подразделе количество. Зафиксируйте
число псевдодисков — нажмите на клавишу ENTER
(см. рис. в).

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

Можно создать несколько коллекций псевдодисков, важно
только, что бы имена у них были разные.Примите во внимание одно
обстоятельство. Коллекция псевдодисков может быть удалена так же
как и раздел в глобальной таблице (как и любой другой подраздел,
пункт Delete partition...), но только целиком. Текущее программное
обеспечение не предусматривает уменьшение/увеличение размера
ШГЛ1Г|д! подраздела. Разрабатываемая сейчас программа поддержки жестким

Partition ui.lL Ье changed. диском некоторых функций Теневого Монитора будет требовать на

Write (Y/Ц)? жестком диске некоторого количества памяти (планируется до 3—

5 Мб). Вероятнее всего, тип используемого подраздела должен будет
быть Micro DOS. Поэтому, рекомендуется оставить несколько
мегабайт незанятыми(игизе<1), для того чтобы в последствии не
пришлось переразмечать весь жесткий диск

Рис. 9

3.2.2.2. Подразделы операционных систем

Создание подразделов IsDOS и Micro DOS ничем существенно не отличается от создания подраздела TR-DOS. Выберите пункт
Create partition..., подведите курсор к свободному подразделу (Unused), нажмите клавишу ENTER. Клавишей SPACE выберите
необходимый тип, зафиксируйте выбор клавишей ENTER. Затем введите имя подраздела (не более шести символов), зафиксируйте
имя, и, наконец, задайте объем подраздела в килобайтах. Объем подраздела не может быть менее 256 Кб или превышать 32 Мб
(точнее 32767 Кб), Как и для подраздела TR-DOS можно создать несколько подразделов с одним типом ОС, но разными именами.

Созданный подраздел — это просто выделенное (зарезервированное) место для выбранной ОС на жестком диске. Для реальной
работы ОС необходим драйвер, натканный в рамках этой ОС. В ПЗУ имеются все необходимые средства (вызовы RST9) для
поддержания такого драйвера. Нет сомнения, что в скором времени драйвера будут написаны для обеих систем. Для системы ISDOS
такой драйвер нами написан. Подробнее смотрите раздел 3.4 " Работа с жестким диском для ISDOS*

3.3. Работа с жестким диском для TR-DOS

Как уже говорилось работа жесткого диска в рамках системы TR-DOS практически ничем не отличается от таковой с реальными
дискетами.

3.3.1. Виртуальные и физические дисководы

Аппаратная поддержка операционной системы TR-DOS (Betta Disk interface) исторически поддерживает до четырех реальных
дисководов. В системе они обозначаются символами А, В, С и D соответственно. Реально же подключается один, максимум два
дисковода, устройства С и D как бы пропадают. Изначально планировалось именно на эти не используемые символы назначать
созданные на жестком диске псе вд од искать. Эти дисководы становились виртуальными — для TR-DOS они есть, а для Beta Disk
Interface их нет. Однако потом оказалось возможным (для единообразия) предусмотреть такую возможность для всех четырех
устройств.

Но возник вопрос — как указать системе, что, скажем, дисковод В сейчас является физическим (если он подключен к
компьютеру), а не виртуальным и наоборот? Для выхода из подобной ситуации было введено понятие связи имени дисковода и Образа
дискеты на жестком диске. Если связь установлена — дисковод является виртуальным, и при обращение к нему выбор физического
дисковода не происходит. Если связи нет — дисковод физический.

3.3.2. Подключение образа дискеты .

Установка связи между устройством и псевдодиском
осуществляется в подменю Hard disk utility. Для каждого
устройства есть пункт Mount (монтировать, подключать), с
последующим именем виртуального дисковода. Выбор этого
пункта приводит к появлению на экране текущей таблицы
локальных разделов. Из нее необходимо выбрать какую-либо
коллекцию псевдодисков (выбор фиксируется нажатием
клавиши ENTER). После чего появляется каталог коллекции,
подведите курсор к нужному диску и зафиксируйте выбор
(см. рис. 10).

ш 1993 Profesional Extention ncrcb

-9? ПОЙ Shadow service Monitor 22-ei

Analyser из.9е
Hard disk utility

Имя выбранного (подключенного) псевдодиска появится
в строке Mount. Имя составное, первым стоит имя коллекции
(подраздела TR-DOS), а через символ V следует имя образа
диска (см. рис. 11).

Теперь любое обращение из TR-DOS или из монитора к
соответствующему виртуальному дисководу, будет
"направлено* на жесткий диск. Можно "отформатировать'*
псевдодиск (лучше выбрать "быстрое* форматирование в
подменю Disk Utility пункт Quick format disk), и скопировать на
виртуальный диск файлы с реального диска.

Текущие назначения автоматически запоминаются на жестком
диске и восстанавливаются при "холодном" старте
компьютера.

3.3.3. Отключение от виртуального диска

Если необходимо разорвать связь между именем устройства TR-DOS и псевдодиском на жестком диске, например, что бы
вернуть физический диск В, необходимо выбрать пункт Dismount... в подменю Hard disk utility. При этом все пункты Mount заменятся на
Dismount. Выберите пункт, соответствующий нужному диску, например Dismount В. Все пункты Dismount вновь "обратятся" в Mount,
однако у выбранного пункта исчезнет имя псевдодиска.

3.3.4. Особенности работы в мониторе и TR-DOS

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

Приготовьтесь к тому, что некоторая небольшая часть программ, ранее худо-бедно работавшая с дискет TR-DOS, теперь
работать не будет. Это относится, в основном, к старым программам, которые не учитывали особенности функционирования дисковой
системы, либо, в силу своей специфики, очень тесно "общались" с дисковым контроллером. Вносимые нами неизбежные правки в
коды TR-DOS, по возможности не затрагивали "нижний" уровень системы и жизненно важные функции. Но "нет в жизни совершенства",
и на что-то, увы, эти изменения повлияют.

Несколько слое об автозапуске компьютера. Если в подменю "Disk Utility" пункт "Autostart" находится в состоянии ON, то при
любом старте компьютера (после "холодного" или "теплого" сброса) будет происходить автоматический запуск опвряционной системы,
находящейся на устройстве, указанном в пункте "from drive" этого же подменю. Не забудьте выполнить запись текущего состояния в
энергонезависимую память. Для системы TR-DOS это означает, что произойдет попытка выполнения программы "boot<B>", если
таковая программа на дискете или псевдодискете присутствует. Фактически как бы выполняется автоматическое нажатие клавиши
ENTER в меню 128 Бейсика, а системе передается команда RUN "boot' для устройства А, и RUN "x:boot" для остальных (где х — имя
диска). Таким образом, вы каждый раз автоматически оказываетесь в знакомой для себя среде. Замечание, не все файловые
оболочки ("буты") смогут загружаться автоматически с устройства, отличного от А. Это относится к тем из них, кто полагается, во-
первых, на фиксированное распределение памяти после старта (обратите внимание на два лишних символа в команде RUN для
устройств B...D). А, ао-вторых, для тех, кто не проверят имя дисковода своей загрузки, такие программы пытаются подгрузить свои
файлы всегда с фиксированного дисковода (А).При желании вое эти загрузчики можно просто доработать и сделать их загружаемыми
при автостарте.

3.4. Работа с жестким диском для IsDOS

Как и для TR-DOS. работа с жестким диском из IsDOS мало чем отличается от работы с дискетой. Хотя и существуют несколько
специфических моментов.

3.4.1. Создание подраздела

Для начала необходимо создать один (или несколько)
подразделов типа IsDOS. Выберите пункт Create partition...
(напомним, это необходимо делать в подменю Local partition
manager). Подведите курсор с строке с надписью Unused,
нажмите клавишу ENTER.

В строке появится надпись TR-DOS. Клавишей SPACE
выберите тип IsDOS (типы циклически меняются при нажатии
на клавишу), зафиксируйте выбор клавишей ENTER. Введите
имя подраздела (не более шести символов). Зафиксируйте
ввод имени клавишей Enter. И, наконец, задайте объем
подраздела в килобайтах (см. рис.12).

Фирма ИскраСофт требует, что бы объем раздела не
превышал 16384 Кб. На наш взгляд оптимальное значение
8000-10000 Кб. Запомните точную цифру (поскольку, к
сожалению, в настоящее время при последующих просмотрах
таблицы объем раздела выводится в целых мегабайтах).

Производимые манипуляции при создании разделов IsDOS запишутся на жесткий диск только при выходе из подменю Local
Partition manager (или при явном выборе пункта Write to disk). Для подтверждения изменений в таблице на появившейся запрос
необходимо дать утвердительный ответ (клавиша Y).

3.4.2. Подключение драйвера

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

Загрузите ОС IsDOS с дискеты (для работы с жестким диском может быть использован только вариант Classic). Загрузите
драйвер mhdd.blk в память, для этого установите курсор на имя файла и нажмите клавишу ENTER. Убедиться в загрузке драйвера
можно программой dev.com, обычно расположенной в каталоге UT1L — в левой панели должно появиться упоминание о драйвере
(MHOD). Установив курсор на строку с именем драйвера (в левой панели), в правой панели программы можно выбрать устройство
IsDOS, которое будет подключено к жесткому диску (символ "+" обозначает подключение, изменяется статус устройства клавишей
SPACE).

Какое устройство выбрать? Теневой Монитор позволяет
одновременно работать с четырьмя подразделами любых
систем (поскольку именно четыре устройства могут быть
подключены а меню теневого монитора). В текущей версии
соблюдается, кроме того, следующее соглашение — имена
устройств ТМ и имена устройств, обслуживаемых драйвером
mhdd.blk, совпадают. То есть, устройству А в Теневом
Мониторе, соответствует устройство А в IsDOS, устройству В

— В, и т. д. до устройства D. Из-за того, что устройство А и С
обычно заняты (первое под дисковод, второе под электронный
диск), остаются устройства В и D (см. рис. 11). (Устройство В,
занятое под второй дисковод драйвером sys driv, можно на
время работы с жестким диском отключить от этого драйвера

— короче, вы можете сами конфигурировать свою систему.)
Лослв того, как драйвер mhdd.blk загружен в память и
подключен к какому-либо устройству, необходимо подключить
подрвздел IsDOS на жестком диске к одноименному
устройству в Теневом Мониторе.

Для этого войдите в ТМ (нажатием на кнопку Magic), в
меню Hard disk utility выберите пункт Mount соответствующего
устройства, а затем из таблицы локальных разделов выберите
нужный подрчздел. Процедура связи устройства и подраздела
ничем не отличается от таковой для псевдодисков TR-DOS, за
тем исключением, что достаточно просто выбрать подраздел
IsDOS. Верните» в программу — выйдите из ТМ.

Теперь, когда связь установлена, можно приступать к
созданию логической структуры в подразделе. Для этого
воспользуйтесь программой create.com, обычно находящейся
в каталоге SERVICE. Установите имя устройства, связанного
с жестким диеном, измените параметры устройства: Sec Size
(размер сектора) — 256; DevSIze (размер устройства) —
объем подраздела в килобайтах, уменьшенный на единицу и
умноженный затем на четыре. Например, при объеме раздела
5000 Кб, (5000-1) * 4 = 19996 (программа «скорректирует» это
значение до 19992 (см. рис. 14)). После успешного
завершения создания устройства с ним можно работать, как с
обычной дискетой.

При последующих загрузках IsDOS необходимо повторить пункты подключения драйвера (кроме, конечно, вызова программы
creat.com — ведь структура уже создана), либо модифицировать стартовый командный файл для автоматической загрузки драйвера
жесткого диска (подключения, сделанные а Теневом Мониторе сохраняются автоматически). Используйте документацию фирмы
ИскраСофт.

Необходимо отметить, что можно «одновременно» работать более, чем с одним устройством (и, соответственно, подразделом)
на жестком диске — подключите к драйверу mhdd несколько устройств, а в Теневом Мониторе свяжите с одноименными устройствами
несколько подразделов с типом IsDOS. Затем создайте логические структуры на каждом из них. Более того, можно к одному и тому же
устройству IsDOS подключать непосредственно в процессе работы разные подразделы. Для этого войдите в Теневой Монитор и
свяжите с нужным устройством подраздел IsDOS, зятем вернитесь в операционную систему IsDOS и перечитайте каталог устройства.

3.4.3. Автозагрузка IsDOS

Применение дискеты для загрузки системы, когда есть жесткий диск несколько утомляет и может вызвать недоумение. Мы
предлагаем отказаться от загрузочной дискеты, и воспользоваться механизмом автостарта TR-DOS программ. В двух словах метод
выглядит так: вы загружаете операционную систему IsDOS как обычно, настращаете ее под свои нужды, е затем создаете в ТМ файл-
образ памяти компьютера (он создается в рамках системы TR-DOS), помещаете этот файл не жесткий диск н указываете компьютеру
автозагрузку этого файла. В результате сразу после включения питания происходит «автоматический* запуск IsDOS (на самом деле
аы просто оказываетесь а той точке, из которой делали файл-образ памяти, со всеми настройками и назначениями в системе).
Конечно, это не самое лучшее, но пока единственно возможное решение проблемы.

Теперь об этом более подробно. Во-первых, научитесь работать с драйвером жесткого диска, как это показано в предыдущем
разделе. К моменту создания файла-образа копии памяти вы уже должны уметь работать из IsDOS с жестким диском. Во-вторых,
подготовьте образ диска TR-DOS, кудв вы будите сохранять копию системы. Далее сделайте следующее:

1. Сбросьте компьютер.

2. Загрузите операционную систему IsDOS с дискеты как обычно.

3. Загрузите в память компьютера драйвер жесткого диска mhdd.blk.

4. Настройте драйвер программой dev.com.

Теперь можно сохранить копию памяти. Замечание: для того, что бы при последующей загрузке буфера драйвера жесткого диска
оказались чистыми перед сохранением копии памяти не выбирайте в панель файловой оболочки IsDOS устройство, подключенное к
жесткому диску. Лучше всего если вы вызовите панель выбора устройств, подведете курсор к нужному имени и в этот момент
сохраните копию памяти. Тогда в будущем вам останется только нажать на клавишу ENTER.

Для создания копии памяти воспользуйтесь меню Save & Load Теневого Монитора, подробно об альтернативных Magic-файлах
рассказывается в брошюре А. А. Ларченко "Краткое описание функций Профессионального Расширения Теневого сервис Монитора
компьютера «Scorpion ZS 256 Turbo»". Кратко дело обстоит следующим образом: для сохранения копии памяти нужно выбрать пункт
Save... в меню Save & Load of program. Запись на диск начнётся сразу после задания в появившемся служебном окне имени файла.
Имя файлв задается без кавычек и указания типа, но в общем случав должно предваряться именем диска (отделенного двоеточием)
Например, задание имвни isdcsimg, приведет к созданию файлов (а их скорее зсего будет несколько) на текущем для ТМ устройстве (а
вы помните какое устройство является текущим? Можно посмотреть в ТМ, но зачем усложнять себе жизнь?). Задав имя файла в виде
b:isdosimg вы явно указываете на каком устройства создавать файл-образ памяти.

Создав на псевдодиске файл копии памяти с IsDOS, допишите туда же бейсик-программу загрузчик, имя программы должно быть
"boot":

10 CLEAR 28900 130 RANDOMIZE USR 29000

20 REM ---- Change file name 140 STOP

30 LET n$= "isdosimg" 150 REM ---------------------

40 REM 160 FOR i*0 TO с

SO REM----Load program n$ 170 READ d

60 LET a=29000 180 POKE a,d

70 LET c»9: GO SUB 160 190 LET a=a+l

80 FOR i=l TO LEN (n$) 200 NEXT i

90 POKE a,CODE n$(i) 210 RETURN

100 LET a=a+l 220 REM----Code

110 NEXT i 230 DATA 217,229,1,0,0.58,246,82,

120 LET c=3: GO SUB 160 207,139,0,225,217,201

В строке 30 можно указать другое имя файла полной копии памяти.

Для включения режима автостарта необходимо в подменю «Disk Utility» пункт «Autostart» установить в состоянии ON. а в пункте
«from drive» указать имя устройства, связанного с псевдодиском. Не забудьте записать эти изменения в энергонезависимую память.
Более полная информация о режиме автостарта содержится а уже упомянутой ранее брошюре 'Краткое описание функций
Профессионального Расширения Теневого сервис Монитора компьютера «Scorpion ZS 256 Turbo»".

3.5. Работа других операционных систем

Как уже говорилось, для работы ОС отличной от TR-DOS необходим специальный драйвер, который будет осуществлять доступ
ядра ОС к выделенному разделу жесткого диска. В настоящее время ведется работа над подключением двух систем Micro DOS и
IsDOS. Micro DOS (порт системы СР/М) — полноценная ОС, изначально ориентированная на работу с жестким диском, необходима
прежде всего для расширения функционирования Теневого Монитора. При этом система будет полностью "прозрачна* для
пользователя — то есть при желании (или "не желании*) он вообще не будет знать, что такая система установлен в на его компьютере
Основная цель проекте — поддержка программиста, напомню, что большая часть ТМ былв написана в рамках программ,
использующих СР/М.

Разбор функционирования системы Is-DOS показал, что при ее проектировании были учтены (по нашему мнению) не все
требования, предъявляемые для системы, которая должна автономно работать на жестком диске. Это создает известные неудобства,
как например, при работе с контроллером компьютера KAY — загрузка системы происходит с дискеты, после чего подгружается
драйвер жесткого диска. Предложенный выше способ автозагрузки системы не может быть признан удачным, поэтому работы в этом
направлении будут, конечно, продолжены.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Железо - CDROM в ваш дом: документация по ATAPI(IDE) CD-ROM
От авторов - о внеочередном номере ZX-Format'a.
Игры - новелла: покушение на LАSER SQUАD...
Страницы истории - историия о том, как Спектрум "пошёл в народ"...
B.B.S. Новости - О 2-х новых B.B.S. : ZS-BBS & SRR-BBS.

В этот день...   21 ноября