User Tag List

Страница 14 из 40 ПерваяПервая ... 101112131415161718 ... ПоследняяПоследняя
Показано с 131 по 140 из 399

Тема: Контроллер псевдо КМД+дисковод для УКНЦ (на SD карте)

  1. #131

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Так "диск" теперь вращается или так же передаются данные?
    По сути да, выдавая данные каждые 64 микросекунды, ну кроме моментов перемещения головки, там чуть задержка есть на расчет дорожек, но я думаю это допустимо, тк реальный дисковод уж точно головой медленнее двигает.
    Но теперь я не могу нормально считать данные с флешки.. прерывания..

    - - - Добавлено - - -

    Цитата Сообщение от AFZ Посмотреть сообщение
    А на время шага отключить всё, связанное с передачей данных в УКНЦ. То есть, пока читаем СД-шку, нам не будет мешать всё, связанное с эмуляцией ВП1-128, а когда эмулируем эту 128-ю, нам не будет мешать обмен с SD, и можно будет полностью исключить влияние этих процессов друг на друга.
    Если не ответить на обращение к 177130(2) то УКНЦ выдаст ошибку шины, но я попробую считать обе стороны.

  2. #132

    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZPilot Посмотреть сообщение
    Если не ответить на обращение к 177130(2) то УКНЦ выдаст ошибку шины
    УКНЦовую программу чтения через -128 я не разбирал. А вот в MY - там по-простому: выдали импульс "Шаг", переслали в регистр заранее подготовленную константу и SOB по нему на себя самого. И никаких проверок по 177130/132...
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  3. #133

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    выдали импульс "Шаг", переслали в регистр заранее подготовленную константу
    Вот если вы не ответите на эту константу вовремя, получите трап4.

  4. #134

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Всё страньше и страньше! Всё чудесатее и чудесатее! Всё любопытственнее и любопытственнее! Всё страннее и страннее! Всё чудесится и чудесится!@Алиса

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


    Это минимальный образ системы от уважаемого nzeemin


    А это загрузочный образ с бейсиком:

    [свернуть]


    - - - Добавлено - - -

    Судя по тексту 22 цилиндра прочитал.

    Эти 2 пользователя(ей) поблагодарили ZPilot за это полезное сообщение:

    hobot(16.07.2020), nzeemin(16.07.2020)

  5. #135

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZPilot Посмотреть сообщение
    А это загрузочный образ с бейсиком:
    ну там надо копать на какой конкретно строке стартового файла вылет ?
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  6. #136

    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZPilot Посмотреть сообщение
    Вот если вы не ответите на эту константу вовремя, получите трап4.
    То есть?
    Код:
            BIS     #200,2(R3)      ; Установить бит шага в копии РСН
            MOV     2(R3),@R4       ; Сделать шаг
            MOV     24(R3),R0       ; R0 = время шага
            BIC     #200,2(R3)      ; Сбросить бит шага в копии РСН
    7566$:  SOB     R0,7566$        ; Цикл ожидания
    Вот, пересылаем в R0 константу (вернее не константу, а заранее рассчитанное число) и ждем командой SOB самой на себя. На что здесь отвечать?

    Это из MY. В УКНЦ посложнее, там, кроме обслуживания ВП1-128 нужно заниматься еще кучкой оборудования, например, видеоконтроллером, поэтому у УКНЦ ожидание не такое тупое - они выходят по RTI, а ожидание делается, похоже, аппаратным таймером (не вникал). Но, по-любому, пока головка движется, принимать с нее информацию нет смысла, а сигналов, свидетельствующих об окончании движения головки в интерфейсе флопиков НЕТ! Поэтому, только ждать, смотреть в регистры 177130/132 бесполезно.

    Цитата Сообщение от ZPilot Посмотреть сообщение
    Всё страньше и страньше! Всё чудесатее и чудесатее!
    Мне это дело больше нравится в редакции Высоцкого: "Все чудесатее и страньше. Нет, чудестраньше. Ах, я заблуждаюсь!.."

    - - - Добавлено - - -

    Я вижу еще пару "подводных камней".

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

    И, во-вторых. КМД-УК может обслуживать 4 накопителя. Вопрос: будет ли время на считывание цилиндра при смене накопителей? Он же может стоять уже на нужной дорожке, так, что шаги не потребуются. Впрочем, буфер цилиндра всего 10К, а оперативки у МК 128К, да? Так, что, вероятно, можно выделить каждому накопителю свои 10К на индивидуальный буфер...

    Да, кстати, напоминаю. Хоть у ВП1-128 сделаны 4 бита "выбор накопителя", по одному на каждый из доступных накопителей на интерфейсе Shugart, в КМД-УК на два (младших?) бита поставили дешифратор и передают номер накопителя двоичным числом в этих двух битах, а два других бита заняли управлением прекомпенсацией
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

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

  8. #137

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    Вот, пересылаем в R0 константу (вернее не константу, а заранее рассчитанное число) и ждем командой SOB самой на себя. На что здесь отвечать?
    Когда УКНЦ пишет в порт 177130 значение, чтобы, например, передвинуть головку, она делает следующее: SYNC-DOUT и ждет RPLY, если RPLY не ответит, то трап4. А чтобы сделать RPLY СТМка должна прижать соответствующий пин к земле. Тк это обязательные по времени операции, то они сделаны в прерываниях с максимальным приоритетом. Для этого мне даже пришлось все системные приоритеты понизить.

    Цитата Сообщение от AFZ Посмотреть сообщение
    И, во-вторых. КМД-УК может обслуживать 4 накопителя. Вопрос: будет ли время на считывание цилиндра при смене накопителей?
    Ммм.. тут УКНЦ ведет себя так, при переключении на другой привод она заново читает нужную ей дорожку. Таким образом времени нужно столько же, сколько и просто на текущее считывание, а времени у СТМ на выбор из какого файла читать, нужно тактов 10.
    Цитата Сообщение от AFZ Посмотреть сообщение
    бита поставили дешифратор и передают номер накопителя двоичным числом в этих двух битах,
    С 3-мя накопителями именно так.. 4-й вроде, на 10 бите. Тк 3 у меня работали, а 4 нет.. но мне было не до него.

    Сейчас у меня 1 большая проблема, которую я не знаю пока как решить:

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

    [свернуть]

    Те УКНЦ думает, что считала 65 дорогу, а в реальности считалась 57, а может считаться и любая другая и не обязательно на 65 дорожке.
    Это происходит после чтения некоторого кол-ва дорожек.
    Последний раз редактировалось ZPilot; 17.07.2020 в 11:31.

  9. #138

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Извините, но я с читил: https://cloud.mail.ru/public/4bfc/3E13W5Dg3

    - - - Добавлено - - -

    UP: Ускорил загрузку с диска, раз в 5. Для этого исключил чтение с СД-карты когда УКНЦ просто передвигает головки не читая цилиндр.
    https://cloud.mail.ru/public/5uJa/2dogvt44G
    Последний раз редактировалось ZPilot; 17.07.2020 в 14:02.

    Этот пользователь поблагодарил ZPilot за это полезное сообщение:

    nzeemin(17.07.2020)

  10. #139

    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZPilot Посмотреть сообщение
    Когда УКНЦ пишет в порт 177130 значение, чтобы, например, передвинуть головку, она делает следующее: SYNC-DOUT и ждет RPLY, если RPLY не ответит, то трап4.
    Естественно. Но, выдав этот бит "Шаг" (вторая строчка в приведенном фрагменте, MOV 2(R3),@R4, в R4 в это время 177130), программа на 3 мс минимум забывает о существовании оборудования по адресу 177130/132. То есть, она считает, что ШД головки стартовал и до окончания его шага смотреть на ВП1-128 бесполезно. Вот, в течение этих 3 мс и можно делать все, что угодно - нового обращения не будет. То есть, увидев, что ПП УКНЦ записывает единичку по маске 0200 в CSR (130), можно спокойно забыть об отслеживании МПИ и вспоминать об этом только через 2.8 мс (0.2 мс оставим про запас).

    Цитата Сообщение от ZPilot Посмотреть сообщение
    Ммм.. тут УКНЦ ведет себя так, при переключении на другой привод она заново читает нужную ей дорожку. Таким образом времени нужно столько же, сколько и просто на текущее считывание, а времени у СТМ на выбор из какого файла читать, нужно тактов 10.
    Мы же, вроде-бы, договорились, что читать-писать SD-шку следует только во время шагов, когда ПП на 3 мс забывает о ВП1-128. А при переключении накопителей головка запросто может оказаться на нужной дорожке, и ПП сразу захочет ее читать, а ее еще нет в памяти...

    Цитата Сообщение от ZPilot Посмотреть сообщение
    С 3-мя накопителями именно так.. 4-й вроде, на 10 бите. Тк 3 у меня работали, а 4 нет.. но мне было не до него.
    Посмотрел схему, биты DS0 и DS1 (ноги 41 и 40 ВП1-128) идут прямо на А0 и А1 м/с 555ИД7. Ей же на А3 приходит сигнал REZ (30 нога 128-й). Вообще-то, этот REZ в MY используется для включения прекомпенсации, но в УКНЦ ее повесили прямо на ноги DS2 и DS3 - не помню, но у них там не то 2, не то 4 уровня прекомпенсации, сейчас вспоминать не хочу. А REZ, как свободный триггер, управляемый с ПП, здесь задействован, как сигнал "не выбран ни один накопитель".

    Цитата Сообщение от ZPilot Посмотреть сообщение
    Те УКНЦ думает, что считала 65 дорогу, а в реальности считалась 57
    Где-то кто-то сбился. И, может быть, из-за попыток читать карточку во время обмена с УКНЦ. Я бы, все-таки, читал СД-шку СТРОГО во время шагов.

    - - - Добавлено - - -

    Цитата Сообщение от ZPilot Посмотреть сообщение
    UP: Ускорил загрузку с диска, раз в 5. Для этого исключил чтение с СД-карты когда УКНЦ просто передвигает головки не читая цилиндр.
    Что-то не так, шаг должен выполняться 3 мс, независимо от того, что там на дорожках. Или чтение идет слишком долго (может быть нужно читать сразу блоком в 20 секторов), или еще что-то некорректно работает.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

  11. #140

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    , программа на 3 мс минимум забывает о существовании оборудования по адресу
    Я всегда путаюсь в размерах, 3 мс это 3 микросекунды или мили?

    Цитата Сообщение от AFZ Посмотреть сообщение
    Мы же, вроде-бы, договорились, что читать-писать SD-шку следует только во время шагов
    Посмотрите мое предыдущее сообщение, особенно видео, и вы поймете в чем разница при чтении во время перемещения и когда УКНЦ реально начинает читать диск.

    Цитата Сообщение от AFZ Посмотреть сообщение
    из-за попыток читать карточку во время обмена с УКНЦ.
    Да, так и есть.. потому.. с читил..

    - - - Добавлено - - -

    Даже за 3 миллисекунды я не успею считать 10240 байт, тк за это время надо вычислить номер цилиндра, высчитать смещение в файле, сделать f_lseek и выполнить чтение в буфер, а потом раскидать этот буфер в трек. Что самое обидное, так это то, что f_lseek выполняется почти с такой же скоростью, что и чтение.

    - - - Добавлено - - -

    Alex_K, ошибок в testmz нет ни при последовательном чтении, ни при случайном чтении секторов.

    Этот пользователь поблагодарил ZPilot за это полезное сообщение:

    hobot(17.07.2020)

Страница 14 из 40 ПерваяПервая ... 101112131415161718 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 713
    Последнее: 13.05.2025, 11:42
  2. Ответов: 327
    Последнее: 03.12.2019, 22:49
  3. Куплю КМД для УКНЦ
    от Feral в разделе Барахолка (архив)
    Ответов: 32
    Последнее: 07.06.2012, 13:31
  4. Продам МС5310 блок дисководов к УКНЦ+КМД УКНЦ
    от Mad Killer/PG в разделе Барахолка (архив)
    Ответов: 7
    Последнее: 19.03.2012, 11:27
  5. Контроллер КМД-УКНЦ, АУКЦИОН
    от tntpro в разделе Барахолка (архив)
    Ответов: 9
    Последнее: 23.06.2011, 16:32

Ваши права

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