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

User Tag List

Страница 1 из 11 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 105

Тема: К1818ВГ93

  1. #1
    Veteran
    Регистрация
    22.02.2005
    Адрес
    Украина, Харьков
    Сообщений
    1,523
    Благодарностей: 107
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию К1818ВГ93

    В книге “ZX Spectrum & TR-DOS для пользователей и программистов” на стр. 209 есть такой абзац:
    “Чтение дорожки 11100e00
    Эта команда считывает с дорожки всю имеющуюся на ней информацию, включая поля пробелов, заголовков и служебные байты. В силу некоторых аппаратных особенностей Beta Disk’а при выполнении этой команды происходит потеря синхронизации данных микроконтроллером. Таким образом, использовать команду затруднительно.”
    Кто может подсказать что это “аппаратные особенности”?

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

  3. #2
    Master
    Регистрация
    18.01.2005
    Адрес
    Ростов-на-Дону
    Сообщений
    577
    Благодарностей: 202
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  4. #3
    Master Аватар для Conan
    Регистрация
    22.01.2005
    Адрес
    Moscow
    Сообщений
    1,995
    Благодарностей: 335
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Возможно, я ошибусь (давно было дело), но устройство разделения данных (или как его еще называли, «ФАПЧ») производит «низкоуровневую» синхронизацию и выделение данных, вне зависимости от того, какие операции выполняет ВГ93 (чтение сектора или дорожки). Поэтому аппаратные особенности тут не при чем.

    Скорее дело в том, что при чтении дорожки в ВГ93 не отключается детектор адресного маркера AM. И соответственно данные, совпадающие с форматом AM, интерпретируются именно таковыми (а не просто последовательностью байт в поле данных). Эта «особенность» ВГ-шки делала крайне сложным чтение дорожки, например, при попытке копирования «бит в бит». У других контроллеров, в частности у 8272, была возможность отключения детектора АМ при чтении дорожки.

  5. #4
    Veteran
    Регистрация
    22.02.2005
    Адрес
    Украина, Харьков
    Сообщений
    1,523
    Благодарностей: 107
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    4 Lion17
    То что ты рассказал это уже следствие проблемы, а мне хотелось бы знать первопричину?

    Ну я так понимаю, если команда заложена в WD1793, то она должна работать. И в принципе проблема в недоработанности сепаратора данных в схеме оригинального BDI и его клонах. А как решить данную проблему, или точнее, чем базовая схема включения WD1793 отличается от BDI?

  6. #5
    Master
    Регистрация
    27.04.2005
    Адрес
    Москва
    Сообщений
    869
    Благодарностей: 3
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию В MSX работает

    Вообще, мне MSXовцы говорили, что у них абсолютно такой же контроллер флопа. И там чтение дорожки замечательно работает.

  7. #6
    Master
    Регистрация
    27.04.2005
    Адрес
    Москва
    Сообщений
    869
    Благодарностей: 3
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lion17
    если ты только отформатировал дорожку, но ничего на нее не писал, то она считается нормально...
    Отформатировать дорожку, ничего на нее не записывая, нельзя. При форматировании происходит также и запись данных.
    Или ты имеешь в виду, что дорожка с одними нулями в области данных читается нормально?

  8. #7
    Master
    Регистрация
    18.01.2005
    Адрес
    Ростов-на-Дону
    Сообщений
    577
    Благодарностей: 202
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sonic
    Отформатировать дорожку, ничего на нее не записывая, нельзя. При форматировании происходит также и запись данных.
    Или ты имеешь в виду, что дорожка с одними нулями в области данных читается нормально?
    Нет я имел ввиду что после команды форматирования (записи дорожки) не было команд записи сектора.

  9. #8
    Master
    Регистрация
    18.01.2005
    Адрес
    Ростов-на-Дону
    Сообщений
    577
    Благодарностей: 202
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от spensor
    4 Lion17
    То что ты рассказал это уже следствие проблемы, а мне хотелось бы знать первопричину?

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

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

  10. #9
    Master
    Регистрация
    18.01.2005
    Адрес
    Ростов-на-Дону
    Сообщений
    577
    Благодарностей: 202
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Conan
    Возможно, я ошибусь (давно было дело), но устройство разделения данных (или как его еще называли, «ФАПЧ») производит «низкоуровневую» синхронизацию и выделение данных, вне зависимости от того, какие операции выполняет ВГ93 (чтение сектора или дорожки). Поэтому аппаратные особенности тут не при чем.

    Скорее дело в том, что при чтении дорожки в ВГ93 не отключается детектор адресного маркера AM. И соответственно данные, совпадающие с форматом AM, интерпретируются именно таковыми (а не просто последовательностью байт в поле данных). Эта «особенность» ВГ-шки делала крайне сложным чтение дорожки, например, при попытке копирования «бит в бит». У других контроллеров, в частности у 8272, была возможность отключения детектора АМ при чтении дорожки.
    По моему причина как раз обратная - в том что при чтении дорожки детекторы адресных маркеров отключаются. Как известно при записи маркеров на диск пишется байт с пропущенными синхроимпульсами, и по этому факту при чтении сектора контроллер точно вычисляет границу байта записанной информации. А вот при чтении дорожки он считывает всю дорожку как один массив битов и смещенные сектора читаются совсем не так как должны. Если вдруг случайно записанный сектор попал на границу байта, то он считывается отлично вместе с адресными маркерами.

  11. #10
    Master Аватар для Conan
    Регистрация
    22.01.2005
    Адрес
    Moscow
    Сообщений
    1,995
    Благодарностей: 335
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lion17
    По моему причина как раз обратная - в том что при чтении дорожки детекторы адресных маркеров отключаются.
    Почитайте внимательно на стр.13 приведенного описания, про чтение дорожки.


    Цитата Сообщение от Lion17
    Как известно при записи маркеров на диск пишется байт с пропущенными синхроимпульсами, и по этому факту при чтении сектора контроллер точно вычисляет границу байта записанной информации.
    И при записи сектора тоже.


    Цитата Сообщение от Lion17
    А вот при чтении дорожки он считывает всю дорожку как один массив битов и смещенные сектора читаются совсем не так как должны.
    опять же посмотрите внимательно в описание, там сказано совсем другое.


    Цитата Сообщение от Lion17
    Если вдруг случайно записанный сектор попал на границу байта, то он считывается отлично вместе с адресными маркерами.
    "Случайно" записать такое невозможно, при записи сектора контроллер предварительно синхронизируется с данными в его заголовке. Отклонения строго нормированы. Если отклонения превышены, то это сбой.

Страница 1 из 11 12345 ... ПоследняяПоследняя

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

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

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

Ваши права

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