Ретроконсоль своими руками Часть 1. Выбираем «железо»
Нелегкая ситуация, сложившаяся на рынке видеокарт, — отличный повод вспомнить о том, что компьютерные игры — это вовсе не 4K, не «волшебные лучи» RTX и тем более не количество полигонов на кончике носа главного героя. Крепко сбитый, захватывающий игровой процесс — вот то, что отличает хорошую видеоигру от плохой, а вовсе не качество графики. В наше время это «сакральное» знание во многом было утеряно: современные игроделы делают ставку на красивую картинку и аддиктивные механики, забывая о том, что игра прежде всего должна развлекать и приносить радость.
Впрочем, благодаря эмуляторам классических игровых систем, сегодня практически каждый может прикоснуться к удивительному миру ретроигр, создатели которых ставили во главу угла именно геймплей. Ну, а самый «идеологически верный» способ это сделать — собрать миниатюрную консоль на базе одноплатного компьютера. Справиться с подобной задачей сможет даже человек, далекий от мира DIY, благо все необходимое можно приобрести на AliExpress, а сам процесс сборки подобного девайса оказывается не намного сложнее сборки конструктора «Лего».
В первой части данного материала мы поговорим о том, какие компоненты необходимы для сборки ретроконсоли, а вторую всецело посвятим выбору подходящей операционной системы и настройке программного обеспечения. Статья ориентирована на новичков, которые прежде не имели дела с подобными проектами.
Лучшая платформа для первых экспериментов
Тем, кто ранее никогда не имел дела с одноплатными компьютерами, мы настоятельно рекомендуем начинать с Raspberry Pi. Данная платформа успешно развивается с 2012 года и обрела за это время массу поклонников по всему миру. Сегодня для «малинки» выпускается огромное количество разнообразных модулей, корпусов и периферии, а Интернет буквально переполнен пошаговыми туториалами, посвященными созданию ретроконсолей, а также решению типичных проблем, неизбежно возникающих при реализации подобных проектов. С учетом качества, дешевизны и достаточно высокой для устройств такого класса производительности, все перечисленное делает Raspberry Pi наиболее оптимальным выбором для новичка.
Но какую же модель предпочесть: наиболее актуальную Raspberry Pi 4B или же недорогую Raspberry Pi 3B? Ответ на этот вопрос зависит от того, во что именно вы собираетесь играть. Оба одноплатных компьютера прекрасно справляются с эмуляцией 8-, 16- и 32-битных консолей, демонстрируя устойчивый фреймрейт 60 кадров в секунду даже в самых технически навороченных играх для первой PlayStation. Однако, когда речь заходит о более мощных приставках, у 3B начинаются серьезные проблемы. Следующее сравнение наглядно демонстрирует разницу в производительности между третьим и четвертым поколениями «малинки» при эмуляции игр для Sega Dreamcast.
Разница видна невооруженным глазом. Если говорить о цифрах, то даже в наиболее тяжелых сценах фреймрейт на 4-й модели Raspberry Pi не опускается ниже 32–35 кадров в секунду, чего вполне достаточно для комфортной игры, тогда как максимальный FPS достигает 58–60 к/с. Третья модификация «малинки», увы, не вытягивает игры для Dreamcast в принципе: FPS регулярно падает до неиграбельных 10 кадров в секунду, а в некоторых сценах можно заметить графические артефакты, причина которых кроется отнюдь не в низкой точности эмуляции, а в том, что SoC банально не успевает обрабатывать все имеющиеся в кадре объекты.
Аналогичным образом дела обстоят и с эмуляцией Nintendo 64, хотя там результаты значительно разнятся в зависимости от конкретной игры. Так, например, в Super Smash Bros. фреймрейт не опускается ниже 59 FPS, тогда как в Golden Eye средняя частота кадров колеблется у отметки 25 кадров в секунду, при этом геймплей сопровождается постоянными фризами.
А вот количество оперативной памяти (напомним, что Raspberry Pi 4B выпускается в трех версиях: с 2, 4 и 8 гигабайтами RAM на борту) закономерно не влияет на скорость эмуляции.
Сравнительные тесты наглядно показывают, что даже при работе с эмуляторами GameCube и PSP главной проблемой одноплатного компьютера оказывается именно низкая производительность CPU и видеоядра, но никак не объем оперативки.
Таким образом, если вы планируете использовать Raspberry Pi исключительно для игр, то можете дополнительно сэкономить, приобретя базовую версию с 2 гигабайтами RAM.
Корпус для ретроконсоли
Если вы являетесь счастливым обладателем 3D-принтера, то сможете самостоятельно создать для «малинки» подходящий корпус. В противном случае — добро пожаловать на AliExpress. Здесь можно без труда найти десятки вариантов корпусов под Raspberry Pi любых модификаций, начиная от простых наборных коробочек из акрила и заканчивая продвинутыми решениями с продуманным охлаждением и контроллерами дополнительных портов. Базовый набор стоимостью около 500 рублей будет выглядеть примерно так.
В комплект, помимо самого корпуса, состоящего из нескольких акриловых пластин, уже входят радиаторы для чипов, миниатюрный кулер, крепежные винты и отвертка для сборки. В принципе, этого вполне хватит для использования Raspberry Pi в качестве игровой приставки. Жаль только, что в таком виде «малинка» не особо похожа на ретроконсоль и не вызывает того неуловимо-сладостного чувства, которое принято называть «ностальгией». Впрочем, этот недостаток легко исправить.
На просторах маркетплейса можно отыскать и кастомные корпуса, стилизованные под игровые консоли прошлых лет. Одной из самых интересных таких моделей по соотношению цена/качество является Retroflag NESPi 4, создатели которой вдохновлялись легендарной Nintendo Entertainment System.
В набор, который обойдется вам в сумму от 3 до 3,5 тысячи рублей в зависимости от продавца, помимо самого корпуса, входят: кулер, две термопрокладки, отвертка, адаптер питания, кабель micro-HDMI для подключения ретроконсоли к монитору или телевизору, инструкция по сборке, а также картридж-переходник для 2,5-дюймового SATA SSD. Встроенный в корпус SATA-контроллер подключается к одному из разъемов USB 3.0 «малинки», поэтому один из двух имеющихся на плате высокоскоростных портов будет всегда занят, что, впрочем, не является критичным для подобного проекта.
Поскольку интерфейс третьей версии обладает пропускной способностью 5 Гбит/с (то есть 640 МБ/с), твердотельный накопитель будет работать практически так же быстро, как и при прямом подключении к SATA-разъему материнской платы (для сравнения, максимальная производительность топового WD Blue 3D NAND составляет 560 МБ/с в операциях последовательного чтения и 530 МБ/с при записи файлов). А самое главное, у вас появится возможность подключать дополнительное хранилище под файлы на случай, если вы захотите собрать ультимативную коллекцию игр для PlayStation и Dreamcast или же использовать ретроконсоль в качестве видеоплеера. Подключить же такой картридж к ПК или ноутбуку можно с помощью стандартного переходника SATA-USB.
Retroflag предлагает и собственный адаптер для работы с картриджем. Стоит такое удовольствие около 1500 рублей, при этом его использование не дает каких-либо значимых преимуществ, кроме разве что светодиодного индикатора активности SSD.
Так что приобретать подобное чудо техники имеет смысл лишь в том случае, если вам важен дизайн. Ведь переходник выполнен в том же стиле, что и оригинальные чехлы для картриджей Nintendo Entertainment System, если не считать отсутствия товарного знака «Nintendo®», на использование которого у RetroFlag попросту нет прав.
Еще одной интересной особенностью данного корпуса является наличие отсека для хранения microSD-карт, который можно отыскать с обратной стороны консоли, — он пригодиться в том случае, если вы планируете использовать несколько разных операционных систем поочередно.
Единственным недостатком этого корпуса можно назвать очень короткие провода для подключения к Raspberry Pi контроллеров внешних портов и вентилятора кулера, что несколько усложняет процедуру сборки. Впрочем, с этим недостатком вы столкнетесь лишь единожды — во время установки одноплатного компьютера внутрь.
Клавиатура и мышь
Хотя для игр мы будем использовать геймпад, первичная настройка ретроконсоли потребует наличия полноценных устройств ввода. В принципе, к Raspberry Pi можно подключить любую стандартную USB-клавиатуру и мышь, благо одноплатный компьютер оснащен полноразмерными портами USB. Однако для большего удобства вы можете приобрести беспроводную мини-клавиатуру со встроенным тачпадом наподобие Rii i8.
Такое устройство не особо подходит для повседневного использования из-за своих скромных размеров, однако для периодического администрирования является практически идеальным вариантом, помогая в том числе сэкономить дополнительный USB-порт, которых у «малинки» и без того не очень много. Среди преимуществ данной модели также необходимо отметить наличие мультимедийных кнопок — это позволяет использовать клавиатуру в качестве пульта ДУ при просмотре видео.
Геймпад в стиле «ретро»
Если вы привыкли к Dualshock 4 или Xbox One Controller, то сможете использовать для игр полюбившийся геймпад, благо популярные дистрибутивы операционных систем для ретроконсолей поддерживают перечисленные игровые манипуляторы «из коробки». Желающие предаться ностальгии по полной программе также могут приобрести контроллеры, стилизованные под геймпады для консолей прошлых лет: на том же Aliexpress можно отыскать десятки разнообразных моделей на любой вкус и кошелек.
В качестве же своеобразной «золотой середины» между этими крайностями мы можем порекомендовать 8BitDo SN30 Pro+.
Компания 8BitDo хорошо зарекомендовала себя среди поклонников ретрогейминга, предлагая покупателям сравнительно недорогие, но при этом весьма качественные игровые манипуляторы. Модель SN30 Pro+ позиционируется как универсальный геймпад и совместима с операционными системами Windows, macOS, Android, корректно распознается RetroPie, Recalbox и Lakka и может использоваться даже в качестве замены Pro-контроллера для Nintendo Switch.
По дизайну SN30 Pro+ представляет собой нечто среднее между DualShock для PlayStation и геймпада SNES. Два аналоговых стика и полный набор кнопок позволяют использовать данный контроллер не только с любыми эмуляторами ретроконсолей, но и в современных играх. Среди интересных особенностей устройства необходимо отметить:
наличие аналоговых курков;
возможность написания собственных макросов с помощью фирменного ПО;
съемный аккумулятор, который при необходимости можно заменить на две пальчиковые батарейки;
расширенная поддержка (хотя релиз геймпада состоялся в 2019 году, обновления прошивки выпускаются до сих пор: последняя версия микропрограммы датируется 14 января 2021 года).
Заплатить за все это великолепие придется примерно 4 тысячи рублей. Если же вам не особо импонирует дизайн с «рожками» DualShock, вы можете заказать обычную версию геймпада без приставки «плюс».
По размерам и форме такой геймпад приближен к контроллеру для Super Nintendo, технически ничем не отличаясь от своего старшего брата. Данная версия обойдется вам примерно на 500 рублей дешевле.
Выбираем карту памяти для ретроконсоли
С выбором карты памяти все отнюдь не так просто, как может показаться на первый взгляд. Прежде всего определимся с емкостью. Для установки и корректной работы операционной системы нам понадобится 16 ГБ дискового пространства, тогда как весь остальной доступный объем можно будет использовать для размещения самих игр. Таким образом, в минимальной конфигурации будет достаточно microSD-карты объемом 32 ГБ, но лишь в том случае, если круг ваших интересов ограничивается проектами 8/16-битной эпохи. С учетом того, что в течение жизненного цикла той же PlayStation One было выпущено около 8 тысяч проектов, средний объем каждого из которых составлял 400 МБ, полная коллекция игр для классической приставки Sony будет занимать более 3 терабайт, в то время как сборник игр для NES весит от силы 50–60 МБ.
Впрочем, поскольку Raspberry Pi поддерживает стандарт SDXC, с дефицитом свободного места у вас точно не возникнет проблем: если обратиться к перечню протестированных моделей, то в нем можно найти даже SanDisk Extreme Pro на 512 ГБ.
Другое дело, что подобные карточки достаточно дороги. Так что если вы не собираетесь использовать свою ретроконсоль в качестве мультимедийного сервера, то их покупка является не особо рентабельной. В случае же приобретения упомянутого Retroflag NESPi 4, позволяющего подключать к «малинке» полноценные SATA SSD да еще и менять их, словно игровые картриджи, смысл в использовании карты памяти большой емкости и вовсе теряется.
Помимо объема, при выборе microSD-карты для Raspberry Pi следует обращать внимание на ее скоростные характеристики. И речь идет не только о скорости чтения/записи, но и о минимальном устойчивом количестве операций ввода-вывода в секунду (IOPS) — показателе, который напрямую влияет на производительность флеш-карты при работе с приложениями. Поскольку мы с вами будем использовать микрокомпьютер в качестве ретроконсоли, нам будет вполне достаточно карты памяти уровня SanDisk Ultra.
Карты памяти данной линейки относятся к классам производительности C10, U1, A1. На практике это означает, что даже в самых неблагоприятных условиях скорость передачи данных между флеш-картой и одноплатным компьютером не будет опускаться ниже 10 МБ/с (C10, U1), а минимальное устойчивое количество операций ввода-вывода составляет 1500 IOPS в операциях случайного чтения и 500 IOPS — при записи файлов (A1). Поскольку эмуляторы ретроконсолей не особо требовательны к скорости системного накопителя, а сами дистрибутивы игр отличаются малым объемом, для наших нужд этого будет более чем достаточно. С учетом того, что в операциях последовательного чтения/записи производительность SanDisk Ultra достигает 100 МБ/с, особых проблем с загрузкой новых игр также не возникнет, поскольку в среднем на передачу каждых 4 ГБ данных будет уходить не более 1 минуты.
Наша ретроконсоль практически готова. Дело за малым: осталось лишь установить подходящую операционную систему и произвести все необходимые настройки. О том, как это сделать, мы поговорим уже во второй части материала.