|
6 / 3 / 0
Регистрация: 19.03.2019
Сообщений: 157
|
|
NASM Как поменять цветовую палитру?05.06.2021, 22:48. Показов 2574. Ответов 5
Метки нет (Все метки)
0
|
|
| 05.06.2021, 22:48 | |
|
Ответы с готовыми решениями:
5
Как реализовать свою цветовую палитру?
Как поменять цветовую схему? |
|
Модератор
|
|
| 06.06.2021, 13:11 | |
|
Можно.
Замена одного регистра палитры int 10h ax=1000h, замена всех 16 регистров палитры и регистра цвета окантовки экрана - int 10h ax=1002hДетальнее http://www.ctyme.com/intr/int-10.htm http://www.techhelpmanual.com/... index.html Номер регистра палитры - это и есть номер цвета в VGA видеоаптерах. Добавлено через 1 час 10 минут Пример Строка 555 из Программирование видеопамяти Ещё int 10h ax=1010h и int 10h ax=1012hВывод заставки (логотипа) MS-DOS
1
|
|
|
6 / 3 / 0
Регистрация: 19.03.2019
Сообщений: 157
|
||||||
| 06.06.2021, 21:06 [ТС] | ||||||
|
Боюсь, не совсем понял
![]() Допустим, у меня есть RGB коды 16 цветов + рамки Получается, я могу ими заменить стандартную палитру? Как тогда это делается?
0
|
||||||
|
Модератор
|
||||||
| 06.06.2021, 21:42 | ||||||
|
Вывод заставки (логотипа) MS-DOS
0
|
||||||
|
Модератор
|
||||||
| 07.06.2021, 14:54 | ||||||
|
Циклическое изменение цвета 7 (серый).
0
|
||||||
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
| 13.06.2021, 14:13 | |
|
Turbo_Pgmer_132, в DOS по умолчанию каждый компонент (red, green, blue) меняется от 0 до 63, а не до 255 (но это можно изменить, правда, я не пробовал).
Плюс, помимо DAC-регистров, хранящих значения RGB-компонентов есть ещё и 6-битовые атрибуты, хранящие цвета в побитовом формате rgbRGB, где B - нулевой бит, r - 5-й бит. Значения rgb имеют интенсивность 1/3 от максимума (можно считать, что они добавляют 21 к насыщенности от 0 до 63), Значения RGB - 2/3 интенсивности (42 к насыщенности от 0 до 63). Т.о. 010000b будет тёмно-зелёным, 000010b - умеренно-зелёным (как цвет 2), 010010b - насыщенно-зелёным, 111010b=58 - светло-зелёным (как цвет 10), а 010111b - бледно-зелёным. Они настраиваются через функции AX=1000h и AX=1002h / int 10h. Для 16 привычных нам цветов эти 6-битовые rgbRGB-атрибуты имеют следующие значения по умолчанию (для цветов от 0 до 15): 0, 1, 2, 3, 4, 5, 20, 7, 56, 57, 58, 59, 60, 61, 62, 63. Т.е. 7 (000111b) для цвета 7 - это светло-серый, 56 (111000b) для цвета 8 - тёмно-серый, 63 (111111b) для цвета 15 - белый, а 20 (010100b) для цвета 6 - коричневый. Когда же мы настраиваем каждый копмонент RGB отдельно от 0 до 63 (через DAC-регистры), то мы применяем их не к цветам от 0 до 15, а к этим атрибутам от 0 до 63 (rgbRGB), т.е. чтобы изменить цвет номер 6, мы должны изменить DAC-регистр (RGB-компоненты) атрибута номер 21. Либо поменять номер атрибута цвета 6, например, на 6-й и затем поменять DAC-регистр атрибута 6. Настройка DAC-регистров (изменение RGB) делается через функции AX=1010h и AX=1012h / int 10h (либо через порты 3C8h, 3C9h). Схематично преобразование цвета 0..15 к RGB выглядит так: цвет (0..15) → атрибут rgbRGB (0...63) → DAC-регистр RGB (три компомента по 0..63).
1
|
|
| 13.06.2021, 14:13 | |
|
Помогаю со студенческими работами здесь
6
Можно ли поменять тему/цветовую схему Lazarus? Как сделать палитру? Как добавить палитру InterBase? Как изменить палитру GIF'a? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|