PDA

Просмотр полной версии : Расскажите мне немного о VGA



icebear
24.08.2005, 12:10
Я вот не знаю, в тот раздел пишу или нет.

Вопрос такого плана:допустим, есть 6-ти битный цвет, там разделение между цветами пропроционально, т.е. по 2 бита на цвет. Но вот как быть с 8-ми битным цветом? Какие "веса" там у цветов? Вроде бОльшая порция отдаётся зелёному? Но при 8-ми битном цвете получается две бОльшие порции. Лучше ткните в урл какой-нить (на vesa.org был, в свободных доках ничего такого нет, в гугле тоже искал).

icebear
25.08.2005, 12:52
Ну граждане, не все одновременно! ;) Что, действительно никто не знает, как определяется вес цветов в 8-ми битном цвете? Может я спросил не так (или не там), но вот как пример могу дать раскладку 16-ти битного цвета:
R: 0-4 (5 бит красного)
G: 5-10 (6 бит зелёного)
B: 11-15 (5 бит синего)

SMT
25.08.2005, 13:22
вот не знаю, в тот раздел пишу или нет
лучше бы в железо

сам VGA ничего не знает про битность, R,G,B заходят на монитор в аналоговом виде. делай хоть 32бита на цветовой канал, как обрабатывается цвет в последних ускорителях, но просто таких выходных ЦАПов нет, да и наводки всё съедят

вторая часть вопроса касается пц-шных видеокарт, как они хранят картинку в видеопамяти. раскладка 5-6-5 используется не всегда, старый s3trio64v+ хранил в 5-5-5, страший бит не использовался. 8-битный цвет использует палитру, для каждого номера цвета в ОЗУ палитры хранится отдельно по 6 бит R,G,B, что составляет 262144 цветов в "8-битных" режимах. но одновременно на эране может быть только 256 (если не использовать мультиколоры :), которые в пц тоже работают). в каждый отдельный момент времени палитра может состоять из оттенков серого, или зелёного, или быть набором из совсем разных цветов, как палитра windows по умолчанию

icebear
25.08.2005, 13:38
лучше бы в железо
...


SMT, извини, всё что ты написал мне известно. Я про что формирование видеосигнала, конверсия D/A, наличие палитры и прочее. Мне неизвестны веса цветов в указаном мною формате. И формат 16-ти бит я привёл в качестве примера, что бы показать, что меня интересует. Спасибо за ответ, но вопрос всё ещё в силе. Очень желательны урл на какие-нибудь документы (я ничего не нашёл по интересующему вопросу). Если вдруг это не стандартизировано, я тогда выдумаю свой формат :)

Господа модераторы, перенесите вопрос в железо. Я думал, в "железе" обсуждают только железо Спектрума.

SMT
25.08.2005, 14:46
цвета берутся из палитры. палитра по 6 бит на канал, т.е. считай, что работаешь с 18-битным цветом, но не все цвета можно показать одновременно. яркость, кажется, линейная (можно на пц измерить). чего непонятного?

не понял, какой формат? формат хранения изображения? так это ж BMP, там и палитра может храниться

icebear
25.08.2005, 14:59
цвета берутся из палитры. палитра по 6 бит на канал,

Спрошу по-другому: как работает 8-ми битный RAMDAC?

SMT
25.08.2005, 15:00
уточню. программированием палитры ты можешь в качестве частного случая сделать какие угодно биты 8-битного номера цвета цветовыми битами. то есть захочешь - биты 0,1 - зелёный, 2,3-красный, 4,5,6,7 - синий. или сделать 256 цветов палитры оттенками красного и так разместить цвета в палитре, чтобы при возрастании номера цвета яркость красного уменьшалась (или даже биты перепутать). тогда у тебя получится 8 бит на красный (причём инверсный) и ни одного бита на зелёный, синий

SMT
25.08.2005, 15:03
как работает 8-ми битный RAMDACв 8-битном режиме видеоконтроллер берёт байт изображения, по нему выбирает 18 бит R,B,G из озу палитры, подаёт эти 3 по 6 бит на ЦАПы (а вот тут, кажись они не линейные, а логарифмические. но это легко проверить на пц, нарисовав градиент)

icebear
25.08.2005, 15:12
в 8-битном режиме видеоконтроллер берёт байт изображения, по нему выбирает 18 бит R,B,G из озу палитры, подаёт эти 3 по 6 бит на ЦАПы (а вот тут, кажись они не линейные, а логарифмические. но это легко проверить на пц, нарисовав градиент)

Вот! Вот именно это я и хотел узнать, огромное спасибо!!! Где об этом можно хороший материал найти? Моей ошибкой было то, что я решил, что в 8-битном цвете цапы работают также, как в 24-битном.

SMT
25.08.2005, 15:14
с ЦАПами лучше не заморачиваться, если сам паять их не будешь. дело в том, что они подобраны так, чтобы сигнал воспринимался человеком как линейный. а как меняется напряжение соответственно субъективно-линейному увеличению яркости - по-поему, логарифмически, как и звук. ведь если громкость сигнала в децибелах изменяется линейно (а значит, в абс. значениях - логарифмически), то субъективно тоже линейно

SMT
25.08.2005, 15:18
Где об этом можно хороший материал найтисмотря для каких целей. если расскажешь, что собрался делать, может, что и подскажу

icebear
25.08.2005, 15:42
смотря для каких целей. если расскажешь, что собрался делать, может, что и подскажу

Делать ничего не собрался, Как это программить пока не интересно, интересна именно железная реализация. Т.е. охота узнать каким образом палитра связана с DAC. Я вот не знал, что в итоге всё-таки цвет выходит не 8 бит, а 18 (попутал видать с индексами в палитре).

Ne01eX
01.09.2005, 07:00
Очень желательны урл на какие-нибудь документы

А в доке на ядро Linux смотрели? ;)