Энтузиасты ретро-гейминга часто негодуют от того, что старые игровые консоли, оснащенные аналоговыми аудио и видео выходами, иногда уже не получается подключить к современными телевизорам, так как на некоторых уже попросту нет аналоговых входов. Конечно, можно найти телевизор, который был бы чуть менее современный, чем чересчур :). Но этим все проблемы не решаются, так как иногда всплывает проблема input lag’а — задержки видеосигнала в телевизоре, перед его попаданием на экран. Данная проблема вносится как разнообразными бессмысленными «улучшайзерами» изображения, которыми щедро комплектуют производители свои телевизоры, так и дополнительным преобразованием аналогового сигнала в цифровой.
Однако из данной ситуации есть один экстремальный выход, продемонстрированный энтузиастом Charlie. В своем проекте он добавил цифровой выход культовой игровой консоли Neo Geo из девяностых, в варианте для игровых автоматов, называемом MVS, назвав свой проект NeoGeoHDMI. Что важно, цифровой видео HDMI выход был добавлен не установкой отдельного аналогово-цифрового преобразователя, а напрямую подключившись к цифровому сигналу, который в приставке поступал на встроенную схему цифро-аналогово преобразователя. Данный подход позволяет получить наиболее высокое качество аудио и видео, которое вообще можно получить от данной игровой консоли, так как в данном случае исключаются преобразования из цифры в аналог и обратно в цифру, которые и вносит шумы с задержками.
Для достижения столь амбициозной цели, был применен недорогой энутзиаcтский модуль FPGA, позволяющий без заметных задержек проводить самые различные операции над над широкополосными сигналами. Используя специально написанное программное обеспечение, автор проекта преобразовал цифровой аудио и видео сигнал из Neo Geo в совместимый с HDMI формат. Кроме этого, FPGA также решает проблему с чересстрочным видео сигналом, преобразуя его в сигнал прогрессивной разверткой с, минимально допустимым для HDMI, разрешением в 720 x 480 пикселей. При этом, механизм обеспечения прогрессивной развертки сделан настраиваемым: интерполируемые линии можно сделать полной яркости, частичной или полностью черными.
Для обеспечения кадровой частоты в 60 кадров в секунду, приставку Neo Geo также пришлось подразогнать, так как до модификации она выдавала всего-лишь 59.1 FPS, из-за чего некоторые телевизоры отказывались выводить несовместимый сигнал. Что интересно, задержка сигнала при его обработке в FPGA составляет всего 100 микросекунд (0.1 мс), по сравнению с аналоговым выходом, что не заметно на глаз даже самому хардкорному геймеру. Стоит правда заметить, что современные мониторы / телевизоры, чаще всего, сами вносят задержку в 1 кадр (16 мс), которую также нельзя назвать сильно существенной. По словам автора, данный подход можно применить и к другим олдовым игровым консолям, но не ко всем, так как у совсем старых консолей аналоговый сигнал идет прямо из их кастомных чипов. Для апгрейда таких приставок пришлось бы подключатся прямо в чип, что очень сложно и муторно. Среди консолей которые можно перевести в цифру, автор упомянул Dreamcast, Gamecube, Nintendo 64, а также SNES (Super Nintendo), на счет которой он правда не уверен.
Если данный проект вас заинтересовал, то ознакомиться с ним детальнее, а также с его исходными кодами, можно на соответствующей странице на GitHub. Кроме этого, у проекта NeoGeoHDMI есть и демонстрационное видео, которое мы прикрепили в нашу заметку.
Источник: Hack a day
Обсудить: форум