Сейчас на рынке представлено множество самых разных игровых консолей на Linux с широкими возможностями по кастомизации, разработке собственного софта и конечно же, обилию самых разных конфигураций. Однако Linux стал де-факто стандартном отнюдь не сразу: когда-то консоли с пингвином на борту были диковинкой, разработанной исключительно для энтузиастов, а в случае с сегодняшней консолью — от самих же энтузиастов. Как одни китайцы сделали мультимедийный MIPS-чипсет, другие сделали на его базе игровую консоль, третьи портировали на неё Linux, а четвертые выпустили Linux-консоль с этой системой — читайте в сегодняшней статье!
❯ Предисловие
Пожалуй, сейчас Linux (и в более широком смысле — Unix-like системы в целом) можно считать монополистом на рынке игровых консолей, заместив даже проприетарные ОС. Благодаря относительной простоте портирования, широкой поддержке от вендоров самих чипсетов, а также нетребовательности к аппаратным ресурсам гаджета, Linux ставят на большинство современных эмуляторных портативных консолей по типу Miyoo, которые пользуются большой популярностью благодаря низкой цене и вполне неплохой эмуляции.
История китайских портативок начинается ещё с 90-х, когда вышел легедарный Brick Game, более известный у нас как «Тетрис»! В нулевых годах, китайские производители начали делать собственные цветные портативные консоли с играми от «больших» платформ, однако они были именно аппаратными клонами соответствующих систем, объединявшими в один чип целую игровую консоль. Самым популярным клоном был NES, а за ним и SMD и благодаря такому подходу, игры работали быстро и точно, без какого либо фреймскипа и спидхаков характерного для эмуляторных консолей. По сути, это были именно те самые консоли, просто «разработанные» ещё раз в виде IP-ядра и синтезированные в один кристалл. Кроме того, подобная игровая консоль на одном кристалле ещё и стоила достаточно дешёво: к 2010 году, можно было купить самый простой вариант с многоигровкой NES рублей за 700 и более того, такие аппаратные клоны производятся даже сейчас: самый известный из них «суп» 🙂
В середине всё тех же нулевых, китайские компании начали представлять новый класс устройств: недорогие MP4-плееры с возможностью просмотра видео. В таких устройствах использовались совсем свежие мультимедийные чипсеты от тех же китайских вендоров, которые работали на архитектуре MIPS/ARM, имели достаточно достойную производительность (~250-350МГц) и интегрировали в один кристалл и декодер видео, и аудиокодек, и контроллер дисплея, что значительно снижало итоговую цену устройства. Более того, были даже весьма интересные плееры Kingston KPEX с встроенной корейской платформой для мобильных игр GNEX (друзья, если у кого-то остался GNEX_SDK_v1.50.exe, пожалуйста перезалейте и скиньте в комментарии ссылку на него. Очень нужен для подготовки новой статьи).
Примерно к 2006-2007 году, кто-то из китайских вендоров додумался, что на базе весьма мощных мультимедийных чипсетов можно сделать и полноценную бюджетную игровую консоль, которая могла бы эмулировать сразу несколько игровых систем, плюс выполнять функции MP4-плеера. Одна из таких консолей была ещё и слайдером: на фото Qumo GameBox, выпускавшаяся ещё под кучей разных брендов:
Однако первой по настоящему популярной консолью такого формата стала вышедшая в 2009 году Dingoo A320, которая за относительно небольшую цену предлагала эмуляцию кучи различных игровых систем, SDK для разработки своих собственных игр и эмуляторов, а также возможности MP4-плеера и FM-радио. Консоль стала бестселлером, её ковыряли все кому не лень: выяснилось, что она работает на базе MIPS-чипсета Ingenic JZ4732 на частоте 336МГц, имеет 32Мб ОЗУ и использует RTOS uC/OS-II. Затем даташит на процессор был слит и энтузиасты портировали ядро Linux на A320, создав отдельный дистрибутив для игровых консолей — OpenDingux, в некоторой степени базировавшийся на софте GamePark GP2X. Сложно сказать, кто именно портировал ядро на сами чипсеты Ingenic: в ядре есть копирайты как от отдельных энтузиастов, так и от инженеров самого вендора чипсетов.
В 2010 году вышел крошечный мини-нетбук Ben NanoNote, построенный по концепции опенсорсного железа (схема устройства свободно доступна всем, любой производитель может легально сделать клон устройства или форкнуть его и доработать по своему усмотрению) на процессоре Ingenic той же серии с OpenWRT на борту. Такой вот пример реюзабельности одной системы на кристалле с портом ядра Linux для самых разных целей. Кстати, если вдруг у кого-то есть NanoNote и вы его продаете/хотите отдать в хорошие руки для будущей статьи и видео — пишите в личку, давно ищу ARM/MIPS-нетбуки, в том числе и наноноут. Если вдруг кому-то интересно, то недавно я превращал электронный переводчик в мини-нетбук, правда на Windows CE.
Коммьюнити недорогой Linux-консоли росло, появлялись клоны (например, Gemei A330 был только похож на A320, но работал на совершенно ином чипсете и Linux на нём не было) и в 2011 году, компания Ritmix приняла решение выпустить собственную консоль сразу же с Dingux на борту, причем консоль формально делали с учетом пожеланий коммьюнити. Например хабровчанин @EXL, администратор MotoFan и автор множества патчей для телефонов Motorola, когда-то запушил собственный перевод UI-консоли, однако из-за бюрократии, в серию пошёл девайс с кривым переводом…
Имя этой консоли — Ritmix RZX-50 и её подарил мне мой подписчик вместо с легедарным JXD S7300, за что ему огромное спасибо. Сейчас RZX-50 включается и заряжается, однако аккумулятор уже отжил свое. Пришло время его, наконец-то, замнить!
❯ Что «под капотом»?
Для замены аккумулятора, консоль необходимо разобрать. Сделать это очень просто: вытаскиваем 4 резиновые заглушки с обратной стороны консоли и откручиваем 4 винтика по периметру устройства.
Далее расщелкиваем клипсы фронтальной части устройства и вытаскиваем дисплей. Здесь используется стандартная 40-pin матрица с интерфейом TTL-RGB, такую можно найти, например, в навигаторах или других игровых консолях с дисплеем 480×232. Так что, если у васй есть подбитая RZX-50 и нерабочий навигатор — можно взять дисплей с него!
Далее перед нами открывается вид основной платы. Судя по производителю KOHOTECH (разработчик консоли), RZX-50 является кровным братом некоторых популярных Android-консолей тех лет бренда JXD (у нас продавались как EXEQ, FUNC, SMAGGI и т. п.). На первый взгляд, консоль спроектирована очень просто и в некоторй степени гениально.
Сверху платы расположился чипсет Ingenic JZ4750 с архитектурой MIPS XBurst, работающий на частоте 400МГц. Сам чип выполнен в QFP-корпусе, так что теоретически можно даже USB-хост выцепить, подключить мышку с клавиатурой и получить нетбук-консоль 🙂 Справа от процессора расположились две банки SDRAM-памяти по 32Мб каждая производства EtronTech. Да, ещё даже не DDR — и такого объёма вполне хватает для комфортного запуска Linux.
Правее расположилась… MicroSD-флэшка, слот под которую распаян поверх места для NAND флэшки в корпусе TSOP-48! То есть вендор решил сэкономить и ставить либо NAND, либо MicroSD флэшку. Хитро! С чем это связано, мне не ясно, NAND итак была достаточно дешевой.
Слева расположилсят модуль FM-радио производства RDA и EEPROM, назначение которой мне не ясно. Снизу платы расположены коннектор MiniUSB, а также 3.5мм джек для музыки и для TV-выхода.
С обратной стороны нас ждёт UART, к которому без проблем можно получить доступ из юзерспейса. Хотим подключить к консоли микроконтроллер и управлять с консоли умным домом? Вполне возможно. Подключить внешний модем? Почему нет?
Когда мы узнали что у консоли «под капотом», самое время перейти к замене аккумулятора. В стоке здесь исыпользуется литий-полимерный аккумулятор на 1800мАч. Сложность в том, что он очень тонкий, поэтому в качестве замены пришлось ставить АКБ смартфона Samsung, а затем и от реплики айфона. Такой вот даунгрейд.
Припаиваем аккумулятор и проверяем консоль: она включается и работает. Собираем девайс и, наконец-то, переходим к тестам!
❯ Включаем
После включения нас встречает логотип Ritmix и менюшка в стиле XMB от PSP, на манер Dingoo A320. Однако в отличии от большинства недорогих китайских консолей, здесь у нас запущен именно OpenDingux, что даёт свой моддерский шарм.
Помимо игр, девайс также имеет и мультимедийные возможности: прослушивание музыки, просмотр видосов и просмотр картинок. Что забавно, в корне устройства уже были пиратские ромы и музыка с копирайтом. Недосмотр Ritmix или китайцев?
Однако коносль нужна для того, чтобы на ней играть! Давайте посмотрим, как 400-мегагерцовый MIPS-чипсет тянет эмуляцию игр. Из эмуляторов у нас есть поддержка популярных 8 и 16-битных платформ из 80х и 90х. Есть и SNES, и NES, и SMD, и Game Gear.
Начинаем с эмулятора GBA. Здесь производительность более чем радует, всё работает максимально плавно и ничего не лагает. Тест проводился на игре NFS Underground 2, при этом игра работает плавно и без каких либо проблем:
Переходим к NES. NES и SMD — достаточно тяжелые консоли для эмуляции из-за особых эффектов связанных с таймингами во многих играх, поэтому для точной и быстрой эмуляции требуется достаточно мощный процессор. Но JZ4750 с NES справляется отлично, в том числе и с демкой Bad Apple. Насчет поддерживаемых мапперов сказать не могу — не знаю какой эмулятор используется в основе.
Как и с Sega Mega Drive. Куда же без BattleToads!
В целом, для прямой задачи RZX-50 замечательно подходит и её можно рекомендовать к покупке на вторичке даже сейчас. Ныне они стоят в среднем 700-1.000 рублей на онлайн-барахолках, поэтому покупка такой консольки будет интересна как гикам, желающим поковырять Linux-консоль, так и просто читателям, которые хотят консольку для ретро-игрушек!
❯ Заключение
Вот такой материал про RZX-50 у нас с сегодня с вами получился! Надеюсь, вам было интересно, я большой фанат различных китайских игровых консолей. Давно хотел купить себе и оригинальную 320’ую дингу, но пока не смог по финансовым причинам: цены на вторичке кусаются.
Если вам интересна тематика с консолями, поддающимся моддингу и кастомизации — пишите в комментариях! Постараюсь в ближайшее время написать статью о программировании 2D (а может и 3D — если смогу ещё лучше оптимизировать растеризатор) игр для таких консолей с нуля.
Кстати, если у кого-то из читателей есть ненужные устройства (в том числе с косяками) или дешевые китайские подделки на айфоны/айпады/макбуки и другие брендовые девайсы будучи нерабочими, тормозящими, или окирпиченными и вам не хотелось бы выкидывать их на свалку, а наоборот, отдать их в хорошие руки и увидеть про них статью — пишите мне в Telegram или в комментах! Готов в том числе и купить их. Особенно ищу донора дисплея на китайскую реплику iPhone 11 Pro Max: мой ударник, контроллер дисплея калится и изображения нет 🙁
А ещё я держу все свои мобилы в одной корзине при себе (в смысле, все проекты у одного облачного провайдера) — Timeweb. Потому нагло рекомендую то, чем пользуюсь сам — вэлкам: