26

Re: Утилита DaDither: конвертация изображений

Я делал подобное для другой платформы, но результат мне не нравится. Конвертация 24-битных изображений в палитру это всегда какой-то компромисс. Цвета становятся беднее. Но если при использовании одной палитры на все изображение картинка хотя и получается беднее по цветам, но эта бедность однородна на всем изображении и не вызывает сильного отторжения (у меня). А при использовании разных палитр получается, что цвета одного объекта на изображении будут плавать от строки к строке. Для условного столба верх столба одним оттенком, середина другим, низ третьим. И мне такой результат конвертации не нравиться.

27

Re: Утилита DaDither: конвертация изображений

avivanov76 пишет:

Да, конечно можно. NMI синхронизированы с кадровой разверткой, поэтому можно переключать графические страницы

А как это правильно проверить на реале?
Ну вот конкретно если использовать FIL единый на выходе DaDither.
Если это возможно, поделись готовым кодом, который как положено будет переключать экраны (вроде я помню изучал в этом направлении).
А потом попросим кого-то из форумчан проверить на реале.

28

Re: Утилита DaDither: конвертация изображений

Если дадите готовый образ .dsk и инструкции по действиям, могу проверить на реальной машине в течении нескольких дней (компьютер нужно доставать, освобождать под него место, подключать, т.е. требуется время).

29

Re: Утилита DaDither: конвертация изображений

Вот тестовая программка под девятку.
Запуск: [RUN GIGASCREEN

Программка загружает файл с названием PICTURE с адреса $4000. Картинка в режиме ЦГСР (двухстраничная).
У девятки, как я понял, NMI вызывается когда отображение кадра уже началось, поэтому я отсчитываю 32 прерывания IRQ (это как раз 256 строк развертки) и переключаю страницы уже после этого, чтобы точно попасть в кадровый гасящий импульс.

В эмуляторе, тем не менее, все сильно мерцает, даже в полноэкранном режиме. Видимо, из-за того, что переключение происходит 50 раз в секунду, а у монитора развертка 60 Гц.

Post's attachments

Attachment icon gigascreen.zip 25.11 kb, 89 downloads since 2021-03-27 

30

Re: Утилита DaDither: конвертация изображений

Попробовал запустить программу на реальной девятке.
Получилось что-то странное.
Видео записал на 60 кадров в секунду, возможно поэтому сильное мерцание.
https://youtu.be/TYr_nzJm6JQ
Прилагаю статическую картинку.

Post's attachments

Attachment icon 20210328_171459345_iOS_cr.jpg 917.69 kb, 33 downloads since 2021-03-28 

31

Re: Утилита DaDither: конвертация изображений

Нет, это совсем не тот результат, которого я ожидал :(
Видимо, в эмуляторе BTK ведет себя не так как в реале.
А можно вместо запуска программы набрать

C100 C110 C120 C130 C140 C150

и запостить тут результат?
Подозреваю, что картинка загрузилась не в те банки.

32

Re: Утилита DaDither: конвертация изображений

Вот что получилось

Post's attachments

Attachment icon 20210328_192608172_iOS.jpg 1.89 mb, 38 downloads since 2021-03-28 

33

Re: Утилита DaDither: конвертация изображений

Еще страньше. Банки правильные.

А программа по нажатию любой клавиши нормально останавливается?
В текстовый режим переходит? Команды DOS выполнить можно?

Если да, то можно после запуска программы и выхода из нее проверить, загрузилась ли вообще картинка (набрать C721 и С731).
Если картинка не загрузилась, то проверить, грузится ли она командой [LOAD PICTURE,4000

34

Re: Утилита DaDither: конвертация изображений

avivanov76 пишет:

Еще страньше. Банки правильные.

А программа по нажатию любой клавиши нормально останавливается?
В текстовый режим переходит? Команды DOS выполнить можно?

Если да, то можно после запуска программы и выхода из нее проверить, загрузилась ли вообще картинка (набрать C721 и С731).
Если картинка не загрузилась, то проверить, грузится ли она командой [LOAD PICTURE,4000

Останавливается но пишет "Ошибка обмена 8D.0", возможно виноват мой эмулятор дисковода.
При запуске, эмулятор начинает гонять головку туда сюда по трекам, может быть такое что данные раскиданы рандомно по поверхности?
Если набрать C721 и С731 после выхода в командную строку то появляется такаяже полосатая картинка.

Попробовал "[LOAD PICTURE,4000" один раз это удалось и по C721 появилась картинка с мортал комбатом а по C731 зеленые пиксели. Все остальные попытки сделать [LOAD вываливалась "ошибка обмена".
Похоже все таки эмулятор дисковода, давно я его не запускал ;).

35

Re: Утилита DaDither: конвертация изображений

sintech пишет:

При запуске, эмулятор начинает гонять головку туда сюда по трекам, может быть такое что данные раскиданы рандомно по поверхности?

Нет, данные скучкованы в конце диска. Один лишний проход головки может быть только для обращения к каталогу.

36

Re: Утилита DaDither: конвертация изображений

avivanov76 пишет:

Нет, данные скучкованы в конце диска.

А можно передвинуть их в начало? Боюсь у меня именно в этом проблема, если номер трека меняется слишком сильно за короткий промежуток времени то эмулятор не успевает.

37 Отредактировано garnizon (29-03-2021 23:57)

Re: Утилита DaDither: конвертация изображений

Вот, на 18 ($12) треке

Post's attachments

Attachment icon gigascreen2.rar 23.37 kb, 78 downloads since 2021-03-29 

38

Re: Утилита DaDither: конвертация изображений

Упс! На пять минут опоздал :) Я тоже сообразил как это сделать.

39

Re: Утилита DaDither: конвертация изображений

Наконец то я попробовал еще раз, вот результаты:
25 герц
https://youtu.be/hR_8nNTLomY
60 герц
https://youtu.be/J4MdwVWZVtA

На реальном PAL мониторе картинка немного мерцает, и не очень понятно в чем должен заключаться эффект.

Может быть сделать несколько прямоугольников разных цветов, чтобы был явно заметен эффект наложения одного цвета на другой или одновременного отображения цветов разных палитр.

Post's attachments

Attachment icon 20210330_195303381_iOS_cr.jpg 251.21 kb, 33 downloads since 2021-03-30 

40

Re: Утилита DaDither: конвертация изображений

Да, из-за дизеринга пересчитать тут цвета трудно. Пока я на скорую руку просто положил ту же картинку без дизеринга - там большие области одинакового цвета, а дополнительные цвета получаются только наложением.

Post's attachments

Attachment icon gigascreen.zip 34.69 kb, 85 downloads since 2021-03-30 

41

Re: Утилита DaDither: конвертация изображений

sintech пишет:

На реальном PAL мониторе картинка немного мерцает

А это мерцание является неприятным для глаз или же оно вполне терпимо и не вызывает кровавых слез?

sintech пишет:

и не очень понятно в чем должен заключаться эффект.

Например, красные цвета в правой верхней части изображения являются синтетическими, их нет в родной палитре, и они были получены путем смешения двух разных цветов.

Post's attachments

c1.png, 46.52 kb, 253 x 164
c1.png 46.52 kb, 78 downloads since 2021-03-31 

c2.png, 89.56 kb, 253 x 164
c2.png 89.56 kb, 80 downloads since 2021-03-31 

42 Отредактировано garnizon (31-03-2021 10:05)

Re: Утилита DaDither: конвертация изображений

sintech пишет:

Может быть сделать несколько прямоугольников разных цветов, чтобы был явно заметен эффект наложения одного цвета на другой или одновременного отображения цветов разных палитр.

Вероятно это будет самый эффективный способ.

Погоди, а у тебя на телек приходит RGB без бита яркости? В смысле только 8 цветов?

43

Re: Утилита DaDither: конвертация изображений

Погоди, а у тебя на телек приходит RGB без бита яркости? В смысле только 8 цветов?

Яркость подмешана через резисторы к основным цветам.

44

Re: Утилита DaDither: конвертация изображений

Картинка 128x128 со всеми возможными формируемыми оттенками (серые цвета дублируются).

Post's attachments

Attachment icon All.fil 16.29 kb, 74 downloads since 2021-03-31 

All.png, 843 b, 128 x 128
All.png 843 b, 87 downloads since 2021-03-31 

45

Re: Утилита DaDither: конвертация изображений

С новой картинкой.

Post's attachments

Attachment icon gigascreen.zip 21.62 kb, 93 downloads since 2021-03-31 

46

Re: Утилита DaDither: конвертация изображений

Запустил, залил два видео и фотку на я.диск.
Изображение довольно сильно моргает, может чуть меньше чем в эмуляторе.
На видео 25 к/сек моргания нет, но в реальности оно есть и шахматка на доп цветах заметна больше.

https://disk.yandex.ru/d/acrL6yP34_MAKQ?w=1

47

Re: Утилита DaDither: конвертация изображений

Похоже чего-то не то...

48 Отредактировано Dec (31-03-2021 22:11)

Re: Утилита DaDither: конвертация изображений

Немного не понятно. На предыдущей картинке было "немного мерцает", а на новой "довольно сильно моргает". Хотя принцип формирования цвета не поменялся.

В целом мерцание должно уменьшаться от верхнего правого угля, где оно максимально, до диагонали, где оно минимально.

И, imho, сказывается слишком большой физический размер отдельного пикселя на мониторе.

49

Re: Утилита DaDither: конвертация изображений

Ну, на первом видео (6-секундном) мерцание явно камера усилила. Снимать телевизор вообще дело неблагодарное. Автоэкспозиция у камеры путается, она может сделать замер по самому темному участку и тогда все яркие участки будут "пережарены", а заметность мерцания увеличится.

Во-вторых, мерцание будет тем заметнее, чем больше разница между цветами. Если в первом кадре показывать черный цвет, а во втором ярко белый, то мерцание будет очень заметно. А вот если показывать зеленый поверх голубого, или темно желтый поверх серого, то мерцание даже в эмуляторе почти незаметно.

И в третьих, мерцание получается с частотой 25 герц, а это глаз уже замечает, поэтому совсем не мерцать гигаскрин не может. Даже в кино, где стандарт - 24 кадра в секунду, каждый кадр показывают по два раза, чтобы уменьшить мерцание.

50

Re: Утилита DaDither: конвертация изображений

Dec пишет:

Картинка 128x128 со всеми возможными формируемыми оттенками (серые цвета дублируются).

Вопрос. Правильно я понимаю, что цвет на пересечении должен получаться из цвета строки и цвета столбца?
А то вот я смотрю на эту картинку в эмуляторе - и несколько ячеек этому правилу не подчиняются.

Post's attachments

Attachment icon allcolors.png 68.46 kb, 34 downloads since 2021-03-31