ZX Review #11-12
26 ноября 1997

Авторская разработка - С.Зонов, А.Ларченко. О контроллере SMUC (HDD и IBM периферия).

<b>Авторская разработка</b> - С.Зонов, А.Ларченко. О контроллере SMUC (HDD и IBM периферия).
┌──────────────────────────────┐
│                              │
│     АВТОРСКАЯ РАЗРАБОТКА     │
│                              │
└──────────────────────────────┘

Music by ZET

С.Зонов, А.Ларченко

       О КОНТРОЛЛЕРЕ SMUC
     (HDD  и IBM-периферия)

   Данная статья представляет из
себя сокращенное описание разра-
ботки фирмы Скорпион  (Санкт-Пе-
тербург) - контроллера  SMUC.  С
момента поступления данного кон-
троллера в  продажу  прошло  уже
более года, интерес к  нему  по-
стоянно  растет, причем  как  со
стороны пользователей  компьюте-
ра Scorpion, так  и  со  стороны
пользователей  других  Spectrum-
совместимых компьютеров. О  том,
как  доработать  свой  компьютер
до совместимости со  Скорпионом,
подробно описано  в  журнале  ZX
РЕВЮ N 7-8  за  1996  год.  Цель
данной  статьи - более  наглядно
познакомить читателей с тем, что
из себя представляет  контроллер
SMUC, как он подключается к ком-
пьютеру, как через него происхо-
дит подключение жесткого  диска,
как происходит работа с  жестким
диском  в системе  TR DOS  и  IS
DOS, хотя  в  последней  системе
работа с HDD  практически  ничем
не отличается от работы с  элек-
тронным диском (обычно диск C).

     НАЗНАЧЕНИЕ КОНТРОЛЛЕРА

   Контроллер SMUC  предназначен
для  подключения  к   компьютеру
Scorpion ZS-256 (или любому Spe-
ctrum-совместимому компьютеру):
   - накопителей на жестких дис-
ках (HDD), оснащенных  интерфей-
сом IDE, и позволяет работать  с
ними в системах  TR DOS, IS DOS,
CP/M;
   - разнообразных  периферийных
плат от компьютера  IBM  PC  XT,
таких как, например, Hayes-моде-
мы со скоростью передачи от 1200
до  14400  Кбод, звуковые  карты
различных типов, программаторы и
многие  другие   IBM-совместимые
устройства.

   Кроме этого, контроллер осна-
щен микросхемой  энергонезависи-
мой  памяти  (NVRAM)  объемом  2
Кбайта, предназначенной для сох-
ранения различных настроек  ком-
пьютера, параметров  HDD,  пере-
менных  Теневого  Сервис-Монито-
ра и т.д.  В контроллере  преду-
смотрена  установка   микросхемы
энергонезависимых  часов   (типа
M146818, DS1287, DS12887,512ВИ1)
и контроллера  прерываний  i8259
или  1810ВН59а  (в   стандартной
поставке  данные  микросхемы  не
установлены).
   Для  наиболее   успешной    и
производительной работы  компью-
тера желательно подключение дан-
ного  контроллера  к  компьютеру
Scorpion  ZS  256  Turbo+,  хотя
возможна  и  работа  контроллера
с нетурбированными  компьютерами
Scorpion 256, а также с  другими
Spectrum-совместимыми  компьюте-
рами (при  выполнении  необходи-
мых доработок). Программная под-
держка контроллера  находится  в
Профессиональном  ПЗУ  (ПрофПЗУ)
компьютера Scorpion (объем Проф-
ПЗУ - от 128 Кб до 512 Кб). Фир-
ма Скорпион переработала  содер-
жимое ППЗУ и, начиная  с  версии
4.0, возможна его работа на раз-
личных вариантах Spectrum-совме-
стимых компьютеров.
   Конструктивно контроллер  вы-
полнен на печатной плате  разме-
ром 102x72 мм.
   Потребляемый контроллером ток
не более 300 мА.

        Установка часов
 реального времени (CMOS-часов)
    и контроллера прерываний

   В стандартном варианте  SMUC-
контроллер поставляется без мик-
росхемы часов реального  времени
(MC146818) и микросхемы контрол-
лера прерываний (i8259a), но при
желании пользователю  необходимо
только вставить эти микросхемы в
соответствующие панельки на пла-
те контроллера. Все  необходимое
для  работы  этих  микросхем  на
плате контроллера предусмотрено,
в том числе и  энергонезависимый
генератор тактовых импульсов для
часов, и схема  переключения  на
резервное питание.
   Микросхема   MC146818   может
быть заменена  советским  анало-
гом - 512ВИ1, а также  импортны-
ми  микросхемами  других   фирм-
производителей.  Все  они  имеют
одинаковый корпус на 24  вывода,
и могут отличаться  лишь  назва-
нием. Для обеспечения работы ча-
сов реального времени на  период
выключения компьютера, необходи-
мо использовать источник  резер-
вного питания  +5 вольт, подклю-
чаемый через разъем X7.  Потреб-
ление тока от этого  источника -
доли микроампера, поэтому  можно
использовать  любую   подходящую
батарейку.  Кроме  этого, в  па-
нельку для ИМС часов можно вста-
вить ИМС фирмы Dallas - DS1287 и
DS12887. Эти микросхемы уже име-
ют встроенный генератор  импуль-
сов и источник резервного  пита-
ния. Фирмой-изготовителем гаран-
тируется надежная работа  источ-
ника в течение 10 лет.  При  ис-
пользовании данных микросхем до-
полнительного источника, подклю-
чаемого через разъем X7, не тре-
буется. Следует помнить, что на-
личие или отсутствие  ИМС  часов 
никак не влияет  на  работу кон-
троллера с  HDD.  Все  установки
параметров HDD  и  другие  пере-
менные,   используемые   Теневым
Сервис-Монитором, и  назначаемые
пользователем,  хранятся  в  ИМС
энергонезависимой  памяти   (NV-
RAM),  устанавливаемой  на  всех
контроллерах.  Никаких  дополни-
тельных  источников  для  работы
NVRAM не требуется.

   Микросхема контроллера преры-
ваний при работе с HDD в настоя-
щее время не используется, и  ее
отсутствие никак  не  влияет  на
работу контроллера. Она предназ-
начена, прежде всего, для  рабо-
ты с  различной  IBM-периферией,
например HAYE's модемами.  Можно
использовать ИМС i8259A, или со-
ветский аналог 1810ВН59А. Не ре-
комендуется использовать  микро-
схему 580ВН59.

           Требования
      к источнику питания

   Контроллер  потребляет  очень
незначительный ток от  источника
питания компьютера и, как прави-
ло, не требует "умощнения"  пос-
леднего. Но сам накопитель  HDD,
особенно  если   он   достаточно
"древний", может потреблять зна-
чительный ток как по +5 В, так и
по +12 В  (до  2-3  А  в  режиме
обычной работы и  еще  больше  в
момент пуска). Поэтому необходи-
мо убедиться, что источник "обе-
спечивает" необходимое  напряже-
ние: +5 В+5%, +12 В+5%, в проти-
вном случае необходимо  заменить
источник питания на  более  мощ-
ный. При выборе  источника  сле-
дует также учесть, что если пла-
нируется подключать  IBM-перифе-
рийные платы, то  следует  зало-
жить для них запас по  мощности.
Для расчетов можно ориентировоч-
но принять, что потребление  то-
ка по дополнительным  источникам
питания следующее: +5 В - до 1,5
А; -5 В, -12 В, +12 В  -  до 0,5
А.

    РАБОТА С ЖЕСТКИМ ДИСКОМ

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

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

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

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

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

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

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

   Контроллер SMUC вставляется в
разъем  платы  компьютера   так,
чтобы детали контроллера  "смот-
рели" на детали платы.  Контрол-
лер соединяется с  жестким  дис-
ком специальным 40-жильным плос-
ким кабелем так, чтобы 1 контакт
совпал и  на  контроллере, и  на
жестком диске (на кабеле крайний
провод, соответствующий  1  кон-
такту,  обычно   промаркирован).
Питание подается на жесткий диск
через специальный разъем, анало-
гичный такому же на дисководе.
   После всех  соединений  можно
включить питание; на экране ком-
пьютера  сразу  же  должна  поя-
виться  знакомая  надпись  "fast
test of computer"  (в  последних
версиях  ТМ  первой   появляется
надпись об авторских  правах), и
далее несколько сообщений о най-
денных (или  не  найденных)  ус-
тройствах контроллера SMUC. Пос-
ле подачи питания жесткие  диски
различных фирм и  моделей  ведут
себя по-разному. Но  характерным
является небольшая (не более се-
кунды) пауза, затем  звук  взле-
тающего самолета в миниатюре  (у
современных моделей он почти  не
слышен), это раскрутка  двигате-
ля самих дисков ("блинов").  Да-
лее происходит "рекалибровка" и
внутреннее тестирование механиз-
ма  магнитных  головок,  выража-
ющееся  в  легком  (а  у  старых
моделей - довольно-таки громком)
"похрюкивании". Вся операция  по
автотестированию происходит  при
каждом  включении  питания   (и,
кстати, независимо от  подключе-
ния к контроллеру), и длится  от
5-10 до 30 секунд.
   Если после включения напряже-
ния  жесткий  диск  "молчит", то
либо ему не хватает мощности ис-
точника питания (это можно  про-
верить, замерив тестером  напря-
жение  +5 и +12 В), либо  непра-
вильно (наоборот) подключен  ка-
бель, соединяющий жесткий диск и
контроллер.  Недостаточная  мощ-
ность  источника  питания  может
служить  причиной   нестабильной
работы диска (особенно это спра-
ведливо для старых  моделей, ко-
торые  могут  потреблять  в  им-
пульсе ток до  нескольких  ампер
по 12 вольтам;  для  сравнения -
новые современные жесткие  диски
могут потреблять меньше дисково-
да для гибких дисков).
   Теперь  посмотрим  на  экран.
Если, несмотря на "потуги"  жес-
ткого  диска,  на  экране  сразу
появляется  надпись  "Hard  disk
not found", то, опять-таки, ско-
рее  всего, "перевернут"  кабель
или недостаточно питания для ин-
терфейса жесткого диска  (интер-
фейсная  часть  любого  жесткого
диска, как правило, работает да-
же при  выявлении  ошибок  авто-
тестирования и  сообщает  о  них
контроллеру). Возможна, впрочем,
полная неработоспособность  всей
электроники диска.

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

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

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

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

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

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

   Собственно, вы должны  ввести
в пунктах меню "Hard disk utili-
ty/Set Up"  реальные  "геометри-
ческие" размеры вашего  жесткого
диска.  Это число цилиндров, го-
ловок и секторов. Эти  параметры
иногда приводят на  корпусе  са-
мих дисков; если их нет, то  об-
ратитесь к продавцу,  всучившему
вам это чудо.
   Бывает, что  параметры,  счи-
танные  из  жесткого  диска,  не
соответствуют  действительности,
хотя по всем признакам автоиден-
тификация прошла (быстро  и  без
ошибок).
   Итак, вы ввели реальные пара-
метры  жесткого  диска.   Теперь
необходимо  позаботиться,  чтобы
стартовая программа Монитора  не
проводила автоидентификацию  при
"холодном"  сбросе   компьютера.
Для этого переведите  пункт  "on
start" в состояние OFF.

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

   Любые изменения параметров  в
меню  Теневого   Сервис-Монитора
действуют только до момента вык-
лючения питания или  "холодного"
сброса  компьютера.  После  чего
все восстанавливается в  состоя-
ние "по умолчанию". Это  в  пол-
ной мере относится к  параметрам
жесткого диска и состоянию триг-
гера "on start". Однако, не  все
так  печально.  На   контроллере
SMUC установлены микросхемы эне-
ргонезависимой  памяти,  которые
способны хранить часть  жизненно
важных  переменных  Монитора   и
восстанавливать их  сразу  после
включения питания. Однако  запи-
сать  эти  переменные  в  память
необходимо вручную.
   Выйдите в главное  меню  Сер-
вис-Монитора  ("Main menu"), за-
тем выберите подменю "Set Up", а
в нем подменю "Monitor".  Теперь
выберите пункт "Save CMOS".  Все
сделанные Вами  установки  пара-
метров будут сохранены в микрос-
хеме  энергонезависимой   памяти
(NVRAM), которая установлена  на
всех выпускаемых контроллерах.

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

   После  автоматической, а  тем
более ручной идентификации  жес-
ткого  диска, необходимо  прове-
рить, как будет работать диск  с
установленными "геометрическими"
размерами. Для этого  в  подменю
Set Up меню  Hard  disk  utility
можно выбрать два теста;  первый
(обозначаемый цифрой 1) предназ-
начен для проверки  схемы  тран-
сляции секторов внутри  жесткого
диска  и  выявления   нечитаемых
секторов. Кроме этого, тест поз-
воляет  визуально  оценить  ско-
рость  жесткого  диска, посколь-
ку использует  реальные  подпро-
граммы  драйвера,  "зашитого"  в
ПЗУ  Теневого  Монитора.  Второй
тест (обозначенный цифрой 2) бо-
лее длителен и сложен. Он позво-
ляет проверить механизм  переда-
чи данных, то есть работу  схемы
IDE "в усиленном режиме".
   Разберем работу тестов.  Пер-
вый тест просто  последовательно
считывает все сектора с  жестко-
го диска.  Проверка  содержимого
секторов невозможна, и для оцен-
ки  ошибок  тест  довольствуется
сообщениями,  выдаваемыми  жест-
ким диском. На экране  компьюте-
ра индицируется текущий  счетчик
проверяемого цилиндра  и  "бегу-
щая палочка", несколько оживляю-
щая картину; прервать тест  мож-
но, нажав на BREAK.  Собственно,
если "все хорошо", то этим  дело
и ограничивается - счетчик  дос-
читывает до максимального цилин-
дра, на экран выдается координа-
та последнего считанного  секто-
ра, и  тест  завершается.  Можно
переходить ко второму тесту.
   В случае фиксирования  ошибки
на экран  выдается  сообщение  о
ней,  в   котором   представлена
координата сбойного сектора (но-
мера цилиндра, головки и  секто-
ра) и тип ошибки. Здесь  следует
обратить внимание  на  "частоту"
ошибок. Если их мало и  происхо-
дят  они  хаотично,  то,  скорее
всего, данный экземпляр  жестко-
го диска неисправен, и  дальней-
шая работа с ним не рекомендует-
ся.  Если  же  ошибки    следуют
"группами", с чередованием опре-
деленных  номеров,  например, не
читаются сектора, начиная с  ка-
кого-то определенного номера  на
всех головках, или на  всех  ци-
линдрах происходит ошибка, начи-
ная с определенной  головки, то,
вполне вероятно, что для жестко-
го  диска  заданы   неправильные
"геометрические" размеры.  Быва-
ет, что на диске "вылетает"  ка-
кая-то одна головка, и все  сек-
тора, считываемые ею, оказывают-
ся "битыми". В этих  случаях  вы
должны вернуться к ручной  уста-
новке  параметров  и  попытаться
"отсечь"  неисправное,  уменьшив
соответствующие значения.  После
чего проведите тест повторно.
   Второй  тест  является  более
информативным, но и более  опас-
ным. Его алгоритм следующий - из
сектора считывается  находящаяся
там информация, затем сектор за-
писывается  псевдослучайным  ко-
дом, после чего  новая  информа-
ция считывается  и  сверяется  с
записанной, ну а в  сектор  воз-
вращается прежнее значение.  Та-
кая  операция  производится  для
всех секторов на жестком  диске.
Как видно, тест не только  пола-
гается  на  диагностику  ошибок,
выдаваемую  самим  диском, но  и
объективно  проверяет   качество
тракта   записи/чтения.   Почему
тест  опасен  -  очевидно.  Если
имеются ошибки записи, то в сек-
тор может не вернуться  находив-
шееся там до операции  значение,
к тому же непредвиденное  преры-
вание теста (выключение питания,
ручной  или  произвольный  сброс
компьютера)  может  привести   к
аналогичным последствиям. Поэто-
му, во-первых, производите  вто-
рой тест только после  успешного
прохождения первого, а,  во-вто-
рых, прерывайте прохождение тес-
та только по команде с клавиату-
ры BREAK.
   Индикация, выдаваемая на  эк-
ран, аналогична  первому  тесту.
Так  же  аналогичны  действия  в
случае ошибок - попробуйте "зак-
рыть" сбойные сектора или голов-
ки ручным заданием соответствую-
щих параметров.
   Несколько замечаний по управ-
лению выводом сообщений об ошиб-
ках: вы можете приостановить вы-
вод текста  (и  тест), нажав  на
клавишу SPACE, в этом  состоянии
отмена  дальнейшего  прохождения
теста  -  клавиша  EDIT/C, ну  а
клавиша ENTER продолжает тест.
   На тестировании  заканчивает-
ся  этап  подключения   жесткого
диска, теперь необходимо создать
логическую структуру для  хране-
ния данных.

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

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

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

   Прежде всего, необходимо раз-
граничить доступ к жесткому дис-
ку со стороны ZX Spectrum и, ес-
ли необходимо, ОС других компью-
теров. Для этого на  диске  соз-
дается  так  называемая  главная
загрузочная запись (Master  Boot
Record, MBR), а  в  ней  главная
таблица разделов  (Global Parti-
tion Table,  GPT).  Идея  такая:
один раздел - одна система.
   В подменю Hard  disk  utility
выберите пункт Partition manager
и войдите в  редактор  разделов.
Обратите  внимание  на  названия
подменю, оно должно быть "Global
partition manager", если  же  вы
попали в  "Local partition mana-
ger", это  означает, что  данный
жесткий диск  уже  использовался
на ZX Spectrum, и  MBR  создана.
Посмотрите  на  текущую  главную
таблицу разделов, выберите пункт
Partition information.
   На экране появится таблица, в
которой  справа  выводится   тип
раздела, а слева - объем  разде-
ла в мегабайтах.  Отказаться  от
просмотра  таблицы  можно,  вос-
пользовавшись клавишей EDIT/C.

   Тип Unused означает  "пустое"
место (свободную запись в табли-
це, не соответствующую  никакому
типу). Если ваш диск  не  новый,
то, вероятно, весь его объем бу-
дет  разбит  на  несколько  (или
один) разделов MS DOS  или  дру-
гих. Воспользуйтесь пунктом  De-
lete partition для удаления  не-
нужных вам  разделов  (подведите
курсор на экране к занятой запи-
си и нажмите ENTER).
   Теперь  можно  приступать   к
созданию специального  "спектру-
мовского"   раздела.    Выберите
пункт Create partition..., в по-
явившейся знакомой  таблице  вы-
берите  строчку  Unused, нажмите
клавишу  ENTER.  Отредактируйте,
если необходимо, число в  правой
части строки.  Как  уже  говори-
лось,  это  число  задает  объем
создаваемого раздела. Если рабо-
та  с  другими  компьютерами  не
предполагается, то оставьте чис-
ло без изменений. Снова  нажмите
на клавишу 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 parti-
tion table. Выбрав  этот  пункт,
вы попадете  в  похожее  подменю
редактора локальных разделов или
подразделов.
 Локальная таблица (под)разделов

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

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

   Наиболее важной  (и  сложной)
особенностью  встроенного  прог-
раммного  обеспечения   является
попытка эмуляции на жестком дис-
ке дисковой  системы  TR-DOS.  В
силу разных обстоятельств и нес-
мотря на вопиющие ошибки  и  не-
достатки,  именно  эта   система
стала наиболее  распространенной
для спектрум-совместимых компью-
теров в  нашей  стране.  Поэтому
именно этой ОС с  самого  начала
работы уделено наибольшее внима-
ние.
   При сравнении объема дискеты,
на который ориентирована TR-DOS,
и объема подраздела  на  жестком
диске, сразу бросается  в  глаза
несоразмерность служебной инфор-
мации в каталоге дискеты.  Ката-
лог не был рассчитан на  большие
объемы. Попытка как-то  изменить
саму систему, "подогнать" ее па-
раметры к жесткому  диску  неми-
нуемо привела бы  к  несовмести-
мости новой и старой версий, а в
конечном итоге - просто к  новой
операционной  системе, причем  с
заведомо плохими характеристика-
ми.  Не  пытаясь   реанимировать
TR-DOS, Теневой Монитор, в то же
время, дает возможность  исполь-
зовать жесткий диск  для  работы
со старой системой.
   Идея  чрезвычайно   проста  -
жесткий диск представляет  собой
коллекцию  псевдодискет,  формат
которых в точности  соответству-
ет обычным дискетам. Специальные
средства  позволяют  "вставлять"
такие дискеты в "обычные" диско-
воды, а TR-DOS даже не догадыва-
ется, что работает с эмулятором.   
Непосредственно работе посвящена  
целая часть  описания, здесь  же 
мы расскажем, как  создать  кол-
лекцию псевдодисков (подразделов 
TR-DOS).
   Для начала нужно создать под-
раздел  TR-DOS.  Выберите  пункт
Create  partition...  (напомним,
это необходимо делать в  подменю
Local partition manager). Подве-
дите курсор с строке с  надписью
Unused (вначале это единственная
строка), нажмите клавишу  ENTER.
В строке появится надпись TR-DOS
- снова  нажмите  ENTER.  Теперь
необходимо ввести имя  подразде-
ла. Это имя будет в  последующем
использовано для доступа к  хра-
нящимся в подразделе  псевдодис-
кам. Оно может  содержать  до  6
символов. Зафиксируйте ввод име-
ни   клавишей  Enter.   Наконец,
необходимо выбрать объем подраз-
дела - введите число, равное ко-
личеству  псевдодисков, содержа-
щихся в этом  подразделе.  Мини-
мальное  число  дисков  -  один,
максимальное - 51  (естественно,
если хватит свободного  места  в
данном подразделе).  По  умолча-
нию  предлагается    максимально
возможное  в  данном  подразделе
количество.  Зафиксируйте  число
псевдодисков - нажмите на клави-
шу ENTER.
   В отличие от  работы  с  гло-
бальной  таблицей разделов, сох-
ранять в памяти  все  изменения,
связанные с локальной  таблицей,
хлопотно, поэтому программа сра-
зу же предложит  внести  измене-
ния на жесткий  диск.  В  случае
утвердительного ответа  (клавиша
Y)  будет  произведена  разметка
соответствующего подраздела, что
может занять какое-то время.  По
окончании  разметки   управление
вернется к  редактору  локальных
подразделов.
   Можно создать несколько  кол-
лекций псевдодисков, важно толь-
ко, чтобы имена у них были  раз-
ные. Примите  во  внимание  одно
обстоятельство. Коллекция  псев-
додисков может быть удалена  так
же, как и  раздел  в  глобальной
таблице (как и любой другой под-
раздел,  пункт  Delete  partiti-
on...), но только целиком. Теку-
щее программное  обеспечение  не
предусматривает  уменьшение/уве-
личение размера подраздела. Раз-
рабатываемая  сейчас   программа
поддержки жестким диском некото-
рых  функций  Теневого  Монитора
будет требовать на жестком  дис-
ке некоторого количества  памяти
(планируется до  3-5 Мб).  Веро-
ятнее  всего, тип  используемого
подраздела  должен  будет   быть
Micro DOS. Поэтому  рекомендует-
ся оставить  несколько  мегабайт
незанятыми  (Unused), для  того,
чтобы впоследствии  не  пришлось
переразмечать весь жесткий диск.

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

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

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

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

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

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

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

   Установка связи между устрой-
ством  и  псевдодиском   осущес-
твляется  в  подменю  Hard  disk
utility. Для каждого  устройства
есть пункт  Mount  (монтировать,
подключать), с последующим  име-
нем виртуального дисковода.  Вы-
бор  этого  пункта  приводит   к
появлению на экране текущей таб-
лицы локальных разделов. Из  нее
необходимо  выбрать   какую-либо
коллекцию  псевдодисков   (выбор
фиксируется   нажатием   клавиши
ENTER). После появления  катало-
га коллекции подведите курсор  к
нужному диску и зафиксируйте вы-
бор.
   Имя выбранного  (подключенно-
го) псевдодиска появится в стро-
ке Mount.  Имя составное, первым
стоит имя коллекции  (подраздела
TR-DOS), а через символ '\' сле-
дует имя образа диска.
   Теперь  любое  обращение   из
TR-DOS или из монитора  к  соот-
ветствующему виртуальному диско-
воду, будет "направлено" на жес-
ткий диск.  Можно  "отформатиро-
вать" псевдодиск (лучше  выбрать
"быстрое" форматирование в  под-
меню Disk  Utility  пункт  Quick
format disk), и  скопировать  на
виртуальный диск файлы с  реаль-
ного диска.
   Текущие назначения  автомати-
чески  запоминаются  на  жестком
диске  и  восстанавливаются  при
"холодном" старте компьютера.

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

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

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

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

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

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

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

   Для  начала  необходимо  соз-
дать один (или  несколько)  под-
разделов  типа  IsDOS.  Выберите
пункт Create  partition...  (на-
помним, это необходимо делать  в
подменю  Local  partition  mana-
ger).  Подведите курсор к строке
с надписью Unused, нажмите  кла-
вишу ENTER.
   В  строке  появится   надпись
TR-DOS. Клавишей SPACE  выберите
тип IsDOS (типы  циклически  ме-
няются при нажатии на  клавишу),
зафиксируйте   выбор    клавишей
ENTER.  Введите  имя  подраздела
(не более шести  символов).  За-
фиксируйте ввод  имени  клавишей
Enter. И, наконец, задайте объем
подраздела в килобайтах.
   Фирма ИскраСофт требует, что-
бы  объем  раздела  не  превышал
16384 Кб. На  наш  взгляд, опти-
мальное значение  8000-10000 Кб.
Запомните  точную  цифру   (пос-
кольку, к сожалению, в настоящее
время при последующих просмотрах
таблицы объем раздела  выводится 
в целых мегабайтах).
   Производимые манипуляции  при
создании разделов IsDOS запишут-
ся на жесткий  диск  только  при
выходе из подменю Local Partiti-
on manager (или при явном  выбо-
ре  пункта  Write to disk).  Для
подтверждения изменений в табли-
це на появившийся запрос необхо-
димо дать  утвердительный  ответ
(клавиша Y).

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

   Отметим, что вновь  созданные
подразделы не несут в себе ника-
кой информации и  не  подключены
ни к каким устройствам в  IsDOS.
Следующий этап - создание  логи-
ческой структуры на жестком дис-
ке. Связь между системой и  жес-
тким диском осуществляет  разра-
ботанный нами драйвер mhdd.blk.
   Загрузите ОС IsDOS с  дискеты
(для работы с жестким диском мо-
жет быть использован только  ва-
риант Classic). Загрузите  драй-
вер mhdd.blk в память - для это-
го установите курсор на имя фай-
ла и нажмите клавишу ENTER. Убе-
диться в загрузке драйвера  мож-
но  программой  dev.com,  обычно
расположенной в каталоге \UTIL -
в левой панели должно  появиться
упоминание  о  драйвере  (MHDD).
Установив  курсор  на  строку  с
именем драйвера (в  левой  пане-
ли), в правой  панели  программы
можно выбрать устройство  IsDOS,
которое будет подключено к  жес-
ткому  диску  (символ "+"  обоз-
начает  подключение,  изменяется
статус устройства клавишей  SPA-
CE).
   Какое устройство выбрать? Те-
невой Монитор позволяет одновре-
менно работать с  четырьмя  под-
разделами  любых  систем   (пос-
кольку именно четыре  устройства
могут быть подключены в меню те-
невого монитора). В текущей вер-
сии  соблюдается,  кроме   того,
следующее соглашение - имена ус-
тройств ТМ  и  имена  устройств,
обслуживаемых  драйвером   mhdd.
blk, совпадают. То есть, устрой-
ству A в Теневом Мониторе  соот-
ветствует устройство A в  IsDOS,
устройству B - B, и т.д. до  ус-
тройства D. Из-за того, что  ус-
тройства A  и  C  обычно  заняты
(первое под дисковод, второе под
электронный диск), остаются  ус-
тройства B и  D  (устройство  B,
занятое  под   второй   дисковод
драйвером  sys_driv,  можно   на
время работы  с  жестким  диском
отключить  от  этого  драйвера -
короче, вы можете сами  конфигу-
рировать  свою  систему).  После
того, как драйвер mhdd.blk  заг-
ружен в память и подключен к ка-
кому-либо  устройству, необходи-
мо подключить подраздел IsDOS на
жестком диске к одноименному ус-
тройству в Теневом Мониторе.
   Для этого войдите в ТМ (нажа-
тием  на кнопку  Magic), в  меню
Hard disk utility выберите пункт
Mount  соответствующего  устрой-
ства, а  затем  из  таблицы  ло-
кальных разделов  выберите  нуж-
ный подраздел.  Процедура  связи
устройства и подраздела ничем не
отличается от таковой для  псев-
додисков TR-DOS, за тем исключе-
нием, что достаточно просто выб-
рать подраздел IsDOS.  Вернитесь
в программу - выйдите из ТМ.
   Теперь, когда связь  установ-
лена, можно приступать к  созда-
нию логической структуры в  под-
разделе. Для  этого  воспользуй-
тесь   программой    create.com,
обычно  находящейся  в  каталоге
\SERVICE. Установите имя устрой-
ства, связанного с жестким  дис-
ком, измените параметры  устрой-
ства:  Sec Size  (размер  секто-
ра) - 256; Dev Size (размер  ус-
тройства) - объем  подраздела  в
килобайтах, уменьшенный на  еди-
ницу и умноженный затем на четы-
ре. Например, при объеме  разде-
ла 5000 Кб, (5000-1) * 4 = 19996
(программа  "скорректирует"  это
значение до 19992). После успеш-
ного завершения создания устрой-
ства с ним можно работать, как с
обычной дискетой.
   При последующих загрузках Is-
DOS необходимо повторить  пункты
подключения драйвера (кроме, ко-
нечно, вызова  программы  creat.
com - ведь структура уже  созда-
на), либо модифицировать старто-
вый командный файл для автомати-
ческой загрузки драйвера жестко-
го  диска  (подключения, сделан-
ные в  Теневом  Мониторе, сохра-
няются  автоматически).  Исполь-
зуйте документацию  фирмы Искра-
Софт.
   Необходимо отметить, что мож-
но "одновременно"  работать  бо-
лее чем  с одним устройством (и,
соответственно, подразделом)  на
жестком  диске  -  подключите  к
драйверу  mhdd   несколько   ус-
тройств, а  в  Теневом  Мониторе
свяжите с  одноименными  устрой-
ствами несколько  подразделов  с
типом IsDOS. Затем создайте  ло-
гические структуры на каждом  из
них. Более того, можно к  одному
и тому же устройству IsDOS  под-
ключать непосредственно  в  про-
цессе работы разные  подразделы.
Для этого войдите в Теневой  Мо-
нитор и свяжите с нужным устрой-
ством  подраздел   IsDOS,  затем
вернитесь в операционную  систе-
му IsDOS и  перечитайте  каталог
устройства.

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

   Применение дискеты  для  заг-
рузки системы, когда  есть  жес-
ткий диск, несколько утомляет  и
может  вызвать  недоумение.   Мы
предлагаем отказаться от  загру-
зочной дискеты и  воспользовать-
ся механизмом автостарта  TR-DOS
программ. В  двух  словах  метод
выглядит так: вы загружаете опе-
рационную  систему   IsDOS   как
обычно, настраиваете ее под свои
нужды, а  затем  создаете  в  ТМ
файл-образ памяти компьютера (он
создается в рамках  системы  TR-
DOS),  помещаете  этот  файл  на
жесткий диск и  указываете  ком-
пьютеру автозагрузку этого  фай-
ла.  В  результате  сразу  после
включения   питания   происходит
"автоматический"  запуск   IsDOS
(на самом деле вы просто  оказы-
ваетесь в  той  точке, из  кото-
рой делали файл-образ памяти, со
всеми настройками и  назначения-
ми в системе).  Конечно, это  не
самое лучшее, но пока единствен-
но возможное решение проблемы.
   Теперь об этом более  подроб-
но.  Во-первых, научитесь  рабо-
тать с драйвером жесткого диска,
как это  показано  в  предыдущем
разделе. К моменту создания фай-
ла-образа копии  памяти  вы  уже
должны уметь работать из IsDOS с
жестким диском.  Во-вторых, под-
готовьте образ диска TR-DOS, ку-
да  вы  будете  сохранять  копию
системы. Далее сделайте  следую-
щее:
   Сбросьте компьютер;
   Загрузите операционную систе-
му IsDOS с дискеты как обычно;
   Загрузите в память  компьюте-
ра драйвер жесткого диска  mhdd.
blk.;
   Настройте драйвер  программой
dev.com.;

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

 10 CLEAR 28900
 20 REM ---- Change file name
 30 LET n$= "isdosimg"
 40 REM
 50 REM ---- Load program n$
 60 LET a=29000
 70 LET c=9: GO SUB 160
 80 FOR i=1 TO LEN (n$)
 90 POKE a,CODE n$(i)
100 LET a=a+1
110 NEXT i
120 LET c=3: GO SUB 160
130 RANDOMIZE USR 29000
140 STOP
150 REM ---------------------
160 FOR i=0 TO c
170 READ d
180 POKE a,d
190 LET a=a+1
200 NEXT i
210 RETURN
220 REM ---- Code
230 DATA 217,229,1,0,0,58,246,
    92,207,139,0,225,217,201

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

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

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

           *   *   *

      НОВЫЕ  ПОДПРОГРАММЫ
ТЕНЕВОГО СЕРВИС-МОНИТОРА (RST 8)
   ДЛЯ РАБОТЫ С КОНТРОЛЛЕРОМ
        ПЕРИФЕРИИ SMUC

   Ряд новых вызовов для п/п 81h
R8DOS (вызов встроенного в мони-
тор  дискового   интерпретатора,
код подфункции задается в регис-
тре C):

   Изменена подфункция 9(SETWRK)
дисковой системы (R8DOS).  Начи-
ная с версии  3.0a  (код  68  от
29.04.95), в регистрах  DE и  BC
возвращаются код версии  и  дата
компиляции монитора (в  предыду-
щих версиях эти регистры не  из-
менялись). D - код версии; C, B,
E - соответственно  число, месяц
и год.

   C=34 ($hddid) - идентификация
жесткого диска.
   in: 512-байтный буфер, указа-
тель  на  который  задается    в
workfl (подфункция 9).
   out: CY - error (нет HDD)
   В   принципе,   идентификация
происходит  автоматически    при
старте  машины,  эта  подфункция
определяет, есть ли диск вообще,
и пытается  возвратить  в  буфер
сектор-идентификатор,  считанный
из HDD.

   C=35  ($hddmount) - подключе-
ние раздела к драйверу HD.  Под-
ключает  указанный  подраздел  к
драйверу  жесткого  диска, после
этого становятся возможными опе-
рации чтения/записи из  раздела;
если  подключается  образ  диска
(т.е. задано имя  подраздела TR-
DOS и имя диска в нем), то  ста-
новится возможным  обращение  из
TR-DOS.
   in: Akk - тип операции, зада-
ется битами (в скобках [] указа-
ны приоритеты - 0 наивысший).
   7 [2] - автоподключение, т.е.
подключить то, что задано в сек-
торе автонастроек, при этом биты
0, 1 - номер диска (0 - "A", 1 -
"B", 2 - "C", 3 - "D"), диск A -
только при аппаратной поддержке,
в противном случае выдает  ошиб-
ку.
   6 [0] -  отключить  подраздел
от драйвера (запрещение операций
чтения/записи),  в  этом  случае
биты  0, 1 - номер  диска  (0  -
"A", 1 - "B", 2 - "C"  или  3  -
"D").
   5 [1] - подключить  подраздел
к драйверу, указав (в DE)  адрес
дескриптора  (длиной  25  байт),
возвращаемого   при   предыдущих
подключениях (см. бит 4).
   4 [4] - вернуть в память  (по
HL) дескриптор текущего  подклю-
ченного   к  драйверу   раздела;
только эта команда может  указы-
ваться совместно с остальными.
   3 [3] - подключение по имени,
адрес имени в памяти в DE:  тек-
стовая строка вида [dr:][\]part\
dos, где part - имя раздела, dos
- имя диска  в  разделе  TR-DOS,
если не задано dr, то  подключе-
ние происходит к задаваемому би-
тами 0 и 1 диску.
   2 - должен быть 0.
   0, 1 - номер дисковода : 0  -
"A", 1 - "B", 2 - "C",3 - "D".
   out: CY - error (любые  ошиб-
ки, в том числе  "раздел не най-
ден").

   C=36  ($hddrd) - прямое  чте-
ние секторов из подраздела  жес-
ткого диска.
   Чтение осуществляется из "те-
кущего" подраздела -  последнего
подраздела,  подключенного  под-
функцией $hddmount.
   in: hl - адрес в  памяти, ку-
да считывать, de - начальный но-
мер сектора (считая с  1!), b  -
число секторов  (размер  сектора
512 байт!)
   out: CY - ошибки.

   C=37 ($hddwr) - прямая запись
секторов  в  подраздел  жесткого
диска.
   Запись осуществляется  в "те-
кущий"   подраздел  -  последний
подраздел, подключенный  подфун-
кцией $hddmount.
   in: hl - адрес в  памяти, от-
куда  записывать, de - начальный
номер сектора (считая с 1!), b -
число секторов  (размер  сектора
512 байт!)
   out: CY - ошибки.

   C=38 ($hddpart) - вернуть та-
блицу (каталог) подраздела. Каж-
дый вход в  таблице  описывается
16 битами, где +0 - тип  подраз-
дела, только младшие 5 бит  (0 -
нет;  1  -  TR-DOS, 2  -  Micro-
DOS...), +6 - объем подраздела в
секторах, +10  -  имя подраздела
(6 байт).
   Замечание: получить имя  под-
раздела TR-DOS  можно, подключив
подраздел  TR-DOS  (см.  функцию
35, не задавая  имени диска!)  и
далее - прямым считыванием  сек-
торов  0 и 1 - каталога  дисков.
Формат каталога аналогичен  фор-
мату таблицы подразделов.
   in: Akk - должен быть 0, hl -
адрес буфера для  таблицы  (1024
байта).
   out: CY - ошибки.
   de  -  число  задействованных
входов в  таблице.

   Функция 89h  (R8time), вызова
RST 8, позволяет установить  или
прочитать  время  из  микросхемы
энергонезависимой памяти (CMOS),
код операции задается в регистре
D (отдельными битами):
   7: (1)  -  записать  значение
времени и/или даты, (0)  -  счи-
тать значения времени и/или  да-
ты.
   6: (1) - считывание  в  буфер
(только если бит 7 = 0) (см. бит 
5).
   5: (1) - прямое считывание (6
байт данных из CMOS), (0) - счи-
тывание в формате ASCII.
   0: (1) - работа с  датой, (0)
- работа со временем.
   Кроме этого, при вызове  фун-
кции регистр HL может  указывать
адрес буфера (расположенный в  5
и 2 банках CPU), если бит 6 = 1.
Регистр E содержит формат считы-
вания: младшие 5  бит  -  символ
разделителя (для вывода в форма-
те ASCII); биты 7, 6 и 5  разре-
шают вывод соответственно часов,
минут и секунд, либо для  вывода
даты: 7 - выводить день  недели,
6 - ставить "0" перед  числом, 5
- выводить месяц словом и  перед
годом добавлять 19. Функция воз-
вращает данные либо в  буфер  (в
виде строки ASCII или 6-ю байта-
ми:  секунды, минуты, часы, чис-
ло, месяц, год), либо  в  регис-
трах: C - секунды/число, B - ми-
нуты/месяц, E  -  часы/год, L  -
день недели. В  этих  же  регис-
трах задаются значения для изме-
нения времени или даты.  Бит  CY
указывает на ошибку  (микросхемы
CMOS нет).

       Краткая информация
   по работе с IBM периферией

   Схема дешифрации  контроллера
позволяет  выбирать  любой  порт
ввода/вывода   на   периферийной
плате IBM PC XT, подключенной  к
SMUC.
   Порты  ввода/вывода  IBM  ус-
тройств дешифрируются  по 10 ад-
ресным  линиям  (a9...a0).   При
этом, по  спецификации  IBM, ли-
ния a9 для  "внешних"  устройств
IBM PC XT должна быть в  состоя-
нии лог. 1, что аппаратно  обес-
печивается в  SMUC.  Остается  9
линий, но разместить  их  все  в
адресном  пространстве  ZX Spec-
trum сложно - необходимо обеспе-
чить  дешифрацию  и  других  ус-
тройств контроллера. Поэтому две
старшие линии (a8 и a7) мультип-
лексируются, их состояние в опе-
рации   ввода/вывода   статично.
Значение  этих  адресов   должно
быть предварительно  записано  в
специальный управляющий  регистр
контроллера. Адрес этого  регис-
тра  в  пространстве  TR-DOS  ZX
Spectrum - 0ffbah. Поскольку ос-
тальные разряды управляющего ре-
гистра используются для внутрен-
них  нужд  самого   контроллера,
необходимо обеспечить их коррек-
тную установку.

   Задание разрядов a8 и a7:

        D7  0
        D6  1
        D5  1
        D4  1
        D3  0
        D2  A8
        D1  A7
        D0  1

   Внимание!   На   контроллерах
SMUC версии 1.1 и ниже была  до-
пущена ошибка, никак  не  влияю-
щая на работу с HDD.  Разряд  A8
адресной шины IBM  слота  управ-
лялся  не разрядом D2, а  разря-
дом D3. Если  у  Вас  контроллер
версии 1.1 и ниже, то вам  необ-
ходимо  самостоятельно   сделать
его доработку  (исправление  на-
шей ошибки). Для этого необходи-
мо перерезать  проводник, идущий
к выводу 6 микросхемы 1533ТМ9, и
подключить вывод 6 ТМ9 к  выводу
9 панельки для i8259A при  помо-
щи  короткой  перемычки.   Кроме
этого, желательно изменить  вер-
сию прошивки  микросхемы  ALTERA
7032.  Замена  версии   прошивки
производится в фирме  "Скорпион"
бесплатно.
   Другая установка разрядов D7,
D6, D5, D4, D3 и D0, кроме пока-
занной выше, недопустима и может
привести  к  неработоспособности
контроллера.
   Остальные семь адресных линий
напрямую передаются к IBM слоту.
Для выбора IBM устройства  необ-
ходимо обеспечить полный шестна-
дцатизначный адрес порта  ввода/
вывода  ZX Spectrum,  в  котором
следует установить линии  выбора
самого слота и адреса в нем. Об-
ращение к адресу  следует произ-
водить в поле адресов TR-DOS.

       Выбор IBM слота:

 Scorpion   IBM  Scorpion  IBM

   A15       0    A07       1
   A14       a4   A06       1
   A13       a3   A05       1
   A12       1    A04       a6
   A11       1    A03       a5
   A10       a2   A02       1
   A09       a1   A01       1
   A08       a0   A00       0

   Символами aN  обозначены  ад-
ресные линии портов  ввода/выво-
да на картах IBM PC XT.
   Пример обращения к карте пос-
ледовательного интерфейса  COM1,
подключенной к контроллеру SMUC.
Базовый адрес  устройства  COM1,
специфицированный на IBM-совмес-
тимых  картах - 0x3f8h.  Вначале
определяется  содержимое  регис-
тра управления  (адресные  линии
a8 и a7). Для адреса 0x3f8h это:
a8=1, a7=1, следовательно, в уп-
равляющий регистр необходимо за-
писать 77h:

        D7  0
        D6  1
        D5  1
        D4  1
        D3  0
        D2  1
        D1  1
        D0  1

   Далее вычисляется адрес внеш-
него устройства  в  области  TR-
DOS; подставив в таблицу соотве-
тствующие адресные  линии, полу-
чим 78feh:

 Scorpion   IBM  Scorpion  IBM

   A15       0    A07       1
   A14       1    A06       1
   A13       1    A05       1
   A12       1    A04       1
   A11       1    A03       1
   A10       0    A02       1
   A09       0    A01       1
   A08       0    A00       0

   Для обращения к  портам  вво-
да/вывода  ZX Spectrum, адресуе-
мым в области TR-DOS, в  Теневом
Мониторе существуют две подпрог-
раммы, расположенные в части TR-
DOS ПЗУ:

        org     3ff0h
        out     (c),a
        ret
        org     3ff3h
        in      a,(c)
        ret

  Пример кода, считывающего байт
из регистра данных COM1:

        ld      a, 77h ; байт
для установки разрядов A8 и A7
на IBM-слоте.
        ld      bc, 0ffbah
        call    wrtrdos
        ld      bc, 78feh
        call    rdtrdos
        ;данные в аккумуляторе
        ;....
wrtrdos:        ;запись в порт
в/в, находящийся в пространстве
TRDOS.
        ld      hl, 3ff0h
        push    hl
        jp      3d2fh
rdtrdos:        ;считывание из
порта в/в, находящегося в прос-
транстве TRDOS.
        ld      hl, 3ff3h
        push    hl
        jp      3d2fh


      Дальнейшее развитие

   В самом ближайшем будущем  мы
планируем, по возможности, ввес-
ти более удобный  способ  работы
контроллера SMUC  в  системе  IS
DOS.  В  дальнейшем  планируется
расширение функций Теневого Сер-
вис-Монитора, связанных  с  под-
держкой устройств, установленных
на контроллере SMUC. Здесь  речь
идет прежде  всего  о  поддержке
HAYEs-совместимого модема, а та-
кже о подключении накопителя  на
CD дисках и выпуска  CD ROM  для
Spectruma.  Кроме этого, ведутся
работы по  русификации  Теневого
Сервис-Монитора. Появление  быс-
тродействующей внешней  памяти -
жесткого диска, а скорость ввода
данных с HDD сравнима со скорос-
тью ввода программ из ROM-диска,
позволили начать работу над соз-
данием  гипертекстовой  справоч-
ной системы по функциям  Тенево-
го Сервис-Монитора  и  Spectrum-
совместимым компьютерам в целом.
Кроме этого, планируется  созда-
ние операционно независимой сис-
темы псевдомногозадачности, что-
то типа MagOS, но  встроенной  в
"сердце"  компьютера  и  поэтому
работающей намного корректнее, к
тому же  обладающей  практически
неограниченной  памятью.   Более
того, на наш  взгляд,  подключе-
ние накопителя на жестком  диске
решает вопрос расширения  памяти
компьютера до любой разумной ве-
личины. Причем такое  расширение
обходится  пользователю  намного
дешевле, чем  использование  не-
посредственно   микросхем   ОЗУ.
Кроме этого, к сожалению, не су-
ществует   практически   никаких
стандартов на расширения  памяти
свыше 128 кБайт, и  поэтому  эта
дополнительная память практичес-
ки не поддерживается разработчи-
ками ПО. Использование же HDD  в
качестве  расширенной  памяти  с
обязательной поддержкой на уров-
не теневого сервис-монитора поз-
волит  использовать  расширенную
память хотя бы  для  того, чтобы
превратить компьютер в  многоза-
дачную  систему  с  одновременно
работающими различными  програм-
мами, причем программы будут аб-
солютно  стандартными, без  вся-
ких доработок, и количество  та-
ких программ практически не  ог-
раничено.  Кроме  этого,  запуск
работы нескольких программ  пос-
ле включения компьютера  не  бу-
дет   занимать   дополнительного
времени, как, например, в  теку-
щей версии MagOS. Из  всего  вы-
шесказанного можно  сделать  вы-
вод, что работы над совершество-
ванием программного  обеспечения
идут постоянно. Как мы уже неод-
нократно  писали,  это  является
самым  главным  отличием  нашего
компьютера  от  всех   остальных
Spectrum-совместимых  моделей  -
постоянное увеличение возможнос-
тей компьютера  только  за  счет
программного   обеспечения,  без
изменения аппаратной части. Всем
пользователям Scorpion-совмести-
мых компьютеров сообщаем о  вве-
дении нами новой услуги: вы  мо-
жете приобрести у нас дискету  с
последними прошивками  Професио-
нального ПЗУ и тем  самым  полу-
чить самую последнюю версию сис-
темного  ПЗУ.  Также, всегда  Вы
можете "скачать " свежие прошив-
ки ППЗУ из файл-эхо  ZX Spectrum
в сети FIDO.

           *   *   *             
в/в, находящийся в пространстве
TRDOS.
        ld      hl, 3ff0h
        push    hl
        jp      3d2fh
rdtrdos:        ;считывание из
порта в/в, находящегося в прос-
транстве TRDOS.
        ld      hl, 3ff3h
        push    hl
        jp      3d2fh


      Дальнейшее развитие

   В самом ближайшем будущем  мы
планируем, по возможности, ввес-
ти более удобный  способ  работы
контроллера SMUC  в  системе  IS
DOS.  В  дальнейшем  планируется
расширение функций Теневого Сер-
вис-Монитора, связанных  с  под-
держкой устройств, установленных
на контроллере SMUC. Здесь  речь
идет прежде  всего  о  поддержке
HAYEs-совместимого модема, а та-
кже о подключении накопителя  на
CD дисках и выпуска  CD ROM  для
Spectruma.  Кроме этого, ведутся
работы по  русификации  Теневого
Сервис-Монитора. Появление  быс-
тродействующей внешней  памяти -
жесткого диска, а скорость ввода
данных с HDD сравнима со скорос-
тью ввода программ из ROM-диска,
позволили начать работу над соз-
данием  гипертекстовой  справоч-
ной системы по функциям  Тенево-
го Сервис-Монитора  и  Spectrum-
совместимым компьютерам в целом.
Кроме этого, планируется  созда-
ние операционно независимой сис-
темы псевдомногозадачности, что-
то типа MagOS, но  встроенной  в
"сердце"  компьютера  и  поэтому
работающей намного корректнее, к
тому же  обладающей  практически
неограниченной  памятью.   Более
того, на наш  взгляд,  подключе-
ние накопителя на жестком  диске
решает вопрос расширения  памяти
компьютера до любой разумной ве-
личины. Причем такое  расширение
обходится  пользователю  намного
дешевле, чем  использование  не-
посредственно   микросхем   ОЗУ.
Кроме этого, к сожалению, не су-
ществует   практически   никаких
стандартов на расширения  памяти
свыше 128 кБайт, и  поэтому  эта
дополнительная память практичес-
ки не поддерживается разработчи-
ками ПО. Использование же HDD  в
качестве  расширенной  памяти  с
обязательной поддержкой на уров-
не теневого сервис-монитора поз-
волит  использовать  расширенную
память хотя бы  для  того, чтобы
превратить компьютер в  многоза-
дачную  систему  с  одновременно
работающими различными  програм-
мами, причем программы будут аб-
солютно  стандартными, без  вся-
ких доработок, и количество  та-
ких программ практически не  ог-
раничено.  Кроме  этого,  запуск
работы нескольких программ  пос-
ле включения компьютера  не  бу-
дет   занимать   дополнительного
времени, как, например, в  теку-
щей версии MagOS. Из  всего  вы-
шесказанного можно  сделать  вы-
вод, что работы над совершество-
ванием программного  обеспечения
идут постоянно. Как мы уже неод-
нократно  писали,  это  является
самым  главным  отличием  нашего
компьютера  от  всех   остальных
Spectrum-совместимых  моделей  -
постоянное увеличение возможнос-
тей компьютера  только  за  счет
программного   обеспечения,  без
изменения аппаратной части. Всем
пользователям Scorpion-совмести-
мых компьютеров сообщаем о  вве-
дении нами новой услуги: вы  мо-
жете приобрести у нас дискету  с
последними прошивками  Професио-
нального ПЗУ и тем  самым  полу-
чить самую последнюю версию сис-
темного  ПЗУ.  Также, всегда  Вы
можете "скачать " свежие прошив-
ки ППЗУ из файл-эхо  ZX Spectrum
в сети FIDO.

           *   *   *             




Другие статьи номера:

Авторская разработка - С.Зонов, А.Ларченко. О контроллере SMUC (HDD и IBM периферия).

Компьютерная новелла - Воины Звезд (по игре Shadowfire).

Новые программы - Обзор Digital Studio v1.12, Digital Studio Compiler v1.01

Новые программы - Обзор Xas редактор-ассемблер 128К (v5.05).

Новые программы - Обзор Музыкального редактора Instrument v3.01

Новые программы - Обзор программ FASTzasm и @-zasm.

Новые программы - Обзор программы No Kempston.

Профессиональный подход - Алгоритмы построения и прохождения Лабиринтов.

Смех без причины... - Материалы из юмористического журнала SpectrofUn.

Советы экспертов - Игра FEUD.

Советы экспертов - Игра Killed Until Dead.

Советы экспертов - Игра War in Middle Earth.

Форум - Конверсия цветной спектрумовской картинки на IBM. Конверсия ч/б картинки с IBM на ZX Spectrum.

Форум - О русификации игровых программ.

Форум - Программа детекта эмулятора.

Форум - Процедура "цветные полосы на бордюре". Снижение шума FDD.

Форум - Процедура перевода числа в десятичный вид. Процедура - сканер пароля.

Форум - Снятие защиты Microprotector'а.

Форум - Эмуляторы, которые мы выбираем: 'UKV Spectrum Debugger', 'Z80TRDOS'.

Читатель-читателю - Драйвер ввода в режимах последовательного и прямого доступа из файлов системы TR-DOS.

Этюды - Графический эффект "плазма 2".

Этюды - Графический эффект "плазма 2".

Этюды - Графический эффект "плазма".

Этюды - Полезные советы. Быстрая переброска экрана.

Этюды - Ремейк процедур 93 года.

Этюды - Эффект "пламя".


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

Похожие статьи:
Стихи - "Интерлюдия".
Глюк! - О глюках второго номера газеты.
Demo scene - idiot by skrju: демо, показанное в калининграде на выставке ascii-работ группы galza.

В этот день...   15 июня