RetroFlix / PI Switch Followup Jun 24, 2017
I've been trying to dedicate some cycles to wrapping up the Raspberry PI entertainment center project mentioned a while back. I decided to abandon the PI Switch idea as the original controller which was purchased for it just did not work properly (or should I say only worked sporadically/intermitantly). It being a cheap device bought online, it wasn't worth the effort to debug (funny enough I can't find the device on Amazon anymore, perhaps other people were having issues...).
Not being able to find another suitable gamepad to use as the basis for a snap together portable device, I bought a Rii wireless controller (which works great out of the box!) and dropped the project (also partly due to lack of personal interest). But the previously designed wall mount works great, and after a bit of work the PI now functions as a seamless media center.
Unfortunately to get it there, a few workarounds were needed. These are listed below (in no particular order).
To start off, increase your GPU memory. This we be needed to run games with any reasonable performance. This can be accomplished through the Raspberry PI configuration interface.
Here you can also overclock your PI if your model supports it (v3.0 does not as evident w/ the screenshot, though there are workarounds)
If you are having trouble w/ the PI output resolution being too large / small for your tv, try adjusting the aspect ratio on your set. Previously mine was set to "theater mode", cutting off the edges of the device output. Resetting it to normal resolved the issue.
To get the Playstation SixAxis controller working via bluetooth required a few steps.
- Unplug your playstation (since it will boot by default when the controller is activated)
- On the PI, run
- Start the controller and watch for a new devices in the bluetoothctl output. Make note of the device id
- Still in the bluetoothctl command prompt, run
- In the Raspberry PI bluetooth menu, click 'make discoverable' (this can also be accomplished via the bluetoothctl command prompt with the discoverable on command)
- Finally restart the controller and it should autoconnect!
- To install recent versions of Ruby you will need to install and setup rbenv. The current version in the RPI repos is too old to be of use (of interest for RetroFlix, see below)
- Using mednafen requires some config changes, notabley to disable opengl output and enable SDL. Specifically change the following line from
video.driver openglUnfortunately after alot of effort, I was not able to get mupen64 working (while most games start, as confirmed by audio cues, all have black / blank screens)... so no N64 games on the PI for now ☹
- But who needs N64 when you have Nethack! ♥‿♥(the most recent version of which works flawlessly). In addition to the small tweaks needed to compile the latest version on Linux, inorder to get the awesome Nevanda tileset working, update include/config.h to enable XPM graphics:
Once installed, edit your nh/install/games/lib/nethackdir/NetHack.ad config file (in ~ if you installed nethack there), to reference the newtileset:
-/* # define USE_XPM */ /* Disable if you do not have the XPM library */ +#define USE_XPM /* Disable if you do not have the XPM library */
-NetHack.tile_file: x11tiles +NetHack.tile_file: /home/pi/Downloads/Nevanda.xpm
Finally RetroFlix received some tweaking & love. Most changes were visual optimizations and eye candy (including some nice retro fonts and colors), though a workers were also added so the actual downloads could be performed without blocking the UI. Overall it's simple and works great, a perfect portal to work on those high scores!
That's all for now, look for some more updates on the ReFS front in the near future!