Получив заветную коробочку c «Малиновым пирогом», каждый играется с ней по своему, моей первой мыслью было поиграть в нее по настоящему, а именно устроить на ее базе эдакий универсальный эмулятор старых игр. Большинство из нас играло в Денди, многие в Сегу или СуперНинтендо, и даже не смотря на наличие новых консолей текущего поколения, память о них живет, для таких вот «тронутых» ностальгией предназначается эта статья. ![](http://habrastorage.org/storage2/933/7b8/cc6/9337b8cc6f136dcd5cc120e76578651c.png)
Для Raspberry существует порт RetroArch, если коротко, то RetroArch благодаря библиотеке libretro позволяет использовать эмуляторы через общий API, то есть что-то вроде фронтенда для различных эмуляторов. Также существует GUI для RetroArch — EmulationStation, ну и не стоит забыть о самих эмуляторах от различных разработчиков. Таким образом, мы имеем 3 уровня, сами эмуляторы, wrapper от RetroArch и графический интерфейс EmulationStation. К счастью хороший человек petrockblog написал скрипт который автоматизируют установку этих программ. Скажу сразу тестировал я это только на Raspbian (Debian Wheezy), в других системах кое-что будет отличатся, но суть должна остаться прежней. В актульной версии включены эмуляторы для следующих приставок: Atari 2600, NES (Dendy), SNES, Sega Mega Drive/Genesis, MAME (аркадные автоматы), Gameboy Advanced и великий и ужасный Doom. Итак, сначала установим зависимости.
sudo apt-get install git dialog
Затем скачаем сам скрипт с гитхаба.
mkdir ~/git_dir cd ~/git_dir git clone github.com/petrockblog/RetroPie-Setup.git
И наконец запустим скрипт с правами sudo.
sudo ./retropie_setup.sh
В процессе запуска, скрипт спросит про тип установки, «binary» — то есть, уже скомпилированные файлы, или «source» — установка из исходников, последнее предполагает самые актуальные версии программ, но и длится 2-3 часа, решать вам. После установки, вы обнаружите в своем домашнем каталоге папку RetroPie, а в ней еще несколько
pi@raspberrypi ~/RetroPie $ ls EmulationStation emulatorcores RetroArch-Rpi roms SNESDev-Rpi
emulatorcore -> собственно сами эмуляторы RetroArch-Rpi -> Наш RetroArch, файл настроек расположен в /etc/retroarch.cfg. EmulationStation -> GUI для RetroArch, файлы настроек расположены в ~/.emulationstation roms -> как следует из названия сюда нужно скопировать соответствующие РОМы. SNESDev-Rpi > утилиты для подключения джойстика от SNES, подробнее тут Чтобы запустить все это дело, вводим в консоли «emulationstation»
pi@raspberrypi ~$ emulationstation
Чтобы выйти из emulationstation нажимаем F4. Для удобства запуска, создадим ярлык. Для этого создаем файл любимым текстовым редактором (в примере vim) со следующим содержанием.
vim ~/Desktop/emustation.desktop
[Desktop Entry] Version=1.0 Type=Application Name=EmuStation Comment=EmulateStation, GUI for Retro Game Emulators Categories=Game Exec=/usr/bin/emulationstation Icon=/home/pi/.joypad.svg Terminal=false StartupNotify=false Разумеется параметр «Icon» следует заменить на собственный. Следующим делом подключаем геймпад, т.к. с клавиатуры играть не комильфо (да и не работает она у меня в RetroArch). Я использовал обычный китайский клон PlayStation контроллера, который продается за 10€ за пару на ebay, собственно проблем с определением в системе тут быть не должно. После подключения вводим следующую команду в консоли
sudo ~/RetroPie/RetroArch-Rpi/tools/retroarch-joyconfig | sudo tee -a /etc/retroarch.cfg
На экране появятся названия различных положений кнопок (вверх, вниз, вправо и т.д.) которые следует соответственно нажимать на геймпаде, эти значения автоматически будут добавлены в конфигурационный файл RetroArch. Но это еще не все, чтобы выходить из RetroArch c помощью геймпада, нужно добавить туда еще одну строчку, для этого откройте "/etc/retroarch.cfg" и добавьте в конец следующую строку,
input_exit_emulator_btn = “11″
где «11» это значения для вашей кнопки на геймпаде, например у меня «11» соответствует R3 (правый стик). Запускаем еmulationstation снова, программа должна опознать что мы используем геймпад, и так же попросить ввести положения различных кнопок. Собственно все, с этого момента уже можно играть, но напоследок несколько советов. Если вы не видите своих игр, хотя и скопировали их а папку roms, проверьте совпадает ли их расширение с указанным в файле конфигурации, регистр ВАЖЕН!
less ~/.emulationstation/es_systems.cfg
Например для Сеги по умолчанию это ".smd", то есть ROM c названием Sonic.SMD (В отличии от Sonic.smd) не определится! Ну и главное, эмуляторы все еще развиваются, многие из них работают еще не в полную силу, почти у всех есть проблемы со звуком, но для начала я считаю, что и это уже не плохо. P.S. Если есть какие то замечания по стилистике изложения или орфографии, сообщите, пожалуйста, об этом в ЛС.
|