User Tag List

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 21 по 30 из 35

Тема: Чтение и запись дисков нестандартными способами.

  1. #21

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    Драйвер читает только то, что ему надо, и при этом на неразмеченную область после окончания данных мы не выходим
    Драйвер точно пишет в "недостижимую" область, но вряд ли оттуда читает ( кстати, для чтения служебной информации буфер драйверу не нужен - ДВК обращается к регистрам быстрее, чем к памяти, и драйвер успевает использовать регистр данных MX, как ячейку данных ).

    Но вопрос не про драйвер, а про то, идут ли в контроллере MX импульсы на сдвиговый регистр, когда на входе схемы синхронизации пропадают синхроимпульсы с диска.

    Важен сам принцип - выдаёт ли контроллер слова данных при выходе в режиме чтения за конец разметки или "всё замирает" и сдвиговый регистр останавливается до появления на входе схемы синхронизации импульсов синхронизации с диска.

    Цитата Сообщение от dk_spb Посмотреть сообщение
    логично предположить что Вы смотрели исходник (легко всем доступный) mx.sys
    Это я только сейчас пытаюсь делать. Сначала я просто сдалал эмулятор контроллера и посмотрел, что пишет на дорожку драйвер при форматировании и последующем использовании в системе.

    Первыми двумя словами каждой дорожки пишутся какие-то неконстантные значения ( от записи к записи значения этих слов могут меняться ! ), смысл которых я пока не понял.

    Всего драйвер MX использует на дорожке 1433 слова из 1562.

    Если первое слово дорожки считать за №1, то "синхрослово" 0363 будет №11, номер дорожки будет в слове №12, затем 11 блоков по 129 слов ( 128 слов данных и одно слово контрольной суммы ), а последние два записанных слова будут №1432 и №1433 - в них тоже пишется какая-то служебная информация.

    Цитата Сообщение от dk_spb Посмотреть сообщение
    что за такую служебную информацию драйвер пишет в нечитаемую область?
    Поначалу я думал, что это константы, как-то связанные с тем, что на двух сторонах дорожки MX размещает 22 блока по 128 слов ( т.е. 11 блоков по 512 байт ), но только что обнаружил, что от записи к записи эти значения могут изменяться..
    Последний раз редактировалось Patron; 05.12.2012 в 18:10.

  2. #22

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    >Драйвер точно пишет в "недостижимую" область, но вряд ли оттуда читает
    Спрошу конкретнее: Откуда инфа и что он туда пишет

    >идут ли в контроллере MX импульсы на сдвиговый регистр, когда на входе схемы синхронизации пропадают синхроимпульсы с диска.
    Я уже рекомендовал 16 лист паспорта на контроллер МХ. Там это написано.

    >Первыми двумя словами каждой дорожки пишутся какие-то
    ...
    >последние два записанных слова будут №1432 и №1433 - в них тоже пишется какая-то служебная информация.
    Не знаю, я так в MX не разбирался. Тут лучше в тексте драйвера смотреть о чем речь.
    Может контрольная сумма дорожки в конце трека?
    Достаточно просто сравнить два последних слова соседних треков при отсутствии информации на этих треках (после формата)

  3. #23

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    Откуда инфа и что он туда пишет
    Инфа из образа диска, в который пишет контроллер. Но что он туда пишет, пока озвучивать остерегусь - вдруг это я где-то напортачил.

    Я уже рекомендовал 16 лист паспорта на контроллер МХ. Там это написано.
    Я этот паспорт читаю непрерывно ( со стр.12 по стр.18 ) уже два дня, но понять на основе написанного, останавливается ли сдвиговый регистр при выходе в режиме чтения на неформатированный участок дорожки или нет - не могу.

    Если Вы смогли это понять из описания - расскажите.

    Тут лучше в тексте драйвера смотреть о чем речь.
    Да, вроде, всё уже работает - RT11 v5.7 не грузилась из-за неточности в загрузчике MX - я его исправил и успешно загрузился в эмуляторе с MX ( и с пульта по команде 'X0' - тоже грузится ). При загрузке - дальше слова №1432 драйвер не читает. Что он конкретно пишет в начале дорожки - честно говоря лень разбираться.
    Важнее точно знать не что и почему пишет драйвер, а как работает контроллер.

    Может контрольная сумма дорожки в конце трека?
    В конце массива дорожки дважды пишется константа 0x83NN, где NN = [удвоенный номер дорожки]+[номер стороны].
    Эта информация от записи к записи не меняется.
    Последний раз редактировалось Patron; 05.12.2012 в 20:50.

  4. #24

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    >останавливается ли сдвиговый регистр при выходе в режиме чтения на неформатированный участок дорожки или нет - не могу.
    А с чего он должен останавливатся? Если синхроимпульсы есть, если генератор работает (а куда он денется), значит на сдвиговый регистр все приходит.
    И, опять же, как он остановится сам по себе, если он же задействован в детектировании маркера?
    Но это все мои домыслы, правильнее по схеме посмотреть.

    >Что он конкретно пишет в начале дорожки - честно говоря лень разбираться.
    ;-)

    >В конце массива дорожки дважды пишется константа 0x83NN, где NN = [удвоенный номер дорожки]+[номер стороны].
    Спасибо.

  5. #25

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    как он остановится сам по себе, если он же задействован в детектировании маркера?
    Маркер не может появиться без синхроимпульсов.

    Другое дело, что если при чтении используется та же схема формирования, что и при записи, а сигналы синхры с диска (при их наличии ) используются только для подстройки фазы - то тогда за пределами разметки чтение будет продолжаться без остановки, выдавая по нулевому слову каждые 128 мкс.

    В любом случае, если не останавливать чтение в конце массива данных - можно непрерывно читать хоть сто оборотов.

    Ведь контроллер сам из режима чтения выйти не может - правильно ?

    Он может только остановить или не остановить сдвиговый регистр на время отсутствия синхры.
    Последний раз редактировалось Patron; 05.12.2012 в 23:06.

  6. #26

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    >Он может только остановить или не остановить сдвиговый регистр на время отсутствия синхры.
    По какому признаку? А если у нас диск до этого был отформатирован FM на другой машине без привязки к индексу (к примеру), то синхра вообще всегда будет.
    Согласен, тут ключевой момент используется ли синхра с чтения для сдвига, но это надо схему смотреть. Сегодня я уже не готов
    Хотя по паспорту на запись и чтение одна схема формирователя ТИ и СИ.

  7. #27

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    синхра вообще всегда будет
    Есть ещё один аспект - число битов на дорожке FM принципиально не кратно 16-ти, поэтому, даже если на том же контроллере прописать всю дорожку синхрой "без зазора" - сигнал индекса всё равно должен запускать схему опознавания стартового слова ( а эта схема умеет блокировать копирование сдвигового регистра в регистр данных и установку бита готовности ).

    Но если схема опознавания умеет блокировать копирование сдвигового регистра в регистр данных - почему бы этого не делать и схеме синхронизации.
    Ведь если во время чтения выключить дисковод - ситуация будет полностью аналогична выходу на неразмеченную часть дорожки.
    Какой практический смысл в копировании сдвигового регистра в регистр данных, если из 16-ти обязательных синхроимпульсов за 128 мкс не было принято ни одного ???

    ...
    P.S. Как я и предполагал - самым первым словом на дорожке мой эмулятор контроллера писал то содержимое сдвигового регистра, которое было в нём до загрузки слова данных (т.е. всякую фигню). Судя по описанию контроллера - загрузка слова данных в сдвиговый регистр при записи происходит только через 16 синхро-тактов после начала записи. В описании не сказано, что происходит при этом с предыдущим содержимым сдвигового регистра. Но вряд ли это принципиально, ведь как уже ясно - схема опознавания должна запускаться на каждом обороте, поэтому считывание данных, расположенных на дорожке между "точкой появления индекса" и словом 0363 принципиально невозможно.
    Последний раз редактировалось Patron; 06.12.2012 в 12:27.

  8. #28

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    >число битов на дорожке FM принципиально не кратно 16-ти,
    Откуда инфа?

    >сигнал индекса всё равно должен запускать схему опознавания стартового слова
    И так делает это. Но какая связь с кратностью 16ти?
    Контроль на маркер делается каждый бит, а не раз в 16 бит

    >Какой практический смысл в копировании сдвигового регистра в регистр данных, если из 16-ти обязательных синхроимпульсов за 128 мкс не было принято ни одного ???
    А какой смысл тормозить сдвиговый регистр? Он кому-то мешает?
    Я вообще не очень понимаю вот чего: если мы не читаем из контроллера, какая нам разница что там делает сдвиговый регистр?
    Если есть желание - всегда можно взять схему и на 100% ответить на вопрос что там делает сдвиговый регистр.


    > Но вряд ли это принципиально, ведь как уже ясно - схема опознавания должна запускаться на каждом обороте, поэтому
    Не совсем так - сигнал индекса запускает поступление читаемых данных на сдвиговый регистр (и, как следаствие на схему опознавания маркера). В какой момент входная дверь для данных захлопывается - надо смотреть схему

  9. #29

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dk_spb Посмотреть сообщение
    Откуда инфа?
    Продолжительнсть стандартной дорожки 200 мс, продолжительность стандартного слова 128 мкс.

    Контроль на маркер делается каждый бит, а не раз в 16 бит
    Для обсуждаемого вопроса это значения не имеет. Главное - отключает ли сигнал индекса выдачу данных в режиме чтения. Если да ( а это обязательно должно быть так ) - то прочитать данные между индексом и стартовым словом невозможно в принципе.

    А какой смысл тормозить сдвиговый регистр? Он кому-то мешает?
    Никому не мешает. Вопрос лишь в том, продолжают ли выдаваться данные с установкой бита готовности, если в процессе чтения выключить дисковод.

    В какой момент входная дверь для данных захлопывается - надо смотреть схему
    Речь не о входной, а о выходной двери. В режиме чтения - содержимое сдвигового регистра не копируется в регистр данных до обнаружения стартового слова. Логично предположить, что при непрерывном чтении - на каждом обороте выдача данных будет прекращаться после индекса и до обнаружения стартового слова.

  10. #30

    Регистрация
    15.09.2009
    Адрес
    SPb
    Сообщений
    7,301
    Спасибо Благодарностей отдано 
    260
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    211 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Мне кажется Вы ставите все с ног на голову.
    1) как раз совсем не важно сколько физически влезает бит на дорожку и кратно ли это 16 бит
    2) как раз ПРИНЦИПИАЛЬНО ВАЖНО, что контроль на маркер делается каждый бит. Поэтому даже если мы потеряли несколько бит в синхропоследовательности - мы найдем маркер. Если бы мы искали маркер только раз в 16 бит, начиная от индекса - мы бы легко пролетали: и битики в синхре можно потерять, и задержка по началу чтения после индекса у разных дисководов может быть разная.

    >Речь не о входной, а о выходной двери.
    ..
    >Логично предположить, что при непрерывном чтении - на каждом обороте выдача данных

    Мы опять как слепой с глухим. Вы можете предполагать всё что угодно. Это Ваше право и достоверность Ваших предположений на уровне кратности или не кратности дорожки 16 битам даже при наличии арифметических "доказательств".
    Но я то Вас отсылаю к схеме конкретного контроллера. Из неё видны ответы на все Ваши вопросы. Из того что я успел разглядеть - от индекса зависит имеено ВХОДНАЯ "дверь" (конкретно элемент ИЛИ-НЕ, на которых подаются данные с дисковода). Дальше надо разбираться в схеме - мне лень.

    И еще просьба: если Вам интересна дискуссия, было бы крайне приятно, чтобы Вы свои доводы, например, нижеуказанный, хоть как-то обосновывали или писали что это из такого-то источника. Иначе я просто за Вами не поспеваю.
    >тключает ли сигнал индекса выдачу данных в режиме чтения. Если да ( а это обязательно должно быть так )
    Почему это обязательно должно быть так?????
    Последний раз редактировалось dk_spb; 06.12.2012 в 15:12.

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 14
    Последнее: 21.11.2011, 11:45
  2. Чтение файла в tr-dos
    от hippiman в разделе Программирование
    Ответов: 14
    Последнее: 29.09.2011, 11:11
  3. Запись TZX/TAP в эмуляторах
    от SoftLight в разделе Эмуляторы
    Ответов: 2
    Последнее: 08.10.2010, 12:01
  4. Чтение дисков TR-DOS под XP
    от Zloy в разделе Софт
    Ответов: 47
    Последнее: 19.09.2008, 09:06
  5. Чтение дисков с iS-DOS
    от IDma в разделе Утилиты
    Ответов: 11
    Последнее: 12.02.2006, 08:04

Ваши права

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