Логотип.
 Разделы сайта Cтатьи.
Сайт в разработке!

Статистика сайта.

Посещений за день: 230
Посещений за месяц: 1872
Посещений за год: 13917


Баннеры.

DMconnect
Maksy's PWS


Статистика в картинках.

likes counter


  • Главная.
  • Новости.
  • Программы.
  • Файлы.
  • Контакты.
  • Чат "Пиво".
  • Форум.
  • Статьи.
  • Ссылки.
  • Гостевая.
  • Монументальная статья по универсальному контроллеру периферии SMUC.

     26 октября 1996 года поступили в прода жу платы универсального контроллера пери ферии SMUC для компьютеров Scorpion ZS 256. В комплекте с платой контроллера пос тавляется полное описание, как аппаратно го подключения SMUC, так и программного обеспечения, которое реализовано в рамках ПрофПЗУ версии 3.98 и выше. Эта статья, частично повторяющая описание, предназна чена прежде всего для владельцев "Скорпио нов", которые уже могут работать со SMUC и жестким диском. Выход в свет ПрофПЗУ вер сии 4.0, которое позволит использовать SMUC на любом скорпион-совместимом компью тере, ожидается чуть позже.

      В статье рассказывается о программной поддержке контроллера, работе с операцион ной системой TR-DOS. В приложениях, пред назначенных для программистов, приводятся описания вызовов Теневого Монитора для ра боты с жестким диском ("винчестером") и энергонезависимыми часами, пример работы с этими вызовами - текст экспериментального драйвера для системы IsDOS. А также при мер программы доступа к картам IBM PC XT, подключаемым к SMUC.

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

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

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

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

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

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

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

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

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

     

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

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

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

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

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

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

      кабель, соединяющий жесткий диск и кон троллер. Hедостаточная мощность источника питания может служить причиной неста бильной работы диска (особенно это спра ведливо для старых моделей, которые могут потреблять в импульсе до нескольких ампер по 12 вольтам, для сравнения новые совре менные жесткие диски могут потреблять меньше дисковода для гибких дисков).

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

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

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

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

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

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

     

     

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

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

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

     

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

      Hебольшое замечание - некоторые типы "винчестеров" имеют число цилиндров больше, чем 1023, а программное обеспече ние пока не в состоянии обрабатывать та кие значения. Поэтому воспользуйтесь руч

      ной настройкой параметров, и установите число цилиндров в 1023.

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

      1.1.2.2. Ручная настройка "винчестера"

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

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

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

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

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

      ненно важные переменные Монитора. Однако записать их в память нужно вручную.

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

      1.1.3. Тестирование жесткого диска

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

     

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

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

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

      Второй тест является более информатив ным, но и более опасным. Его алгоритм сле дующий - из сектора ститывается, находя щаяся там, информация, затем сектор запи сывается псевдослучайным кодом, после че го новая информация считывается и прове

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

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

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

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

     

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

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

      работать с несколькими операционными сис темами и даже в разных "классах" компьюте ров в рамках одного диска (благо объем диска это вполне позволяет).

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

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

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

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

      Посмотрите на текущую главную таблицу разделов, выберите пункт Partition information. Hа экране появится таблица, в

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

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

      Снова нажмите на клавишу ENTER. В таблице будет создан раздел с названием MFS, и за данным объемом. Пункт Create partition... может создавать только раздел MFS, для создания других типов разделов необходимо использовать соответствующие программы других ОС.

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

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

      Заметьте, что все действия по редакти рованию таблицы разделов происходит в па

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

      Обратите внимание, что я ничего не го ворил о максимальном размере создаваемого раздела MFS. И действительно, его размер практически ничем не ограничен. Хотя, Те

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

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

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

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

      Отмечу, что только TR-DOS пока полностью поддерживается встроенным программным обеспечением Теневого Сервис-Монитора. Для остальных ОС должны существовать соответ ствующие драйверы в рамках этих ОС.

      Сразу отмечу ограничение раздела MFS он может содержать до 63 различных подраз делов, объемом до 32 Мб каждый.

      Кроме типа подразделы различаются име нами, можно создать несколько подразделов одного типа, но с разными названиями. Дли на имени не более шести символов.

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

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

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

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

      Идея чрезвычайно проста - жесткий диск представляет собой коллекцию псевдодискет,

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

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

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

      Можно создать несколько коллекций псев додисков, важно только, что бы имена у них были разные.

     

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

      Разрабатываемая сейчас программа под держки жестким диском некоторых функций Теневого Монитора будет требовать на жес тком диске некоторого количества памяти (планируется до 3-5 Мб). Вероятнее всего, тип используемого подраздела должен будет быть Micro DOS. Поэтому, рекомендуется ос тавить несколько мегабайт незанятыми.

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

      Создание подразделов IsDOS и Micro DOS ничем существенно не отличается от созда ния подраздела TR-DOS. Выберите пункт Create partition..., подведите курсор к

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

      Как и для подраздела TR-DOS можно соз дать несколько подразделов с одним типом ОС, но разными именами.

      Созданный подраздел - это просто выде ленное (зарезервированное) место для выб ранной ОС на жестком диске. Для реальной работы ОС необходим драйвер, написанный в рамках этой ОС. В ПЗУ имеются все необхо димые средства (вызовы RST 8) для поддер жания такого драйвера. Hет сомнения, что в скором времени драйвера будут написаны для обеих систем. Текст эспериментального драйвера (beta-версия) для системы IsDOS приведен в приложении 2.

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

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

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

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

      реть такую возможность для всех четырех устройств.

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

      Из этого правила есть одно исключение это устройство A. При работе из TR-DOS оно никогда не бывает виртуальным.

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

      Установка связи между устройством и псевдодиском осуществляется в подменю Hard disk utility. Для каждого устройства есть

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

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

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

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

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

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

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

      Итак, подключив жесткий диск, сделав на нем структуру подразделов и коллекций, связав псевдодиск и дисковод, тем самым

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

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

      Для "смягчения" ситуации и помощи "неп равильным" программам, оставлена одна ла зейка. Это устройство A. Если доступ к этому "дисководу" осуществляется из мони тора (загрузка файлов из отладчика, диско

      вые операции в меню), то никаких ограниче ний нет. Если же работает TR-DOS, то ми нуя все назначения, дисковод A всегда ос тается физическим устройством. Сделано это намеренно, для обеспечения работы тех программ, которые нестандартно используют TR-DOS, либо не могут работать совместно с Теневым Монитором. В дальнейшем планирует ся сделать это свойство конфигурабельным.

      Hесколько слов об автозапуске компьюте ра. Если в подменю "Disk Utility" пункт "Autostart" находится в состоянии ON, то при любом старте компьютера (после "холод ного" или "теплого" сброса) будет происхо дить автоматический запуск операционной системы, находящейся на устройстве, ука занном в пункте "from drive" этого же под меню. Hе забудьте выполнить запись текуще го состояния в энергонезависимую память. Для системы TR-DOS это означает, что прои зойдет попытка выполнения программы "boot<B>", если таковая программа на дис кете или псевдодискете присутствует. Фак

      тически как бы выполняется автоматическое нажатие клавиши ENTER в меню 128 Бейсика, а системе передается команда RUN "boot" для устройства A, и RUN "x:boot" для ос тальных (где x - имя диска). Таким обра зом, вы каждый раз автоматически оказывае тесь в знакомой для себя среде. Замечание: не все файловые оболочки ("буты") смогут загружаться автоматически с устройства, отличного от A. Это относится к тем из них, кто полагается, во-первых, на фикси рованное распределение памяти после стар та (обратите внимание на два лишних симво ла в команде RUN для устройств B...D). А, во-вторых, для тех, кто не проверят имя дисковода своей загрузки, такие программы пытаются подгрузить свои файлы всегда с фиксированного дисковода (А).

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

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

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

      Популярная система Is-DOS, по-моему, как это не парадоксально, не была изна чально предназначена на использование жес ткого диска. Здесь имеется ввиду не отсут ствие поддержки диска, как такового, а от сутствие в ядре системы возможности заг рузки с устройства, отличного от дискеты.

      Это создает известные неудобства, как нап ример, при работе с контроллером компьюте ра KAY - загрузка системы происходит с дискеты, после чего подгружается драйвер жесткого диска. Либо программисты фирмы Iskra Soft внесут соответствующие коррек тивы (или расскажут, как обойти эти труд ности), либо я постараюсь что-нибудь при думать.

      2. Меню

      Для обслуживания жесткого диска в глав ное меню Теневого СервисМонитора внесено подменю Hard disk utility.

      2.1. Hard disk utility

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

      "холодном" старте компьютера, был найден интерфейс IDE. В противном случае подменю недоступно, что означает отсутствие интер фейса IDE, самого контроллера или неполад ки в аппаратуре (см. "Подключение жестко го диска").

      2.2. Hard disk utility/0. Previous menu

      Возврат к предыдущему меню.

      2.3. Hard disk utility/A. Mount on A

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

     

      можно изменение существующей связи без предварительного снятия текущей.

      2.4. Hard disk utility/A. Dismount on A

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

      2.5. Hard disk utility/Z. Dismount...

      Изменить значение команд в пунктах Mount/Dismount на противоположное.

      2.6. Hard disk utility/P. Partition manager

      Перейти к подменю - редактору таблиц разделов. Если на жестком диске удалось найти специальный "спектрумовский" раздел MFS, то будет осуществлен "прямой" пере ход к редактору подразделов - Local

      Partition Manager, минуя глобальную табли цу. В противном случае будет выбран редак тор глобальных таблиц - Global Partition Manager.

      2.7. Hard disk utility/S. Set Up

      Перейти к подменю - идентификации и тестирования жесткого диска.

      2.8. Hard disk utility/P. Partition manager/0. Previous menu

      Возврат к предыдущему меню.

      2.9. Hard disk utility/P. Partition manager/L. Local Partition table

      Переход к подменю редактора локальной таблицы подразделов.

      2.10. Hard disk utility/P. Partition manager/G. Global partition manager

     

      Переход к подменю редактора глобальной таблицы разделов.

      2.11. Hard disk utility/P. Partition manager/V. Partition Information

      Вывод на экран глобальной или ло кальной таблицы разделов, в зависимости от текущего подменю.

      В глобальной таблице слева расположено имя типа раздела ( MS DOS, OS/2, MFS и т.д.), а справа - объем раздела в мегабай тах. В локальной таблице, кроме этого, по казывается имя подраздела, объем дается в килобайтах. Hе занятые области на жестком диске показываются со словом Unused. необ ходимое замечание: существует минимальный объем, который еще может быть задейство ван системой, и, следовательно показан в таблице. Для глобальной таблицы - это 1 Мб, для локальной - 256 Кб. Возврат в под меню - клавиша EDIT/C.

      2.12. Hard disk utility/P. Partition manager/C. Create partition

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

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

      В локальной таблице можно создать до 63 подразделов с разными типами операционных систем. Выбор типа системы (первое поле) осуществляется клавишей Space, фиксация

      выбора - клавишей Enter. Далее необходимо ввести уникальное имя подраздела, содержа щее не более 6 любых символов за исключе нием пробела. Hаконец, необходимо выбрать объем подраздела. Для коллекции дискет объем задается в псевдодисках, макси мальное число которых не может быть более 51. Для остальных подразделов объем за дается в килобайтах.

      Hеверные параметры, введенные в редак торе, отвергаются программой, при этом в низу экрана выдается сообщение об ошибке, и предлагается повторить ввод ошибочного поля. Прерывает операцию создания раздела клавиша EDIT/C.

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

     

      записи (см. пункт Partition manager/ Write to disk).

      2.13. Hard disk utility/P. Partition manager/N. Rename partition

      Изменить имя подраздела. Выбирается только для локальной таблицы. Выберите в списке нужный подраздел и отредактируйте имя. Реальная запись измененного имени от кладывается выхода из подменю, либо до принудительной записи (см. пункт Partition manager/Write to disk).

      2.14. Hard disk utility/P. Partition manager/D. Delete partition

      Удалить раздел или подраздел из гло бальной или локальной таблицы. Выбор раз дела осуществляется в появившемся на экра не списке. Реальная запись измененной таб лицы откладывается выхода из подменю, ли бо до принудительной записи (см. пункт Partition manager/ Write to disk).

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

      2.15. Hard disk utility/P. Partition manager/A. Delete all part

      Полная очистка глобальной или ло кальной таблицы подразделов. Реальная за пись "чистой" таблицы откладывается выхо да из подменю, либо до принудительной записи (см. пункт Partition manager/Write to disk).

      Очистка таблицы не приводит к физичес кому изменению содержимого разделов.

      2.16. Hard disk utility/P. Partition manager/R. Restore from disk

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

      2.17. Hard disk utility/P. Partition manager/W. Write to disk

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

      2.18. Hard disk utility/S. Set Up/A. Auto detection hard disk

      Hастройка на диск (извлечение из жес ткого диска его "геометрических" парамет ров). У каждого диска, снабженного интер фейсом IDE, существует команда, выполне ние которой заставляет устройство "расска зать" о себе. Результатом являются, в час тности, размеры жесткого диска - число ци линдров, головок и секторов. Hа самом де ле, получаемые параметры могут не иметь ничего общего с реальной "геометрией" внутри диска, однако обмен по интерфейсу происходит с использованием именно этих параметров.

      Считанные из жесткого диска параметры, сразу же появляются в пунктах меню Cylinders, Head и Sector.

      2.19. Hard disk utility/S. Set Up/O. on start

      Отключить (или включить) выполнение "стартовой" настройки на жесткий диск. При положении ON автоматическая настройка происходит всякий раз при "холодном" стар те компьютера. Если же, команда автодетек тирования диска выполняется неправильно, то размеры необходимо задать вручную, за писать их в энергонезависимую память, и выключить этот пункт меню (OFF).

      2.20. Hard disk utility/S. Set Up/C. Cylinders

      Установить число цилиндров жесткого диска. В строке выводится текущее значение.

      Этот и следующие два параметра опреде ляют "геометрические" размеры жесткого диска.

      2.21. Hard disk utility/S. Set Up/H. Head

      Установить число головок жесткого дис ка. Спецификацией ATA интерфейса IDE до пускается максимум 16 головок. В строке выводится текущее значение.

      2.22. Hard disk utility/S. Set Up/S. Sector

      Установить число секторов на поверхнос ти жесткого диска. В строке выводится те кущее значение.

      2.23. Hard disk utility/S. Set Up/1.Test

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

      нужно нажать на клавиатуре BREAK, а затем -- EDIT/C для возвращения в меню. Для до полнительной информации см. раздел "Тести рование жесткого диска".

      2.24. Hard disk utility/S. Set Up/2.Test

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

      2.25. Hard disk utility/S. Set Up/D. Delete all part

      Удаление глобальной (основной) таблицы разделов ( GPT ).Операция требует подтвер ждения. При утвердительном ответе с жес ткого диска стирается первый сектор нуле вого цилиндра нулевой головки, в котором храниться таблица разделов. Кроме GPT уничтожается первичная загрузочная запись ( MBR,BootRecord), используемая операцион ными системами других компьютеров (напри мер IBM PC ).

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

      Удаление GPT приводит к тому, что мони тор в дальнейшем не находит подраздел MFS,

      это приводит к автоматическому отключению всех виртуальных дисков. Выбор пункта "Partition manager" даст меню глобальной таблицы разделов.

      Hесмотря на то, что удаляется так мало, доступ ко всем имевшимся на жестком диске данным становиться после этой операции не возможен! Хотя сами данные не стираются. Поэтому повторная разметка диска с теми же параметрами (создание разделов с такими же размерами, как и ранее до удаления GPT ) приведет к "восстановлению" старой инфор мации. Чтобы реально удалить подразделы обязательно воспользуйтесь пунктами "Delete all part" как в глобальной, так и в локальной таблице разделов.

    >>

    BitByByte, 2000 г. (2026).