Важная информация

User Tag List

Страница 15 из 23 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя
Показано с 141 по 150 из 230

Тема: Как установить iS-DOS на KAY-2010 + SMUC?..

  1. #141
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я кастрировал драйвер idesmuc, выбросив из него все процедуры чтения и записи. Оставил расчёт CHS по номеру блока. Спецпрограммой пытаюсь "прочитать" все блоки раздела по одному через драйвер и забираю у драйвера то, что он пишет в регистры CHS жёсткого диска. Потом анализирую. Никаких ошибок в процедуре расчёта CHS я не обнаружил. Осталось проверить на сколько правильно драйвер читает/пишет половинки секторов.
    Проверил две другие версии Rhddsmuc - оба ведут себя одинаково и выдают мне Error 86 в одном и том же месте. Уже похоже на косяк в протоколе обмена с диском.

    Попробую завтра поиграться с версией драйвера с поддержкой LBA.

  2. #142
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Все четыре драйвера ведут себя одинаково.
    Узкое место локализовано. Причина, почему так происходит - не ясна. На старом HDD (420 Мб) всё работает.
    Буду искать способы обхода этого места.

  3. #143
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    К сожалению так просто обойти это место в существующих драйверах у меня не получается. Я пишу новый драйвер, по мотивам, но с учётом данной особенности.
    Работы ведутся, но медленно. Я вплотную приблизился к процедуре чтения. Потом будет тестирование. Потом напишу запись. Потом снова тестирование.
    Нужно набраться терпения.

    Суть проблемы в кратце. Проблема возникает, когда нужно писать нечётное количество блоков. Либо когда блок попадает на середину сектора. Допустим мне нужно записать три блока начиная с сектора 0. Драйвер записывает первый сектор (длиной два блока) целиком, а следующий сектор сначала считывает, а потом записывает половинку сектора из данных блока, в вторую половинку записывает тем, что было считано. Так вот, после записи первого сектора даётся команда чтения сектора без коррекции CHS этого сектора, т.е. считывается предыдущий сектор, на котором остановилась запись.

  4. #144
    Veteran
    Регистрация
    15.07.2009
    Адрес
    Череповец
    Сообщений
    1,763
    Спасибо Благодарностей отдано 
    151
    Спасибо Благодарностей получено 
    56
    Поблагодарили
    42 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А если всегда писать чётное число блоков, добивая последний нечётный блок нулями?
    ZX-Evo Rev. C4 (Double-config) / VDAC2 / ZiFi / NeoGS / ZXM-Soundcard Extreme

  5. #145
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Процедуры чтения дописаны и протестированы. На днях займусь процедурами записи.

  6. #146
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Процедуры записи написаны. Идёт все стороннее тестирование драйвера.

  7. #147
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AmoNik Посмотреть сообщение
    Оставил расчёт CHS по номеру блока. Спецпрограммой пытаюсь "прочитать" все блоки раздела по одному через драйвер и забираю у драйвера то, что он пишет в регистры CHS жёсткого диска. Потом анализирую. Никаких ошибок в процедуре расчёта CHS я не обнаружил.
    И всё таки она глючит. Я два дня убил на проверки и перепроверки своих процедур чтения и записи и в итоге пришёл к выводу, что они не виноваты. Ещё день ушёл на отлов глюков той процедуры и в итоге я от неё отказался и написал свою.
    Сегодня собрал новый драйвер и потестировал. Создал новый раздел и переписал на него через новый драйвер свой системный диск. Потом проверил структуру файловой системы в arzt+ и контрольные суммы файлов в ch+2. Ничего не побилось.
    Есть релизкандидат драйвера, пока без сервисной утилиты. Если кто захочет протестировать, то обращайтесь. Просто сообщите координаты раздела (C/H/S) и конфигурацию диска (количество головок и секторов на дорожке) и я пропишу ручками в драйвер и отдам на тестирование.
    Иначе буду сам долго и упорно его дрючить, пока не появится финальная версия. Драйвер пока никак не оптимизировался и по скорости скорее всего уступает оригинальной версии от Кожевникова и Григорьева. Но не сильно конечно...

  8. #148
    Veteran
    Регистрация
    15.07.2009
    Адрес
    Череповец
    Сообщений
    1,763
    Спасибо Благодарностей отдано 
    151
    Спасибо Благодарностей получено 
    56
    Поблагодарили
    42 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Уточни, откуда для тебя получить "координаты раздела (C/H/S) и конфигурацию диска (количество головок и секторов на дорожке)"? А то теневик для CF показывает одно, тесты HDD в теневике же не вызывают доверия.
    ZX-Evo Rev. C4 (Double-config) / VDAC2 / ZiFi / NeoGS / ZXM-Soundcard Extreme

  9. #149
    Activist
    Регистрация
    03.01.2009
    Адрес
    Санкт-Петербург
    Сообщений
    425
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Запусти set_ide в iS-DOS и сохрани список разделов. Из полученного файла перерисуй координаты начала раздела, а количество голов и секторов можно взять из настройки HDD в теневом сервисе или из той же set_ide - она в верхнем окне показывает.

  10. #150
    Veteran
    Регистрация
    15.07.2009
    Адрес
    Череповец
    Сообщений
    1,763
    Спасибо Благодарностей отдано 
    151
    Спасибо Благодарностей получено 
    56
    Поблагодарили
    42 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    HEAD:16
    SECS:63
    
    SysZHD   C0B6D HC S1F
    SysIDE   C0B75 HE S21
    Work     С0B7E H0 S23
    Archive  C0B8E H4 S27
    IsDOS3   C0BAE HC S2F
    ZX-Evo Rev. C4 (Double-config) / VDAC2 / ZiFi / NeoGS / ZXM-Soundcard Extreme

Страница 15 из 23 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Помогите установить AmigaOS 2.1 на CF
    от mbojenov в разделе Amiga
    Ответов: 16
    Последнее: 14.11.2012, 11:33
  2. как установить IS-DOS?
    от crazy_bender/ex-PLACEBO в разделе Оси
    Ответов: 6
    Последнее: 21.12.2010, 10:46
  3. Как установить IS-DOS и WDC на один HDD
    от luzanov в разделе Для начинающих
    Ответов: 3
    Последнее: 02.08.2010, 16:03

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •