User Tag List

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

Тема: Орион-128: Контроллер дисковода

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

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

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    Question

    Чтобы не плодить однокоренные темы, напишу здесь.

    Разбираюсь с поддержкой дисководов на различных Орионах-128 и Орионе-ПРО. Хочу понять как же всё таки правильно и откуда растут ноги формирования сигнала выбора стороны (/SIDE). Так получилось, что изначально я собрал на Орионе-128, как выяснилось малопопулярный, КНГМД Короткина. В нём формирование сабжевого сигнала, имхо, логичное: если я хочу выбрать сторону №0, то записываю в порт конфигурации бит "0", для выбора стороны №1 - бит "1". Этот узел никаких проблем у меня никогда не вызывал, т.к. изначально работал логично и правильно.
    При попытке программировать КНГМД в Орионе-ПРО, при считывании дискеты от Ориона-128, я столкнулся с ошибкой "массив не найден". Данная ошибка говорит о том, что при операции чтения сектора в течении 20 оборотов диска не был найден целевой сектор. Признаком сектора являются: адресная метка, номер сектора и номер стороны. Причём если изначально форматировать дискету на ПРО, то секторы находятся и читаются. Сделав программный "костыль" (инверсию бита стороны), разумеется удалось работать с дискетой, записанной на КНГМД Короткина, а также с дискетой, записанной на IBM-PC. Если не делать в ПО "переворачивание бита", то дискеты будут успешно форматироваться, записываться и читаться, но будут совместимы только с данной системой, а, например, записывать образы на писи возможности не будет ((

    Стал анализировать схемотехнику КНГМД. У Короткина берётся прямой выход порта ТМ8 и через буфер-инвертор выводится на дисковод, т.е. аппартно сигнал инвертируется. В ПРО, а также во всех остальных КНГМД для Ориона-128 (Ленинградский, Орион-Софт, авторский) сигнал либо берётся с инверсного выхода ТМ8 и выводится через буфер-инвертор, либо берётся с прямого выхода ТМ9 и выводится через неинвертирующий буфер, т.е. аппартано сигнал не инвертируется!
    Поскольку соответствующий вход дисковода называется "/SIDE1", т.е. "выбор стороны №1", активный уровень низкий, то получается, что делать в КНГМД его прямым - не логично.
    Хочу понять, почему в КНГМД формирование этого сигнала различается? И самое главное - почему в большинстве КНГМД для Ориона сделано нелогично? Есть какие-то стандарты?

    add

    Документальное подтверждение "кривой" организации выбора стороны в реализациях КНГМД под СР/М я таки нашёл:



    И даже аппаратное введение этой "кривизны" при доработке КНГМД Короткина под СР/М есть в природе!

    Но зачем так сделано? Зачем нелогичность и лишние команды инверсии?
    Последний раз редактировалось Denn; 18.04.2016 в 14:13.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

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

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

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

Похожие темы

  1. Контроллер дисковода
    от andrew76 в разделе Внешние накопители
    Ответов: 55
    Последнее: 12.04.2024, 16:33
  2. Ответов: 302
    Последнее: 18.09.2023, 12:45
  3. ПК8000 - Контроллер дисковода
    от Mick в разделе ПК8000
    Ответов: 286
    Последнее: 02.12.2018, 23:08
  4. Ответов: 24
    Последнее: 30.04.2016, 23:47
  5. Орион-128: Контроллер IDE
    от Ewgeny7 в разделе Орион
    Ответов: 90
    Последнее: 08.04.2016, 17:23

Ваши права

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