Многие знают Sega Mega Drive как консоль с «мрачной» палитрой: всего 512 цветов в распоряжении, из которых одновременно на экране можно отобразить лишь 64 (4 палитры по 16 цветов). Но что, если я скажу, что можно и больше чем это задуманно аппаратно? В технологии MegaColor эти цифры можно умножить в десятки раз?

В чем суть трюка?

Технология MegaColor — это не просто «софтовый плеер». Тут конечно без "спец техники" не обойтись, но так или иначе цвета выводит сама консоль, по честному! Тот же самый трюк можно использовать и с оригинальной SEGA CD.

В обычном режиме процессор VDP (Video Display Processor) берет данные о цветах из CRAM (Color RAM). Ограничение в 64 цвета зашито именно в объеме этой памяти. MegaColor работает иначе:

  • Прямая подмена (CRAM Injection): Картридж не отслеживает состояние луча, это делает сама консоль "подсовывая в правильный момент" развертки цвета CRAM в VDP в реальном времени, новые значения цветов поступают настолько быстро и "правильно" что по факту консоль за один кадр может использовать все допустимые вариации цветов палитр VRAM.

  • Динамическая палитра: Вместо статичных 64 цветов мы получаем возможность менять палитру практически на каждом пикселе или строке.

  • Результат: На экране одновременно отображается более 3000 цветов. Это превращает картинку из «ступенчатого» ретро в плавное полноцветное изображение, сопоставимое с возможностями 32-битных систем.

Технические тонкости Megacolor Video

Для реализации такого уровня графики (особенно в видео) используется специальный конвертер на стороне ПК.

  1. Конвертер: Берет исходный видеофайл и пересчитывает его, учитывая тайминги луча Sega. Он подготавливает поток данных, который FPGA картриджа будет транслировать на шину.

  2. Поток данных: Объем данных при такой цветопередаче колоссальный для 1988 года, но высокая скорость обмена данными VDP позволяет прокачива��ь этот поток без лагов.

  3. FPS: Технология позволяет крутить полноэкранное видео (FMV) со скоростью до 30 кадров в секунду при феноменальной цветопередаче.

В итоге MegaColor превращает старую добрую Сегу в платформу, способную выдавать картинку, которая в 90-е казалась бы магией или результатом работы какого-нибудь мифического «Sega Saturn Mini».

Как это работает:

  1. Копируем расположение тайлов (MAP).

  2. Копируем сами тайлы.

  3. Ждем вертикального бланка.

  4. Через DMA копируем заготовленную палитру так чтобы горизонтальный бланк совпадал с завершением плитр на линию.

  5. Проходим все строки.

  6. Переходим на 1.

Спасибо за внимание, удачи вам добра и радости!