Wolfenstein 3D на Game Boy Color
Куда уже только не добрались любительские порты Wolfenstein 3D. Мы уже видели впечатляющие результаты на ZX Spectrum 48K, Atari XL, Sega Genesis. Все эти проекты объединяет стремление адаптировать или написать новый код, работающий в рамках оригинальных возможностей ретро-платформ.
Game Boy Color, с его недо-Z80 на частоте 8.3 МГц с сочетании с маленьким разрешением экрана — довольно интересная платформа для подобных экспериментов. Попытки реализовать игры, аналогичные Wolf 3D, уже были, но они отличались графикой совершенно без текстур с не очень высокой скоростью работы.
Автор находящегося в процессе разработки нового порта Wolfenstein 3D для GBC решил пойти нетрадиционным путём — получить полноценную графику и высокую частоту кадров за счёт применения сопроцессора в картридже. Игра работает на 32-битном микроконтроллере производства NXP с ядром ARM Cortex-M0 на частоте 48 МГц, 16КБ ОЗУ и 128КБ ПЗУ. Интерфейс с GBC представляет собой двухпортовое статическое ОЗУ объёмом 8КБ, в которое с одной стороны идёт рендер видеобуфера от микроконтроллера, а с другой GBC забирает готовые тайлы для отображения. Также на плате присутствует 8-битное ПЗУ объёмом 512 килобайт для обычного GBC кода и маппер MBC1 для работы с ним.
Больше подробностей на странице проекта.
Game Boy Color, с его недо-Z80 на частоте 8.3 МГц с сочетании с маленьким разрешением экрана — довольно интересная платформа для подобных экспериментов. Попытки реализовать игры, аналогичные Wolf 3D, уже были, но они отличались графикой совершенно без текстур с не очень высокой скоростью работы.
Автор находящегося в процессе разработки нового порта Wolfenstein 3D для GBC решил пойти нетрадиционным путём — получить полноценную графику и высокую частоту кадров за счёт применения сопроцессора в картридже. Игра работает на 32-битном микроконтроллере производства NXP с ядром ARM Cortex-M0 на частоте 48 МГц, 16КБ ОЗУ и 128КБ ПЗУ. Интерфейс с GBC представляет собой двухпортовое статическое ОЗУ объёмом 8КБ, в которое с одной стороны идёт рендер видеобуфера от микроконтроллера, а с другой GBC забирает готовые тайлы для отображения. Также на плате присутствует 8-битное ПЗУ объёмом 512 килобайт для обычного GBC кода и маппер MBC1 для работы с ним.
Больше подробностей на странице проекта.