Видеопамять тютю...
Mar. 12th, 2024 02:50 pm
С детства любимый Norton Commander когда побилась видеопамять...
Мне тут досталась одна занятная железка на базе 386 компа со встроенным чёрно-белым монитором. На тот момент просто космические технологии. Главной особенностью её является специфическая видеокарта, без документации и схем, к которой напрямую шлейфом подключается LCD-экран.
И в процессе оживления выяснилась одна неприятная особенность, что есть какие-то проблемы с текстовым выводом, но они странные.
Главный прикол заключается в том, что в меню обычного BIOS всё корректно работает и отображается, более того, если загрузится в мою демку Stillalive-os, о которой писал ранее, то тоже всё работает. Но стоит выйти из главного BIOS и начать загрузку, тут же видяха превращается в тыкву. Работает на разных материнских платах.

Живой BIOS
Стоит начать загрузку, получается вот так...

Видеокарта выглядит следующим образом:

Я сетую, что от возраста и/или статики погибла одна из микросхем динамической памяти, судя по документации и количеству корпусов, тут ровно 64 кБайт памяти.

Теперь главный вопрос - это понять, какая же конкретно погибла, и тут нужны тесты видеопамяти.
Буду признателен за рекомендации способов диагностики видеопамяти и советы по ремонту.
no subject
Date: 2024-03-12 01:10 pm (UTC)Блин, я уже решил, что читаю Хабр и сейчас будет разбор "как я это оживил"
:)
no subject
Date: 2024-03-12 01:19 pm (UTC)У меня генетическое воспоминание, что в текстовой видеопамяти есть несколько блоков для отображения разных страниц и между ними можно переключаться. Может, сломалась только одна из них?
no subject
Date: 2024-03-12 01:19 pm (UTC)похоже на то
no subject
Date: 2024-03-12 01:28 pm (UTC)Если память мертва, то почему биос отображается корректно? Хотя, дефолтный шрифт в ПЗУ.
Я бы начал с предположения о некорректно выставленых переключателях, они могут конфигурировать размер и мапинг страниц памяти.
Продолжил предположением о некорректной загрузке шрифтов => поискал бы совсем минимальную загрузку.
no subject
Date: 2024-03-12 01:34 pm (UTC)Самое интересное, что моя программа, которая использует шрифты из ПЗУ тоже корректно работает.
no subject
Date: 2024-03-12 01:53 pm (UTC)Имхо знакогенератор. Смутно вспоминаю, как писал когда-то программы на 13 прерывании. ASCII таблица имеет разный размер для латиницы, и для себя же с кириллицей, которой тоже много есть кодировок. Может быть дело в том, что не все загрузилось, вместо 256 символов, всего 128. Но даже если это аппартная тема, можно исправить программно, судя по приведенной картинке. Если подгрузить свой шрифт при загрузке ОС.
no subject
Date: 2024-03-12 06:19 pm (UTC)13 прерывание работа с диском если правильно помню. Вывод на экран 10 прерывание. Там можно чисто на ассемблере, даже операционка не нужна. Главное загрузочный сектор на дискете в правильное место записать.
(no subject)
From:(no subject)
From:no subject
Date: 2024-03-12 01:54 pm (UTC)Контакты разъёма на плате не пробовали почистить?
no subject
Date: 2024-03-12 03:03 pm (UTC)Пробовали разумеется. Повторяется на разном железе.
no subject
Date: 2024-03-12 02:04 pm (UTC)А осциллографом по шине адресов памяти тыкался? Везде сигналы есть?
no subject
Date: 2024-03-12 03:03 pm (UTC)Так работает же корректно в биосе, и с другими видяхами.
(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2024-03-12 03:51 pm (UTC)Вот это пиздец называется. Ну нельзя ж так без предупреждения!
386... биосы... прерывания... микросхемы...
Всё, адьёс, я бухать после такого (ностальгировать)
no subject
Date: 2024-03-12 04:09 pm (UTC)Имхо — проблема в адресах при работе с ПЗУ фонтов. В их формировании или чтении, всё внутри самой платы.
no subject
Date: 2024-03-12 09:59 pm (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2024-03-12 04:32 pm (UTC)no subject
Date: 2024-03-12 10:00 pm (UTC)no subject
Date: 2024-03-12 05:29 pm (UTC)Микросхемы на алике есть , взять 8 , менять по очереди ,ставить панельки.
Демонтировать откусывая ножки возле корпуса и выпаивая потом по одной ножке.
no subject
Date: 2024-03-12 06:05 pm (UTC)Сначала можно осциллографом потыкать ножки микросхем памяти, посмореть, есть ли везде какоето движение. Еще народ просто сверху временно вторым этажом надевает исправую микросхему, тоже иногда помогает.
(no subject)
From:no subject
Date: 2024-03-12 06:01 pm (UTC)DRAM 4464 это 64Kx4 bit, то есть 32к. Всего получается 32к*8=256к видеопамяти.
Похоже что какие-то проблемы со шрифтами, т.к. текстовый режим в биосе и в досе должны работать одинаково.
no subject
Date: 2024-03-12 10:01 pm (UTC)(no subject)
From:no subject
Date: 2024-03-12 06:09 pm (UTC)Еше можно поставить видеокарту в другую материнку на 386 процессоре и посмотреть что получится. Ну если есть у кого занять на время. В Питере я знаю есть у Михаила Андреева, (@Mikka_A канал на ютубе) спектрумиста.
no subject
Date: 2024-03-12 07:45 pm (UTC)Или найти материнку на 8086-8088 (ну или болгарский какой-нить Правец-16), соответствующие видюху и монитор; там панельки под 640 килобайт. 😀
(no subject)
From:no subject
Date: 2024-03-12 09:00 pm (UTC)Была когда-то проблема с похожей видеокартой, только там память была не на кроватях.
Плавающий баг — сначала все норм, потом какая-то микросхема памяти перегревается и начинает глючить.
Был проведен эксперимент, в ходе которого все микросхемы по очереди охлаждались ваткой со спиртом, пока второй участник что-то там делал на компе.
Так обнаружили греющуюся микросхему и перепаяли, благо доном в виде убитой видюхи с неубитой памятью был под рукой.
no subject
Date: 2024-03-12 10:01 pm (UTC)no subject
Date: 2024-03-13 12:27 am (UTC)А нет ли тут проблемы с механизмом загрузки шрифтов (навскидку — стандартный русификатор заливает стандартным образом, а нужен нестандартный)?
Если отключить заливку шрифта (русификатор или какой-то другой драйвер кодовой страницы) — работает?
(Потому что это совершенно непохоже на битую память — текст регулярен и символы регулярны).
no subject
Date: 2024-03-13 05:41 am (UTC)а выключаторами никто не побаловался??? включили МДА какой-нибудь.
ну про охладить/погреть конкретный чип уже сказали.
no subject
Date: 2024-03-13 06:41 am (UTC)P.S. Разбудил внутреннего хакера, посмотрел на картинку ещё раз повнимательней, вижу следующее:
1. явно одни и те же символы имеют идентичное начертание — текстовое ОЗУ скорее в порядке, чем нет.
2. сами по себе символы не искажённые — явно нет битых бит, перепутанных шин данных и т.д.
3. по той же самой причине в памяти символов нет испорченных или перепутанных шин адреса, по крайней мере, в 3-4 младших разрядах.
4. многие символы заметно сдвинуты во вертикали.
Моя рабочая гипотеза — ОЗУ знакогенератора отличается форматом от ожидаемого русификатором — на символ по вертикали приходится другое число линий/байт.
Если учесть, что вместо скорее всего пробела (конечно, там может быть и другой невидимый символ, но сначала подумаем про пробел) получаем скобку '[', разница — вместо 32-го символа получаем 91-й, вместо единицы (нижняя строка начинается с неё) — половинка q с заходом на r — по этой строке (она вообще показательна — содержит 1, 2, 3...) видно, что за три символа на экране прокручиваем четыре символа знакогенератора, например 12 в заливаемом знакогенераторе и 16 в знакоместе на экране, сдвиг 32->91 и 49->114 не объясняется этой пропорцией, явно знакогенератор лежит со сдвигом на 48 символов или на 36 — смотря в каких символах — экрана или знакогенератора — считать.
UPD: перечитал комментарии — выше уже подобного написали
no subject
Date: 2024-03-14 08:51 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2024-03-13 02:41 pm (UTC)Надо посмотреть подключение LCD. Возможно там стандартные VGA сигналы.
Плата очень похожа на видяху с двумя видеовыходами. https://www.vgamuseum.info/media/k2/items/cache/8dc425b2acbf9c68064b8a63eae1ffbc_XL.jpg
https://www.vgamuseum.info/index.php/cpu/item/126-cirrus-logic-cl-gd510-520 (https://www.vgamuseum.info/index.php/cpu/item/126-cirrus-logic-cl-gd510-520)
no subject
Date: 2024-03-13 10:25 pm (UTC)Вот нашел доки на агрегат: http://retro.timb.us/Systems/PC-III_Portable/ (http://retro.timb.us/Systems/PC-III_Portable/)
Ну и там еще в других каталогах есть интересное.
Видюха похоже Cirrus Logic CL-GD610/620.
Надеюсь поможет.
no subject
Date: 2024-03-14 05:23 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2024-03-14 05:56 am (UTC)>Но стоит выйти из главного BIOS и начать загрузку, тут же видяха превращается в тыкву
именно начать, или загрузиться? а если русификатор не грузить например?
no subject
Date: 2024-03-14 06:13 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2024-03-15 12:47 pm (UTC)Пока с видео работает прерывание биос все нормально. как только с видео начинает работать прерывание дос — появляется мусор.
Знакогенераторы тоже хранятся в видеопамяти, но у биос свой, а у дос свой и в разных местах памяти , у вга до 8 знакогенераторов.
Больше похоже на подбитый адресный разряд видеопамяти или U19.
И переключатель не по документации.