User Tag List

Показано с 1 по 10 из 16

Тема: TR-Dos Diskette

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #15

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sonic Посмотреть сообщение
    Команда "чтение индекса" читает один, первый попавшийся заголовок. Потом прекращается. Вопрос - как прочитать все заголовки на дорожке? Через регистр состояния я могу засечь приход индексного импульса, а дальше?
    Ну как %) Пришёл - и всё! баста! заканчиваем чтение!

    Добавлено через 9 минут
    Цитата Сообщение от ram_scan Посмотреть сообщение
    Фишка вся в том что ты никогда не узнаешь, прочел ты 15 раз один и тот же индекс, или все 15 раз разные. Для того чтобы точно попадать даже в стандартный формат диска нужно калибровать дисковод сделав точный хронометраж скорости вращения. Но если на дорожке будут сектора разного размера то это опять получится мимо тазика.

    Поэтому кроме как прочесть дорожку целиком - способа нет.

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

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

    Если бы все было так просто, то никто нигде бы вручную геометрию диска не задавал.
    Если диск защищённый - то достаточно высокая вероятность того, что из прочитанной дорожки ничего восстановить не получится (те же плавающие биты вообще невозможно восстановить на домашнем оборудовании). Если же диск нормально отформатированный просто имеет нестандартные размеры/последовательности секторов (или даже номера), то это всё легко автоматически может быть восстановлено из содержимого дорожки. Кстати эта команда примечательна ещё тем, что позволяет определить истинную длину дорожки - у меня она колебалась от 7 до 8 килобайт. Теоретически можно было бы на диске разместить 6 секторов по 1024 байта, что даст ёмкость (огого!) по 960 кб на диск. Практически же, так не получается по разным причинам - укороченный индексные области не читаются на всех дисководах (они нужны вообще то для синхронизации); при записи диска обновление происходит не только данных сектора но и контрольной суммы сектора, что может (если слишком короткие зоны синхронизации) затереть начало следующего сектора и прочая прочая...

    Кстати, что интересно. Кажется в спектрофоне или где то ещё я видел указание длины дорожки - около 6 килобайт - приводилась точная цифра. В общем то очевидно, что эта цифра будет колебаться, так как зависит от ширины индексного отверстия, от скорости вращения диска (она тоже варьируется!!!) и т.д., мне непонятно как могла получиться конкретная цифра %)

    И ещё, я не фанат команды "чтения индекса", не вешайте на меня собак, я просто сказал что это было бы элегантно, и потом я сам использовал её где то... хотел сделать чтото вроде Disk Formatter который восстанавливает формат диска.
    Последний раз редактировалось GriV; 09.09.2007 в 20:16. Причина: Добавлено сообщение
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

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

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

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

Ваши права

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