IPB

Здравствуйте, гость ( Вход | Регистрация )

> Программирование под AZБК, методики использования возможностей AZБК
SuperMax
сообщение 3.11.2023, 16:33
Сообщение #1


Администратор
*****

Группа: Root Admin
Сообщений: 6 341
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Работа с палитрами

документация по палитрам тут

оба регистра доступны по записи и чтению, сохранение палитры осуществляется по записи в 177236
пример изменения дефолтной палитры RGB
Код

SetPal1:        mov     #177234,R0
                mov     #177236,R1

                mov     #256.,(R0)   ; адрес палитры
                mov     #10,(R1)    ; значение палитры - был черный фон - теперь темно-синий

                inc     (R0)
                mov     #15446,(R1)     ; значение палитры - был синий - стал - зеленый

                inc     (R0)
                mov     #77454,(R1)     ; значение палитры - был зеленый - стал желтый

                inc     (R0)
                mov     #46614,(R1)     ; значение палитры - был красный - стал коричневый
                return


загрузка палитры 256 цветов
Код

                mov        #177234,R0      ; установка палитры
                mov        #177236,R1
                mov        #newpal,R2
                mov        #256.,R3
                clr        R4
$rp0:            mov        R4,(R0)
                mov        (R2)+,(R1)
                inc        R4
                sob        R3,$rp0


newpal - метка массива палитры 256 цветов (256 слов)





--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
SuperMax
сообщение 24.1.2025, 15:35
Сообщение #2


Администратор
*****

Группа: Root Admin
Сообщений: 6 341
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Подготовка 16ти цветной графики на PC и вывод ее на экран в AZБК

Для уменьшения количества цветов удобно использовать линейку Adobe Photoshop

Технология проста - открываем картинку, выбираем Image/Mode/Indexed color
Прикрепленное изображение

тут вводим 16ть цветов которые мы хотим получить
и обязательно убираем галку Transparency (иначе она съест один цвет)
нажимая на галочку Preview - мы можем увидеть отличия - что было до и что стало

теперь обратим внимание на выбор локальной палитры - тут есть 3 варианта локальной палитры
Perceprual
Selective
Adaptive
выбираем ту в которой мы получаем лучшую картинку (как правило это Selective но возможны варианты)


Теперь сравним порядок ресайза
исходная картинка это 1280х1707 - нам это много
соответственно надо сделать меньше - к примеру нам подойдет 512х683
но возникает вопрос - когда же изменять количество цветов ?
профессионалы, конечно знают, но я явно подсвечу различия
Прикрепленное изображение
слева - оригинал только resize в 512х683
в середине сначала resize в 512х683 а потом indexed color
справа - сначала indexed color а уже потом resize в 512х683
вывод прост - вся обработка графики делается ДО уменьшения количества цветов, это финальный этап подготовки графики

для сохранения результата нам нужен формат который понимает 16ти цветную картинку и при этом еще поддерживается софтом - это GIF

вот к примеру картинка с которой можно будет работать дальше - вывести ее на БК в видеорежиме 1024х768х4bit
Прикрепленное изображение

Однако для красивого примера, картинка таки великовата - вырезаем кусочек и ресайзим в 256x192
и затем уже приводим 16ти цветной палитре
результат конечно же сохраняем в GIF
Прикрепленное изображение


Займемся конвертацией картинки в удобный для обработки на БК формат
идем сюда
https://master.pdp-11.ru/picword16/picword.php

загрузим картинку
Прикрепленное изображение

Получим результат
Прикрепленное изображение

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

Теперь напишем программу которая выведет данную картинку
Прикрепленный файл  gdemo160.rar ( 1.94 мегабайт ) Кол-во скачиваний: 101

Посмотрим на результат - все отлично!
Прикрепленное изображение

образ диска
Прикрепленный файл  AZKV.RAR ( 392.74 килобайт ) Кол-во скачиваний: 108



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Сообщений в этой теме


Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 17.6.2025, 15:39