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

User Tag List

Страница 4 из 4 ПерваяПервая 1234
Показано с 31 по 36 из 36

Тема: Подскажите алгоритм определения типа дискеты

  1. #31
    Super Moderator Аватар для Alex Rider
    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,908
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    89
    Поблагодарили
    31 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А такой алгоритм не пойдет? (Не помню точно, у одностороннего дисковода только верхняя или только нижняя сторона, пишу в предположении, что только верхняя)
    1. Идем на 0-й цилиндр.
    2. Читаем 0-й сектор нижней стороны. Если дискета не форматирована, поступаем как TR-DOS: убеждаемся, что верхняя сторона не форматирована, форматируем нижнюю, смотрим, с какой стороны смогли прочитать 0-й сектор.
    3. Если дискета форматирована, но сектора 0 нет, ищем на нижней стороне первый существующий сектор.
    4. Читаем найденный сектор, читаем его же с верхней стороны. Если на верхней такого сектора нет, значит, дисковод двусторонний.
    5. Если сектора не совпадают по длине или по информации, значит, дисковод двусторонний.
    6. Если сектора сверху и снизу совпадают, пишем инверсию информации в найденный сектор нижней чтороны и перечитываем. По равенству данных принимаем решение.

  2. #31
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #32
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,055
    Спасибо Благодарностей отдано 
    219
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Выскажу следующие соображения.

    1. Как уже говорили выше, для определения количества сторон требуется дискета.
    2. Пытаемся найти различия путем считывания верхней и нижней сторон. Если найдены различия - дисковод двусторонний. Если различий не найдено на дорожке 0 - то можно попробовать другие дорожки, это повышает вероятность получения результата (т.е. нахождения различий), но не гарантирует его. В пределе можно прочитать все дорожки и, не найдя различий на сторонах, все еще не иметь однозначного ответа на вопрос, сколько у дисковода сторон.
    3. Если различий не найдено - то дисковод, возможно, односторонний, но для определения этого необходимо производить запись на дискету.
    4. Если дискета отформатирована (то есть хотя бы на одной дорожке был найден хотя бы один сектор) - то тест можно производить путем записи в этот сектор. Важную информацию, находящуюся в нем, можно на время теста сохранить в памяти, а потом перезаписать обратно на диск.
    5. Если на дискете секторов не обнаружено - то необходимо производить запись (форматирование) дорожки. Восстановление дорожки после ее форматирования, в общем случае, невозможно.

  4. #33
    Banned
    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    Важную информацию, находящуюся в нем, можно на время теста сохранить в памяти, а потом перезаписать обратно на диск.
    иногда это фатально (были такие схемы турбирования ВГ, при которых запись в сектор на неродном компе убивала этот сектор).

  5. #34
    Master
    Регистрация
    17.05.2011
    Адрес
    Днепропетровск
    Сообщений
    520
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    1. Как уже говорили выше, для определения количества сторон требуется дискета.
    А если прочитать информацию в 9том секторе дискеты, там же вроде есть вся необходимая инфа.
    ZXM-Phoenix v.03/2048/FDD/HD/YM-2149F/PS2-kbd; U8EP3C development board БК-0011М by Woland + SMK 512

  6. #35
    Guru Аватар для Vadim
    Регистрация
    24.07.2008
    Адрес
    г. Курган
    Сообщений
    2,062
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от iceoflame Посмотреть сообщение
    А если прочитать информацию в 9том секторе дискеты, там же вроде есть вся необходимая инфа.
    С подключением

    Скрытый текст

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  7. #36
    Veteran Аватар для ZXMAK
    Регистрация
    30.01.2006
    Адрес
    Харьков
    Сообщений
    1,405
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от psb Посмотреть сообщение
    иногда это фатально (были такие схемы турбирования ВГ, при которых запись в сектор на неродном компе убивала этот сектор).
    и не только турбированные, 70-80% контроллеров этим страдало, особенно на дорожках дальше 40-й.

    ---------- Post added at 23:25 ---------- Previous post was at 23:24 ----------

    Цитата Сообщение от iceoflame Посмотреть сообщение
    А если прочитать информацию в 9том секторе дискеты, там же вроде есть вся необходимая инфа.
    не факт что в 9-м секторе правильная информация.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

Страница 4 из 4 ПерваяПервая 1234

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

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

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

Похожие темы

  1. Алгоритм календаря
    от Mick в разделе Программирование
    Ответов: 13
    Последнее: 02.05.2012, 08:34
  2. Алгоритм текстового Quest'a
    от ALKO в разделе Программирование
    Ответов: 11
    Последнее: 23.12.2010, 00:47
  3. Алгоритм и..
    от Пётр в разделе Программирование
    Ответов: 4
    Последнее: 21.05.2008, 21:52
  4. сложнопонимаемый алгоритм
    от psb в разделе Программирование
    Ответов: 35
    Последнее: 27.05.2006, 01:42

Ваши права

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