Author |
Message |
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Безусловно. Но мы не знаем предпосылок этих решений. И мы знаем весь объём схемотехнических решений с тех пор и до сего дня. А Вы бы сейчас сделали видеоконтроллер Apple I, как его сделал Стив Возняк? Я бы - нет...
И правильно! CGA сделали так, как его уже сделали, спорь... не спорь.
_________________ iLavr
|
30 Nov 2014 14:34 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
А у меня вот тоже проблемы с видеоконтроллером. Сначала сделал с разрешением 640х480, как наиболее стандартный. Потом обнаружил, что 480 не очень хорошо делится на 25 (строк в текстовом режиме). Далее вспомнил, что стандартный текстовый режим DOS был 640х400.
Думал, что переделка займет 5 минут. Строчная синхронизация у этих режимов одинаковая, кадровая - естественно, частота другая, да и полярность кадрового импульса положительная вместо отрицательной.
Переделал, включил - картинка быстро плывет вверх. Мониторы (один довольно древний, второй - совсем современный) определяют режим как 720х400, хотя даже по осциллографу вроде синхронизация четко отвечает режиму 640х400.
Перепробовал все, что пришло в голову - ноль результата. Может, кто скажет что-нибудь умное ? И вообще, кто в курсе - монитор режим исключительно по синхронизации определяет, или еще как-то RGB и Blank для этого использует (хотя понимаю, что говорю глупости) ?
|
01 Dec 2014 09:57 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22609 Location: Silicon Valley
|
|
01 Dec 2014 11:23 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Дело в том, что я информации общего плана за последние пару часов перечитал уже дикое количество, но никаких мыслей новых, что еще попробовать, так и не появилось...
|
01 Dec 2014 11:48 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Так, а сейчас я офигел конкретно... Опять запустил работающий режим 640х480, но добавил смену полярности кадрового синхроимпульса с помощью переключателя на отладочной плате. Появилась картинка, щелкнул переключателем, картинка исчезла. Но только на секунду или две, потом появилась опять !!! Я даже осциллографом посмотрел, чтобы быть уверенным, что полярность меняется.
Короче, ЖК монитору фирмы Acer 2005 г.в. все равно, в какой полярности приходит кадровый синхроимпульс (строчный еще не пробовал), он все равно четко опознает режим, просто задумавшись на пару секунд.
|
01 Dec 2014 11:56 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22609 Location: Silicon Valley
|
Ну частоты померь частотометром - если дисплей определяет режим неправильно, значит есть причина...
|
01 Dec 2014 12:01 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Частоты до последней цифры после запятой правильные - естественно, с этого разбирательство и начал...
|
01 Dec 2014 12:13 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22609 Location: Silicon Valley
|
А найти старый комп, выставить на нём 640x400 и осциллографом сравнить?...
|
01 Dec 2014 12:32 |
|
|
jdigreze
God
Joined: 02 Jan 2006 02:28 Posts: 1390 Location: Abakan
|
LCD мониторы развёртку определяют не по полярностям, а сравнивают с внутренней эталонной. Ищи монитор типа Samsung 3Ne, тот точно определяет по полярностям.
Кстати, 640х400 режима нет в стандарте, есть 640х350, есть 720х400. Текстовый режим VGA - 720х400 (матрица символа 9х16, Fh=31,469 kHz, Fv=70,087 Hz, полярности Sh=Negative,Sv=positive).
640x350 унаследован от EGA с матрицей символа 8х14.
|
01 Dec 2014 12:53 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Как так нет? Ведь достаточно в Гугле набрать vga timing 640 400, выпадет куча результатов. Даже утверждается, что именно этот режим включался при загрузке DOS...
Хотя я готов поверить - ничего другого уже не остается...
|
01 Dec 2014 13:15 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22609 Location: Silicon Valley
|
А какая разница для монитора сколько пикселов в строке? Главное чтобы времена синхроимпульсов и кол-во строк совпадало, а сама строка - по сути аналоговая в VGA, нет?...
|
01 Dec 2014 13:33 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Блин, ну и почему я сам о таких элементарных вещах не подумал ??? Наверное, немного больше спать нужно...
|
02 Dec 2014 02:51 |
|
|
jdigreze
God
Joined: 02 Jan 2006 02:28 Posts: 1390 Location: Abakan
|
Ну сам посчитай 80х9=720, 25х16=400. Это и есть стандартный текстовый экран. А так да, количество пикселей по горизонтали пофиг, лишь бы в тайминги укладывался.
|
02 Dec 2014 03:26 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Вместо того, чтобы добавить клавиатуру, погрузился в видеоадаптер - интереснее
Вот еще обнаружил, тоже добавило к списку задач:
The width of CGA, EGA, MCGA, and VGA text characters is 8 pixels. In the case of VGA however, 9 pixels are actually used for displaying the characters. The 9th pixel is appended to the right end of each pixel row. If the character being displayed has an ASCII code ranging from 192 to 223 and the 8th pixel in a given pixel row is on, the 9th pixel in that row will be on also. If the 8th pixel in the row is off or the ASCII code for the character is not in the range 192 to 223, the 9th pixel will not be turned on.
|
02 Dec 2014 03:44 |
|
|
newold86
Devil
Joined: 30 Nov 2013 11:08 Posts: 707 Location: WWW
|
Вроде почти разобрался с видео - оказывается, у меня синхронизация абсолютно нормально работает, это просто текст действительно бежал по экрану из-за неправильной переделки контроллера на другое разрешение (я наплодил кучу счетчиков, взаимоотношения между которыми уже сам перестал понимать).
Вот думаю - сделать нормальный VGA-шный текстовый режим полностью заново, оставить нынешний - для тестовых целей вполне годится, или вообще ну его все нафиг ?
|
02 Dec 2014 12:48 |
|
|