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

User Tag List

Страница 86 из 86 ПерваяПервая ... 8283848586
Показано с 851 по 856 из 856

Тема: [Поиск 1] Ремонт

  1. #851
    Veteran Аватар для Tronix
    Регистрация
    16.09.2010
    Адрес
    г. Москва
    Сообщений
    1,951
    Спасибо Благодарностей отдано 
    81
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    124 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от electroscat Посмотреть сообщение
    Может есть какое нибудь детальное описание этого процесса
    Есть, в ТО (тех описании), в частности в 4.5.6.
    Вкратце - когда кто-то пишет напрямую в видеопамять B8000 (а волков именно что пишет напрямую, минуя функции ДОС/bios), то происходит защелкивание адреса в регистрах-защелках (две ИР23 или ИР22), защелкивание собственно данных тоже в каком-то регистре (то же наверно или ИР22 или ИР23), потом срабатывает тригер генерирующий NMI, проц сваливается в NMI где вычитывает из регистров-защелок адрес по которому прога хотела что-то записать в видеопамять, данные которые хотели записать в видеопамять и начинает программно попиксельно отрисовывать эту букву на экране, пересчитав адреса текст-режим -> графический режим, где собственно всегда и находится, после чего вываливается из NMI и продолжает работу.

    Поэтому собственно проверять всё то что указано в ТО, не знаю правда по какой схеме эти Dxx даны, но можно по аналогии сравнить с вашей схемой:

    Код:
       Программно-аппаратный  эмулятор содержит следующие компо-
    ненты:
       1). регистр-защелку младшего адреса  А0...А7  (микросхема
    D35);
       2). регистр-защелку старшего адреса А8...АD, признака об-
    ращения  к  порту  ввода-вывода или к памяти -I0/М, признака
    приема-передачи данных DT/R (микросхема D36);
       3). регистр-защелку данных D0...D7 (микросхема D37);
       4). триггер запроса немаскируемого прерывания (микросхемы
    D39.1 и D39.2);
       5). дешифратор  адреса  регистров  эмулятора  (микросхёма
    D38);
    
                                   - 33 -
       6). логические элементы D17.3 и D29.1.
    Ну и понятное дело, что первое что надо сделать - это встать ослом прямо на ногу NMI на проц и посмотреть - есть там движения во время загрузки волкова или нет.
    Вложения Вложения
    Последний раз редактировалось Tronix; 19.03.2025 в 20:23.

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

    electroscat (19.03.2025)

  3. #852
    Veteran Аватар для electroscat
    Регистрация
    27.08.2019
    Адрес
    г. Ростов-на-Дону
    Сообщений
    1,020
    Спасибо Благодарностей отдано 
    455
    Спасибо Благодарностей получено 
    191
    Поблагодарили
    122 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Tronix Посмотреть сообщение
    Есть, в ТО (тех описании), в частности в 4.5.6.
    Огромное спасибо !

    Цитата Сообщение от Tronix Посмотреть сообщение
    Вкратце - когда кто-то пишет напрямую в видеопамять B8000 (а волков именно что пишет напрямую, минуя функции ДОС/bios), то происходит защелкивание адреса в регистрах-защелках (две ИР23 или ИР22),
    По мятой схеме это D27, D28 - запоминают адрес, две ИР23.

    Цитата Сообщение от Tronix Посмотреть сообщение
    защелкивание собственно данных тоже в каком-то регистре (то же наверно или ИР22 или ИР23),
    По мятой схеме это D29 - запоминает данные на шине, ИР23.

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

    Поэтому собственно проверять всё то что указано в ТО, не знаю правда по какой схеме эти Dxx даны, но можно по аналогии сравнить с вашей схемой:

    Код:
       Программно-аппаратный  эмулятор содержит следующие компо-
    ненты:
       1). регистр-защелку младшего адреса  А0...А7  (микросхема
    D35);
       2). регистр-защелку старшего адреса А8...АD, признака об-
    ращения  к  порту  ввода-вывода или к памяти -I0/М, признака
    приема-передачи данных DT/R (микросхема D36);
       3). регистр-защелку данных D0...D7 (микросхема D37);
       4). триггер запроса немаскируемого прерывания (микросхемы
    D39.1 и D39.2);
       5). дешифратор  адреса  регистров  эмулятора  (микросхёма
    D38);
    
                                   - 33 -
       6). логические элементы D17.3 и D29.1.
    Ну и понятное дело, что первое что надо сделать - это встать ослом прямо на ногу NMI на проц и посмотреть - есть там движения во время загрузки волкова или нет.
    Активности на NMI нет. Постоянно в единице, механизм понятен, очень благодарен, продолжаю искать !
    О результатах буду писать сюда.

    Р.С. Не понятен один момент... Получается что DOS свои сообщения прям в граф. режиме рисует в память ? То есть, DOS выводит текст в граф. режиме, а VS или NC или XT-IDE вероятно напрямую в видеопамять, в виде кода символа, если так то в целом проблема более менее понятна. Еще раз благодарю !
    Сейчас в коллекции:
    Вектор 06Ц.01(Минск, Волжский, Астрахань, Киров) x4, Вектор 06Ц.02(Кишенев), Электроника 0511 УКНЦ (СЭМЗ) X2, Электроника 0511 УКНЦ (КВАНТ), Агат 7, Агат 9, Поиск-1.03 (VGA), Поиск-1.03 (CGA сток), Электроника БК-0011(10,11M) [3IN1], Электроника БК-0010-01, Львов ПЛ-01, Корвет ПК8010, Партнер 01.01, Спектр-001, БАЙТ(БПО_СВТ), Волна 48, Ленинград 48, Веста ИК-30, Веста ИК-31, БПК Дельта-Микро, Компакт 256(новодел),
    и ... AMD K6-300, Pentium 200 mmx, 386SX-16 ...

  4. #853
    Veteran Аватар для Tronix
    Регистрация
    16.09.2010
    Адрес
    г. Москва
    Сообщений
    1,951
    Спасибо Благодарностей отдано 
    81
    Спасибо Благодарностей получено 
    257
    Поблагодарили
    124 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от electroscat Посмотреть сообщение
    Р.С. Не понятен один момент... Получается что DOS свои сообщения прям в граф. режиме рисует в память ? То есть, DOS выводит текст в граф. режиме, а VS или NC или XT-IDE вероятно напрямую в видеопамять, в виде кода символа, если так то в целом проблема более менее понятна. Еще раз благодарю !
    У Поиска нет текстового режима, он постоянно находится в графическом режиме, даже когда яко-бы находится в текстовом - на самом деле это графический режим. Причем отображаемая память на экране монитора (откуда производится сканирование) не равна реальной памяти CGA, если правильно помню. Но суть не в этом, а в том что у IBM PC есть три способа вывести символ на экран: 1) с помощью функции BIOS; 2) с помощью функции DOS (которая внутри себя вызывает функцию BIOS); 3) Записав символ напрямую в видеопамять. То есть фактически два способа - через функции BIOS и напрямую в видеопамять.

    Так вот, когда мы хотим отрисовать символ на экране через функцию ah=09h BIOS int 10h, то мы передаем в параметрах код символа, его аттрибут и символ выводится на экран по текущим координатам. Есть так же функции BIOS которые позволяют установить координаты, куда вывести символ. Поэтому когда мы вызываем функцию BIOS с помощью int 10h, то обработчик этого прерывания все знает - знает код символа, он просто находится в регистре, знает атрибут символа - он так же находится в другом регистре, знает текущие координаты символа - они хранятся просто где-то в обычной RAM. И тут у Поиска никаких проблем с пониманием куда нарисовать попиксельно очертания символа нет - все берется из регистров и/или обычной памяти.

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

    Таким образом основное отличие от функции BIOS и прямой записи в видеопамять в случае Поиска - это то, что при вызове функций BIOS пользователь(программист) сам передает все данные в регистрах в обработчик прерывания, а в случае прямой записи в текстовую видеопамять необходимо тормознуть проц, засейвить все значения в отдельных защелках, что бы когда проц упадет в NMI он понимал кто и куда что попытался записать что бы корректно это сэмулировать.

    Плюс/минус как то так вроде по памяти, но не претендую на стопроцентную истину.

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

    electroscat (19.03.2025)

  6. #854
    Veteran Аватар для electroscat
    Регистрация
    27.08.2019
    Адрес
    г. Ростов-на-Дону
    Сообщений
    1,020
    Спасибо Благодарностей отдано 
    455
    Спасибо Благодарностей получено 
    191
    Поблагодарили
    122 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Все равно придется разбирать живой поиск. Дешифратор адреса регистров эмулятора не работает почти, соответственно не регистры не прерывание никто не получает. Включаюшие дешифратор сигналы TRAPSEL/ и IORD/ должны вместе в нуле оказаться, чтобы дешифратор адреса регистра выдал нужные сигналы, а этого не происходит. Нужно внимательно посмотреть на ADDR0....ADDR9 подводимые к D7 (РТ5 2203), вероятно что то оборвано, и это что то не дает реагировать на адрес необходимый для прерывания. Если там норм, то искать какие то обрывы при формировании IORD/ .. И если и там норм, то придется таки разбирать живого .... Ну то уже завтра.

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

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

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

    Цитата Сообщение от Tronix Посмотреть сообщение
    Плюс/минус как то так вроде по памяти, но не претендую на стопроцентную истину.
    Очень благодарен, картина нарисовалась полная. За ночь укрепится, завтра приступлю снова к поискам, в прямом и переносном смысле ))
    Последний раз редактировалось electroscat; 19.03.2025 в 22:04.
    Сейчас в коллекции:
    Вектор 06Ц.01(Минск, Волжский, Астрахань, Киров) x4, Вектор 06Ц.02(Кишенев), Электроника 0511 УКНЦ (СЭМЗ) X2, Электроника 0511 УКНЦ (КВАНТ), Агат 7, Агат 9, Поиск-1.03 (VGA), Поиск-1.03 (CGA сток), Электроника БК-0011(10,11M) [3IN1], Электроника БК-0010-01, Львов ПЛ-01, Корвет ПК8010, Партнер 01.01, Спектр-001, БАЙТ(БПО_СВТ), Волна 48, Ленинград 48, Веста ИК-30, Веста ИК-31, БПК Дельта-Микро, Компакт 256(новодел),
    и ... AMD K6-300, Pentium 200 mmx, 386SX-16 ...

  7. #855
    Master
    Регистрация
    02.03.2015
    Адрес
    г. Санкт-Петербург
    Сообщений
    829
    Спасибо Благодарностей отдано 
    391
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    65 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я, к сожалению, не видел подробного описания работы видеоадаптера. При обращении к адресам или портам cga, защёлкивается адрес обращения и данные в регистрах, и, если разрешен, то активируется nmi. Обработчик nmi, прочитав защёлкнутые адрес и данные, проводит операции по эмуляции запрошенного действия. Надо проверить регистры-защелки, наличие nmi, а пзу bios Вы уже проверили.
    PS.
    Только увидел. Вы в правильном направлении смотрите. Желаю быстрой диагностики.
    Последний раз редактировалось Копейкин; 19.03.2025 в 22:26.

  8. Этот пользователь поблагодарил Копейкин за это полезное сообщение:

    electroscat (19.03.2025)

  9. #856
    Veteran Аватар для electroscat
    Регистрация
    27.08.2019
    Адрес
    г. Ростов-на-Дону
    Сообщений
    1,020
    Спасибо Благодарностей отдано 
    455
    Спасибо Благодарностей получено 
    191
    Поблагодарили
    122 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Благодарю всех за помощь, и восполнение пробелов в моем понимании механизмов Поиска! Все оказалось банально просто, NMI в пути к D28 под D42 была подпаяна тонкой проволочкой, которая пропаяна была хреново пердидущими мастерами, и одна жилка этой проволочки отошла на рядом проходящюю ногу D42. В общем, такая мелочь позволила мне немного прокачать свой навык по ремонту Поиска, остававшийся пробел был заполнен. Всем очень благодарен !!!!

    Завтра Поиск будет тестироваться, и я сниму с него анализатором много интересного, касаемо собственно NMI, триггера, дешифратора адреса порта и других элементов, думаю пригодится на будущее.
    Сейчас в коллекции:
    Вектор 06Ц.01(Минск, Волжский, Астрахань, Киров) x4, Вектор 06Ц.02(Кишенев), Электроника 0511 УКНЦ (СЭМЗ) X2, Электроника 0511 УКНЦ (КВАНТ), Агат 7, Агат 9, Поиск-1.03 (VGA), Поиск-1.03 (CGA сток), Электроника БК-0011(10,11M) [3IN1], Электроника БК-0010-01, Львов ПЛ-01, Корвет ПК8010, Партнер 01.01, Спектр-001, БАЙТ(БПО_СВТ), Волна 48, Ленинград 48, Веста ИК-30, Веста ИК-31, БПК Дельта-Микро, Компакт 256(новодел),
    и ... AMD K6-300, Pentium 200 mmx, 386SX-16 ...

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

    Quest (21.03.2025), Копейкин (20.03.2025)

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

Страница 86 из 86 ПерваяПервая ... 8283848586

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

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

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

Похожие темы

  1. [Поиск 1] поиск информации по модулям
    от Daniil Chislov 86 в разделе Поиск
    Ответов: 7
    Последнее: 25.12.2023, 16:54
  2. [Поиск 1] Ремонт блока питания В266
    от crackintosh в разделе Поиск
    Ответов: 19
    Последнее: 07.04.2021, 20:30
  3. [Поиск 3] Восстановление
    от Filin в разделе Поиск
    Ответов: 71
    Последнее: 13.12.2020, 16:23
  4. [Поиск 2] Поиск информации
    от dk_spb в разделе Поиск
    Ответов: 17
    Последнее: 02.10.2017, 09:00
  5. ПК Поиск 11 штук - ремонт
    от Aleksei1983 в разделе Поиск
    Ответов: 4
    Последнее: 05.01.2013, 17:09

Ваши права

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