Info Guide
#07
31 мая 2005 |
|
Sofтинка - DNA_OS v0.431 - пакет утилит для работы с винчестерами, RAM-дисками и дискетами.
DNA_OS v0.431 help ZET-9 Last edit 29.05.2005 DNA_OS v0.431 - это экспериментальная демонстрационная версия системы DNA. 1. Что такое система DNA? Система DNA (далее по тексту - система) представляет собой пакет подпрограмм и утилит, предназначенный для работы с вин─ честерами,RAM-дисками и гибкими магнитными дисками (дискетами).В состав пакета входит собственно ядро системы,файлы конфигурации системы, оболочка системы,утилиты,драйвера памяти и вспомогательные файлы. 2. Использование системы DNA можно использовать двумя способами: 1) Запускать утилиты, входящие в состав пакета. Каждая утилита предназначена для решения конкретной задачи (например, прос─ мотр картинки; с помощью оболочки можно просматривать каталоги дисковых устройств, запускать файлы и т.д.). 2) Использовать в своих п-мах функции, предоставляемые ядром системы, входящим в состав пакета (например,для получения дос─ тупа к файлам,расположенным на HDD). 3. Загрузка системы При загрузке сначала в память загружае─ тся ЗАГРУЗЧИК ядра системы (из ПЗУ, с дис─ кеты или RAM-диска).Он загружает ядро сис─ темы с определенного у-ва,называемого заг─ рузочным, и передаёт ядру управление. Ядро системы берет номер загрузочного у-ва (из своих системных переменных) и за─ гружает с этого у-ва файлы конфигурации. Если нажать клавишу "Space", то файлы конфигурации не загружаются (так же и в случае отсутствия их на загрузочном у-ве). После загрузки файлов конфигурации меняют─ ся системные переменные, драйвер памяти, и номер загрузочного у-ва также может изме─ ниться (это зависит от файлов конфигура─ ции). Далее ядро загружает с загрузочного у-ва оболочку (или п-му, имя которой было указано в файле конфигурации) и передаёт управление ей. Загрузка с гибкого магнитного диска В этом случае используется стандартная дискета TR-DOS с системными файлами (т.е. файлами,входящими в состав пакета).Для за─ грузки системы необходимо запустить бей─ сик-файл DNAos431. Сейчас система настрое─ на на загрузку с диска A:. Чтобы запустить с другого устройства,систему нужно перена─ строить (см. ниже). Загрузка с винчестера Сначала необходимо установить систему на винчестер, используя утилиту INSTALL (эта утилита входит в состав пакета,подро─ бности см.: "7. Установка системы" ).После этого можно загружать систему с винчестера с помощью загрузчика,расположенного в ПЗУ. Можно использовать прошивку Mr. Gluk Reset Service v6.1 от Alone Coder'a. Oна позво─ ляет,используя пункт меню hdd_Boot, загру─ жать систему с винчестера, подключенного как Master. При отсутствии загрузчика в ПЗУ систему можно загружать, используя бейсик-загруз─ чики,запускаемые с дискеты TR-DOS.(В пакет входят две версии,одна версия для загрузки с винчестера, подключенного как Master, вторая - для Slave). Загрузка с RAM-диска Под RAM-диском подразумевается RAM-диск с файловой системой TR-DOS, который может быть создан в памяти компьютера с помо─ щью различных средств: Real Commander'ом или специальной версией TR-DOS (например, 5.12; 5.13f; 6.05e; 6b09e ). Сначала необходимо настроить систему на загрузку с RAM-диска (подробности см.: "8. Настройка системы" );скопировать системные файлы на RAM-диск и после этого загружать систему, как и с гибкого магнитного диска. 4. Работа с системой Перед работой систему необходимо наст─ роить. Подробно про настройку см. в конце. После загрузки системы будет загружена оболочка. Оболочка системы предназначена для навигации по дисковым у-вам и запуска файлов и утилит. В оболочке две панели с названиями фай─ лов: каталог загрузочного у-ва (на левой панели) и каталог системного у-ва (на пра─ вой панели). Управлять стрелочкой можно мышкой,джой─ стиком и клавишами QAOP. Выбор - клавиша "M" (на мышке - это левая клавиша,на джой─ стике - "выстрел"). По умолчанию мышка и джойстик отключены. Включить их можно в окне настройки. В оболочке доступны следующие функции. При нажатии на левый/правой стороне экрана осуществляется листание каталога: страница назад/вперёд.Аналог - кнопки 1,2. При нажатии в левом верхнем углу - окно настройки оболочки: в нём можно отключить/ включить Kempston Mouse,Kempston Joystick, поменять цвет BORDER'а и сохранить настро─ йки оболочки в файл оболочки,расположенный на загрузочном у-ве (при его отсутствии окно настройки остаётся на экране). Нажатие на верхней границе экрана при─ водит к смене текущей панели.Заголовок те─ кущей панели подсвечен желтым цветом.Также можно нажать клавишу "3" для этой же цели. При нажатии клавиши "R" каталог текущей панели перечитывается. Нажатие на заголовке панели (надписи типа: A:SPECTRUM или A:DIMA ) приводит к появлению окна выбора у-ва.Для выбора у-ва необходимо нажать над его названием. У-во будет инициализировано, и отобразится его каталог или окно ошибки (если нет дискеты или раздела на HDD). В этом окне названия у-в жестко заданы. Если в настройках системы изменить типы у-в,здесь они останутся такие же (т.е. уже не будут соответствовать реально установ─ ленным у-вам). - Диск A,Диск B,Диск C,Диск D - соответс─ твуют физическим дисководам A,B,C,D ; - RAM_0, RAM_1 - 2 RAM-диска с номерами 0 и 1 (по умолчанию RAM_0 начинается в стра─ нице 63, "растёт" вниз, длиной 56 страниц; RAM_1 - нач.в стр.31, "растёт" вниз,длиной 24 стр.); - HDD_M0 - 1-й основной раздел на HDD Master; - HDD_S0 - то же на Slave; - HDD_M4;HDD_M5;HDD_M6;HDD_M7 - 1-й, 2-й, 3-й и 4-й дополнит. разделы на HDD Master; - HDD_S4;HDD_S5;HDD_S6;HDD_S7 - то же на Slave; - HDD_M2;HDD_M3 - 3-й и 4-й основные раз─ делы HDD Master (их можно создать на пц п-мой Partition Magic 8.0 ); - HDD_S2;HDD_S3 - то же на Slave. При нажатии в правом верхнем углу эк─ рана появится окно выхода в STS, ALASM, BASIC128, BASIC48, TR-DOS или в кэш. При нажатии на нижней стороне экрана или по клавише "Т" появится т.н. "окно за─ дач". В нём показано количество свободных страниц памяти. На Спектруме с объёмом па─ мяти 128k будет показано 4 страницы; при объёме памяти 512k и 1024k будет показано соответственно L и l страниц памяти (это глюк) при наличии соответствующего драйве─ ра верхней памяти.И ниже п-мы,обнаруженные в памяти. Пока что там только ядро системы и её файл - это оболочка (SHELL). Если вы увидите много названий DNA, это может оз─ начать, что драйвер памяти,установленный в системе, не подходит к вашему компьютеру (см.: "Настройка системы" ). При нажатии на файле: - если это бейсик,происходит попытка его запуска; - если это программа/утилита системы DNA (имеет расширение SEP ), она запускается; - нажатие на файлах с другим расширением приводит к тому, что оболочка ищет файл с именем EXTEND.TXT и в нём смотрит имя ути─ литы, предназначенной для открытия файла с выбранным расширением; далее оболочка вы─ зывает ядро системы, передаёт ему имя фай─ ла, который надо открыть, и имя п-мы,с по─ мощью которой открывать; ядро системы ищет на системном у-ве п-му и запускает её. После выхода из п-мы управление переда─ ётся в ядро, и ядро загружает оболочку с загрузочного у-ва (или не оболочку,а п-му, имя которой указано в файле конфигурации). При отсутствии файла EXTEND.TXT на дис─ ке с открываемым файлом EXTEND.TXT ищется на системном у-ве. Запускать/открывать можно файлы с таки─ ми расширениями: SNA - снапшот SNA-48k; SCR - стандартный экран; TRF - кодовый блок; TXT - текстовый файл; TRD - образ диска тр-дос; SCL - набор файлов тр-дос. Чтобы зайти в подкаталог,надо нажать на его имени;чтобы выйти - нажать на "..". Можно удалить файл, нажав клавишу "8", при этом стрелка должна быть над именем файла. Появится предупреждение "Удалить файл?". Нельзя удалять подкаталоги (т.к. место,занимаемое файлами внутри подкатало─ га,останется занятым).Удаление не работает на разделе, отформатированном как FAT12. Чтобы скопировать файл,наведите стрелку на имя файла и нажмите клавишу "5". Оболо─ чка вызовет ядро системы для загрузки ути─ литы COPY.SEP и передаст ей имя копируемо─ го файла. При невозможности скопировать файл вы увидите белый BORDER (например,если файл с таким именем уже существует),тогда нажатие клавиши "1" позволит скопировать файл в уже существующий. При этом,если существую─ щий файл имеет меньший размер, то будет скопирована начальная часть файла (сколько поместится в существующий файл). В осталь─ ных случаях (нет места на диске и т.д.) происходит выход в оболочку. Скопировать файл на тот же дисковод, но на другую дискету вам не удастся. 5. Краткое описание программ и утилит, входящих в состав пакета 1) OPEN_SCR.SEP предназначена для показа стандартных спектрумовских картинок длиной 6912 и расширением SCR(scr) (была сделана для тестирования системы); 2) RUN_TRF.SEP запускает файлы в формате trf(TRF) (формат trf придумал INSIDE - это аналог кодовых файлов,свободно "живущих" в других файловых системах). Не запускает trf'ы, имеющие стартовый адрес <#6200; 3) RUN_SNA.SEP запускает файлы в формате снапшотов 48k, расширение файлов sna(SNA). В самом конце,непосредственно перед запус─ ком sna, включает 0-ю страницу памяти пря─ мым обращением к порту #7FFD (а внутри программы обращение к драйверу,через рези─ дент).Можно исправить,но будет портить эк─ ран сильнее (сейчас первые 20 или 14 байт в начале экрана). Запуск файла SNA-48k занимает времени: - с дискеты MS-DOS (FAT12) (через #3D13) ок.1 мин.; - с дискеты TR-DOS (#3D13) ок.15 сек.; - с винчестера MS-DOS (FAT16) ок.1 сек.; - с RAM-диска TR-DOS ок.0.5 сек. 4) TRD2DISK.SEP копирует файлы с расши─ рением .TRD на TR-DOS'ные диски. После за─ грузки ждёт нажатия 1,2,3,4 для выбора ди─ сковода A,B,C,D соответственно. Внимание! Если система загружена с дис─ кеты на компьютере с одним дисководом,и мы хотим записывать на этот же дисковод (а не на RAM-диск), то самое время поменять дис─ кету! При нажатии на любую другую клавишу - завершение работы п-мы.Уничтожает содержи─ мое тр-досного диска без дополнительных запросов,заменяя его содержимым файла .TRD (файл - образ диска TR-DOS). Проверки на принадлежность файла .TRD к миру TR-DOS не производится, будьте осторожны (встречал кучу TRD-файлов на CD-диске,при тщательном осмотре оказались текстовыми файлами с описанием п-м). Запись на дискету TR-DOS ведётся через #3D13, без обработки ошибок, со всеми вытекающими изо всех дырок после─ дствиями (в том числе можно копировать на RAM-DISK, у кого TR-DOS 5.13 ). Загрузка TRD-файла ведётся через функ─ ции системы. При работе меняет цвет BORDER'а: белый цвет - загрузка файла с источника; зелёный - запись на диск-приёмник. Длина файла TRD не проверяется: если он длиной в пол-диска - будет записана поло─ вина дискеты, если длина больше - будет произведена попытка записи на 160-165 тре─ ки и далее. Даже в существующем виде п-ма рекомен─ дуется для широкого применения - насыпать кучу TRD-файлов с компакта на винт (пока что на пц), подрубить винт к Спектруму и вперёд. 5) SCL2DISK.SEP копирует файлы из SCL на дискету TR-DOS. Управление:как в TRD2DISK. Ведётся проверка на кол-во файлов в ката─ логе (128), на свободное место на диске, а также на принадлежность файла .SCL к миру SCL (внутри файла ищется идентификатор SINCLAIR ). Если файлы в образе SCL имеют имена, совпадающие с именами на диске-при─ ёмнике, они добавляются на диск без вопро─ сов. Если общая длина файлов в образе SCL превышает длину свободного пространства на диске, на диск запишется столько файлов, сколько влазит. SCL может располагаться на у-ве с файловой системой TR-DOS, при этом длинные файлы SCL не "распаковываются", т.к.невозможно прочитать за пределами фай─ ла, если >255 сект. 6) DAT2VID.SEP преобразовывает картинки BMP из файла с видеороликом *.DAT (не PC- шный) в спектрумовские экраны и записывает их в файл такой же длины *.VID (файл уже должен быть на винте в том же каталоге,что и *.DAT ). В процессе работы отображает картинки на экране. Очень долго работает (6.8 мегабайт конвертирует минут 7). 7) PLAY_VID.SEP проигрывает видеоролики, полученные предыдущей прогой. Скорость с винта 12 кадров в секунду (48 k/с - чтение с винта через функции системы).Файл видео─ ролика должен быть непрерывным (без фраг─ ментации). Enter - выход, Space - пауза/ продолжить. В конце файла останавливается. Клавиша 1 - повторить,другая - выход. Примечание: п-мы PLAY_VID и DAT2VID создавались с целью отладки драйвера фай─ ловой системы FAT16/FAT12, для тестирова─ ния работы с длинными (несколько мегабайт) файлами. Практического применения сейчас не имеют. 8) VIEW_TXT.SEP - совсем сырая, пробная версия. Грузит текст в память (первые 26.5 k). Не показывает 43-й символ в строке,ис─ пользует два экрана и переключает их не через системный драйвер, а напрямую в порт #7ffd (караул!!!). Клавиши управления: Е - выход в оболочку; Q - на страницу вперед; W - на страницу назад; R - на строку вперед; T - на строку назад. 9) CONFIG.SEP устанавливает в систему элементы системы (*.DNK), перечисленные в списке в памяти. Неполноценная,при запуске думает, что включена страница с системой и в памяти есть список эл-тов. Запускается системой при загрузке, если в корневом ка─ талоге загрузочного у-ва обнаружен файл CONFIG.DNA. Ручной запуск не имеет смысла. 10) COPY.SEP - копировщик, копирует один файл. Вызывается оболочкой. Ручной запуск не имеет смысла. 6. Ядро системы Ядро системы во время работы находится в одной из страниц памяти (49152-65535). Ядро состоит из ЭЛЕМЕНТОВ. Элемент - это набор подп-м,объединённых общей тематикой (либо это драйвер конкрет─ ного у-ва). Эл-ты расположены в ядре в виде цепоч─ ки. В начале эл-та расположен указатель на следующий эл-т. Эл-т имеет имя длиной 8 байт. Ядро делится (условно) на дисковую сис─ тему и систему управления ресурсами. В состав дисковой системы обязательно входит эл-т DOS и хотя бы один драйвер файловой системы и один драйвер блочного ввода-вывода. Для удобства драйвера файло─ вой системы имеют имена с окончанием DFS (TR_DFS), а имена драйверов блочного вво─ да-вывода имеют окончание DRV (FDD_DRV, HDD_DRV). Часть ядра,управляющая ресурсами, имеет обязательно эл-ты: RUNEXE - занимается запуском п-м (файлы с расширением SEP ): загружает файл п-мы, формирует таблицу с данными про текущие настройки системы,передаёт п-ме адрес этой таблицы и управление. SYSTEM - предоставляет п-мам копию сис─ темных переменных, а также отвечает за из─ менение режимов прерываний (например,драй─ вер файловой системы TR-DOS обращается к эл-ту SYSTEM, чтобы включить режим преры─ ваний IM 1 перед тем, как обратиться к ПЗУ TR-DOS в точку входа #3d13). Также в ядре расположена копия драйвера страничной памяти, таблицы с данными про логические дисковые у-ва. Для вызова функций системы надо знать имя эл-та, а также номера и входные данные для той или иной функции.Параметры переда─ ются через таблицу.В общем случае програм─ ма должна сформировать в основной памяти (<49152) таблицу: defs m ;здесь будут переменные эл-та defw 0 ;здесь будет сообщ.от системы TABLE defb "RUNEXE " ;8 байт имя эл-та defb 0 ;номер функции defb 0 ;номер подфункции defs n ;входные данные для функции IX должен указывать на метку TABLE. По─ сле вызова эл-та по адресу TABLE-2 будет 2 байта сообщения: если они оба равны нулю - всё ОК, иначе при выполнении операции были ошибки.В конкретных случаях может отсутст─ вовать номер подфункции и даже номер функ─ ции (например,эл-т RUNEXE выполняет только одну функцию, поэтому по смещению TABLE+8 сразу идут входные данные;описание функций всех эл-тов см. в DNAmake.txt ), а также эл-т может использовать для своих перемен─ ных область в таблице (от TABLE-m-2 до TABLE-2 ). 7. Установка системы на винчестер Требования к винчестеру Требуется стандартный IDE HDD, подклю─ ченный как Master или как Slave через кон─ троллер IDE по схеме Nemo. Необходим такой винчестер, на которым уже имеется один или несколько (максимум - семь) разделов. Раз─ делы должны быть отформатированы в файло─ вой системе FAT16 (либо FAT12 - если раз─ мер раздела меньше 16 мегабайт). К сожалению, в данной версии системы отсутствует утилиты для создания разделов на винчестере и их последующего формати─ рования, поэтому создавать и форматировать разделы надо на другом компьютерe,на кото─ ром есть для этого средства. Процесс установки на винчестер Перед установкой настройте систему (см. "Настройка системы" ). Загрузите систему с дискеты [не с HDD - обязательное требование!]. Запустите утилиту INSTALL.SEP. Выберите винчестер,на который будет ус─ тановлена система (Master или Slave). Выберите тип ядра: ядро системы DNA_OS. Далее выбираете запись ядра; ядро будет записано,начиная с 3-го сектора винчестера (считая сектора с единицы), предварительно эта область будет загружена в память и за─ писана на дискету в файлы BOOT_SEC.SYS и SECTOR01.SYS. Если ядро не поместится в boot-сектор винчестера,будет предложено прочитать файл INSTALL.TXT (в нём сказано,что в этом слу─ чае необходимо при установке выбирать ядро пользователя, которое короче). Далее выберите пункт "копирование фай─ лов". Если всё в порядке, то появится над─ пись "Система успешно установлена" и будет предложено запустить систему с винчестера для проверки правильности установки. Файл DNA_OS.SYS в корневом каталоге HDD для работы системы не используется - ре─ зерв. 8. Настройка системы При настройке необходимо: - указать номера загрузочного и систем─ ного у-в в файле-ядре системы и в файле SYSTEM.DNA; для ядра для загрузки и работы с HDD инсталлятор сам установит эти номера в файле DNA_OS.SYS, а файл SYSTEM.DNA на HDD при установке не копируется; - для загрузки системы с другого диско─ вода указать номера 0,1,2,3 для дисководов A,B,C,D соответственно (см.также про наст─ ройку RAM-диска); - если на компьютере всего 128k памяти, удалите или переименуйте файл HIMEMORY.DNA (в ядре системы уже есть драйвер для Спек─ трума-128 ); - если памяти больше,выбрать драйвер па─ мяти и переименовать его в HIMEMORY.DNA. Список имеющихся драйверов: PENT_256.DNA, PENT_512.DNA, PENT_1M.DNA, PROFI_1M.DNA. По умолчанию HIMEMORY.DNA содержит драйвер памяти PENT_1М (для Pentagon-1024 ); - настроить RAM-диск(и), если памяти бо─ льше, чем 128k; - включить/отключить режим LBA для вин─ тов Master и Slave; Изменять параметры нужно в ядре системы (в файле D4.C ) с помощью STS. Для версии системы,предназначенной для загрузки и ра─ боты с винчестера,изменения вносить в файл DNA_OS.SYS [он не отличается от D4.C ]. Настройка RAM-диска(ов) Драйвер RAM-диска подключен к драйверу файловой системы TR-DOS. Загрузите файл ядра D4.C или DNA_OS.SYS в STS на адрес #BE00. (В этой версии адрес начала системных переменных, т.е. SYS_VAR-5, равен #E575 .) По адресу #E739 есть слово RAMSETUP. По адресу #E741 один байт - количество рам- дисков (сейчас драйвер поддерживает 4 рам- диска),далее с адреса #E742 идут по 5 байт на каждый RAM-диск: 1-й байт: если 0 - диск растёт вверх; если 1 - диск растёт вниз; 2 и 3 байты - номер стр.начала RAM-диска; 4 и 5 байты - длина диска в страницах. Сейчас RAM-диски имеют такие настройки: RAM_0 - со стр.63,растёт вниз,дл.56 стр.; RAM_1 - со стр.31,вниз,24 стр.; RAM_2 - со стр.15,вниз,8 стр. (его нет в окне выбора у-в в оболочке); RAM_3 - со стр.8,вверх,56 стр. (его тоже там нет). Если планируется загружать систему с RAM-диска,то установите номера загрузочно─ го и системного у-в равными 4 (для RAM_0) или 5 (для RAM_1):по адресу #E57C и адресу #E57D поместите эти номера у-в. Сохраните ядро системы с адреса #BE00 длиной #2B00 с именем файла D4.C. Установите такой же но─ мер у-ва в файле SYSTEM.DNA для загрузоч─ ного и системного у-в (байты по смещению 7, 8 от начала файла). Включение/отключение режима LBA По умолчанию для винта Master LBA вклю─ чен; для винта Slave - отключен. Загрузите файл ядра D4.C или DNA_OS.SYS в STS на адрес #BE00. По адресу #E756 есть слово SETUPHDD. По адресу #E760 поставьте 1 (для LBA) или 0 (не использовать режим LBA) для винта Mas─ ter. По адресу #E763 - то же для Slave. Сохраните ядро системы с адреса #BE00 длиной #2B00 с именем D4.C (или DNA_OS.S, если устанавливать на HDD, потом в комман─ дере переименуйте на DNA_OS.SYS ). Файлы конфигурации системы HIMEMORY.DNA, SYSTEM.DNA, CONFIG.DNA ВНИМАНИЕ! Система может нормально рабо─ тать без этих файлов! (только не будет до─ ступен RAM-диск,если он расположен в памя─ ти свыше 128k). При удержании клавиши "Space" в начале загрузки файлы игнорируются (так же при их отсутствии),и система будет работать с на─ чальными настройками. 1) Память компьютера.Поддерживаются раз─ личные типы компьютеров при наличии ДРАЙ─ ВЕРА СТРАНИЧНОЙ ПАМЯТИ. Драйвер (в данный момент) должен быть настроен на адрес загрузки #5B7B. Его дли─ на должна быть не более 100 байт. Файл драйвера должен называться HIMEMORY.DNA и присутствовать в корневом каталоге на заг─ рузочном у-ве. (При этом сам файл может иметь длину >100 байт, но использовано бу─ дет только первых 100 байт.) Для Спектрума-128 драйвер не нужен! 2) Расположение ядра системы. По умолчанию ядро системы находится в странице с номером 6. Чтобы выбрать страницу, в которой будет располагаться ядро системы при работе, берём и смотрим файл SYSTEM.DNA: в нём 2 байта по смещению 2 - номер страницы,в ко─ торой должно располагаться ядро при рабо─ те. После загрузки этого файла ядро будет перемещено в эту страницу. Внимание!Проверки на существование этой страницы нет! 3) В файле SYSTEM.DNA хранится информа─ ция про логические у-ва, установленные в систему. По смещению #B1 1 байт - количество ло─ гических у-в. По смещению #B2 по 3 байта на у-во: 1-й байт - номер драйвера файловой сис─ темы для данного логического у-ва (нумера─ ция с единицы); 2-й байт - номер драйвера блочного вво─ да-вывода для данного логического у-ва (нумерация с единицы); 3-й байт - номер виртуального диска (ну─ мерация с нуля). По смещению #27 - кол-во имён драйверов файловой системы. По смещению #28 расположено 6 (на дан─ ный момент) имён драйверов файловых систем (по 8 байт на имя). По смещению #58 - кол-во имён драйверов блочного ввода-вывода. По смещению #59 расположено 10 (на дан─ ный момент) имён драйверов блочного ввода- вывода (по 8 байт на имя). Пример у-в: TR-DOS'ные дисководы.4 шту─ ки. Имя драйвера файловой системы для всех TR_DFS располагается по смещению #28, со─ ответственно, 1-й байт в тройке у всех ло─ гических у-в имеет значение 0; имя драйве─ ра блочного ввода-вывода для всех FDD_DRV располагается по смещению #59, соответст─ венно, 2-й байт в тройке имеет значение 0. Номера виртуальных дисков для у-в: A=0; B=1; C=2; D=3. Следовательно, 3-й байт в тройке будет у каждого у-ва 0, 1, 2, 3 со─ ответственно. Т.о., имеем: по смещ. #27 байт 1 (1 драйвер файловой системы); по смещ. #58 байт 1 (1 драйвер блочного ввода-вывода); по смещ. #b1 байт 4 (4 лог. у-ва); По смещ. #b2 (12 байт) - 4 по 3 байта: 0,0,0; 0,0,1; 0,0,2; 0,0,3. Естественно, в ядре системы должны быть эл-ты с именами TR_DFS и FDD_DRV. На дан─ ный момент зарезервировано 6 имён драйве─ ров файловой системы и 10 имён драйверов блочного ввода-вывода, кол-во логических у-в может быть 26, т.е.зарезервировано под у-ва 26*3=78 байт (это ограничение связано с размером файла SYSTEM.DNA - 256 байт), в дальнейшем будет больше.Сама система может иметь до 256 у-в - но можно сделать драй─ вер, который будет предоставлять несколько у-в как папки на одном у-ве,и тогда кол-во у-в будет не ограничено). Сейчас в системе установлено 20 у-в: - 4 физических дисковода; - 2 RAM-диска; - по 7 разделов на HDD Master и Slave. 4) Файл CONFIG.DNA (текстовый) содержит: - по смещению 0 - имя первой запускаемой п-мы (8 байт). П-ма с указанным именем и расширением SEP будет загружена из корне─ вого каталога на загрузочном у-ве. - по смещению 8 любой байт (не использу─ ется,служит для визуального отделения име─ ни п-мы от дальнейшего текста). - по смещению 9 идут строки текста,окан─ чивающиеся на символ 13, конец файла - си─ мвол 3. Из каждой такой строки берётся имя файла эл-та - первые 8 байт строки. Файл с таким именем и расширением DNK ищется в корневом каталоге загрузочного у-ва; если найден - загружается и устанавливается в систему. Если 1-й байт в строке равен ";", то строка считается закомментированной и игнорируется. 5) В файле SYSTEM.DNA хранятся номера, присвоенные у-вам: по смещению 7 - номер загрузочного у-ва; по смещению 8 - номер системного; по смещению 9 - номер быстрого; по смещению 10 - номер у-ва для свопа. Проверки на номера у-в не ведутся. Если в примере с 4-мя у-вами (см. выше) указать номер загрузочного больше 3 (у-ва нумерую─ тся от нуля), то файл CONFIG.DNA и сама оболочка загружены не будут, и тогда пере─ ход в 7-ю страницу,в STS, без проверки на─ личия оного. DNA_OS v0.431 Система DNA поддерживает FDD, HDD(Nemo) и RAM-Disk. Существующий драйвер RAM-диска позволя─ ет использовать до 4 RAM-дисков, созданных в страницах верхней памяти с помощью Real Commander (такие RAM-диски начинаются в последней странице и "растут" вниз) или прошивками ПЗУ TR-DOS, такими как dos513f, dos605e и подобными (эти прошивки, в отли─ чие от dos6b09e, создают менее удобный RAM-диск, который "растёт" вверх). Существующие драйвера винчестера позво─ ляют: - одновременно использовать два HDD; - использовать разделы на HDD: на стан─ дартных MBR-винтах система "видит" пять разделов - один основной и четыре дополни─ тельных; а всего данная версия распознаёт 7 разделов (3 основных и 4 дополнительных) на HDD, подключенном как Master, и ещё 7 разделов на HDD, подключенном как Slave; - обращаться к HDD, используя режим LBA (если HDD поддерживает данный режим адре─ сации). В системе есть драйвера памяти для: - Spectrum-128; - Pentagon 256,512,1024; - Profi-1M. DNA работает со следующими файловыми системами: - TR-DOS (на дискетах,на RAM-Disk); - FAT12, FAT16 (на HDD ). Mожет читать/записывать/создавать/уда─ лять файлы. Драйвер TR-DOS создаёт файлы длиной максимум 65280 байт (255 секторов), драйвер FAT16 создаёт файлы длиной макси─ мум 16 мегабайт минус 1 байт, а при чте─ нии/записи длина до 4 Гб. На FAT12 функция удаления файла отсутствует. Может предоставлять программам каталог/ подкаталоги в универсальной форме (преоб─ разование каталогов разных файловых систем выполняется, если при вызове функции "чи─ тать каталог" уставлен флаг "преобразо─ вать"). Может копировать файлы с помощью систе─ мной утилиты COPY. Файлы копируются по од─ ному,в любом направлении: TR-DOS<>RAM-Disk <>HDD. При копировании на устройство с файло─ вой системой TR-DOS (дискета или RAM-Disk) длина копируемого файла должна быть є 255 секторов. При копировании на устройство с файло─ вой системой FAT12/FAT16 (HDD) длина файла должна быть є 16 мегабайт минус 1 байт. Протестирована с контроллером по схеме Nemo на следующих винтах (на Спектруме): - Seageate 130M; - Western Digital Caviar WD2200 212M; - DHAA2270 258M. И с этими же винтами на пц на эмуляторе Z80 Stealth v5.03 с эмуляцией компьютера KAY1024 и эмуляцией контроллера IDE Nemo. С контроллером SMUC не тестировалась. Драйвера памяти тестировались: а) На Спектрумах: - Profi-1M - на Пентагоне-1024 с перек─ лючением страниц по стандарту Профи; - Пентагон-512,1024 на Пентагоне-1024. б) В эмуляторах на пц: - эмулятор Шалаева 3.05 с плагином под─ держки памяти Профи - PROFMEM.ADD; - Unreal Speccy v0.20; - Z80 Stealth v5.03. Система успешно применяется для записи образов TRD (расположенных на винте) на реальные дискеты,а также для записи файлов из образов SCL, расположенных либо на вин─ те, либо на этой же дискете (либо на RAM- диске, или на дискете в другом дисководе). Также можно читать тексты с дискеты, RAM-диска или HDD (грузятся только первые 26.5 k текста), смотреть стандартные экра─ ны, запускать снапшоты 48k и файлы формата TRF. ZET-9 (Дмитрий Аврята), г.Харьков
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября