Доброго времени суток!

Цитата Сообщение от Zloy Посмотреть сообщение
Кто-нибудь поподробней может рассказать об этой версии TR-DOS? Кто-нибудь с ней работал? Как организована работа с HDD?
Эта прошивка у меня на Пентагоне до сих пор работает
Сейчас расскажу

Она состоит их двух частей 16К тр-дос и 16К бэйсик48
если винчестер не подключен? то на диске Д - рамдиск по стандарту расширения Профи на 896К (а в исходнике можно поменять на Пентагон 1024К )

Прошивка позволяет подключить одновременно 4 образа дискет (файлы .trd)
к дисководам A,B,C,D при этом информация о подключенных образах сохраняется
на винчестере - и после включения Спектрума можно сразу с этими образами работать
Перехватывается обращение программ к #3D13 и перенаправляется в в файл образ
Чтобы подключать образы? используется утилита mount - запускаемая из оболочки в DNA OS - т е необходимо зайти в папку с образом - навести стрелку на имя файла трд и нажать ентер

---------- Post added at 11:32 ---------- Previous post was at 11:21 ----------

Если нажимать на образ на правой панели - то он подключается к диску А - а если на левой панели то к диску С - это настраивается в оболочке (файл SHELL.SEP) - потом подробнее расскажу
Файлы образы трд подключаются втом случае? если они расположены на первом (основном разделе винчестера) - со второго раздела(который обычно расширенный-дополнительный) их подключить нельзя
Винчестер нужно такой который поддерживает режим LBA (как правило это винты объемом 540 Мегабайт и более)
Винты CHS тоже поддерживаеются - но их не надо использовать так как в драйвере есть ошибка - в результате которой после записи сектора проихсодит зависание на некоторый коммандерах
На винчестере первый раздел дожен быть отформатирован в фаловую систему FAT32 (лучше) или FAT16 (хуже) в связи с тем что прошивка работает с непрерывным файлом trd - в фат 32 файлы всегда непрерывные (если они созданы в системе DNA - это так из-за особенности драйвера - но фрагментированными они будут если в другой проге создавались ) а в фат16 могут быть фрагментированы

---------- Post added at 11:33 ---------- Previous post was at 11:32 ----------

Если нажимать на образ на правой панели - то он подключается к диску А - а если на левой панели то к диску С - это настраивается в оболочке (файл SHELL.SEP) - потом подробнее расскажу
Файлы образы трд подключаются втом случае? если они расположены на первом (основном разделе винчестера) - со второго раздела(который обычно расширенный-дополнительный) их подключить нельзя
Винчестер нужно такой который поддерживает режим LBA (как правило это винты объемом 540 Мегабайт и более)
Винты CHS тоже поддерживаеются - но их не надо использовать так как в драйвере есть ошибка - в результате которой после записи сектора проихсодит зависание на некоторый коммандерах
На винчестере первый раздел дожен быть отформатирован в фаловую систему FAT32 (лучше) или FAT16 (хуже) в связи с тем что прошивка работает с непрерывным файлом trd - в фат 32 файлы всегда непрерывные (если они созданы в системе DNA - это так из-за особенности драйвера - но фрагментированными они будут если в другой проге создавались ) а в фат16 могут быть фрагментированы

---------- Post added at 11:44 ---------- Previous post was at 11:33 ----------

Перед использованием прошивки неободимо в корневой каталог первого раздела поместить файл с именем DNA_OS.SWP - файл должен быть непрерывным
его длина должна быть 128,5 Кб или более - можно например скопировать любой файл с сд-рома на винт и переименовать его
прошивка использует буфер 512 байт из этого файла при записи секторов в образ трд
остальные 128 Кб нужны вот для чего:
при нажатии кнопки магик происходит сохранение регистров процессора в стек и запись всей 128-й памяти в эту область а далее прошивка загружает ОБРАБОТЧИК КНОПКИ магик в память на адрес #6000 из загрузочной области винта (с сектора 2 считая сектора с нуля) - а там по умолчанию ядро системы DNA, которая сразу грузит оболочку

Если при нажатии кнопки магик держать кнопку symbol shift - то прошивка загружает из буфера 128Кб в память - восстанавливает регистры процессора и передает управление на то место на котором была прервана программа