Being able to run emulators on an OpenELEC computer can be tricky. It takes a fair bit of knowledge from several different areas to setup. I’m going to try to give a good overview of putting all together into a working system. By the end you’ll have a setup that allows you to play all of your old games from the comfort of your couch.

Something to consider, the build of RetroArch I’m using doesn’t have emulators for a lot of systems. Here is a list of what it can emulate.

I’m going to break this up into sections. I’m going to assume you have OpenELEC installed and working.

Getting ROMs on OpenELEC

Be sure to organize your ROMs into folders based on their console. EG: put your SNES ROMs in a snes folder, put your NES ROMs into a nes folder, and so on.

By far the easiest way to get ROMs onto your OpenELEC computer is to put them onto a flash drive and plug it in. Once plugged in use XBMC to add a new file source pointing to the flash drive.

Go to Settings and then File Manager

Go to Settings and then File Manager

Select Add Media and then Browse

Select Add Media and then Browse

Select Root File System then Media. Your drive will be one of the folder in there. Select it.

Select Root File System then Media. Your drive will be one of the folders in there. Select it.

Once you've selected your flash drive, click OK.

Once you’ve selected your flash drive, click OK.

The file source is now added and your ROMs are now easily accessible by OpenELEC/XBMC.

Getting RetroArch working on OpenELEC

Our hero and savoir, zaggash, has written a RetroArch addon for OpenELEC which makes installing all of the emulators a breeze. First thing we need to do is download a copy of the addon and install it on OpenELEC. Go to Zaggash’s site and download build appropriate for your computer.  For instance I use the Generic build. Take that file and put it on the flash drive from the previous step and then plug the flash drive back into your OpenELEC computer. Now we need to install it.

Go back to System, then select Addon Browser. From there select Install from Zip file. Navigate to the source we created in the previous step and install the emulator.retroarch ZIP file.

Now we need to add another file source that points to RetroArch. Go back to System->File Manager->Add Source->Browse. This time select Home Directory->.xbmc->addons->emulator.retroarch->bin. Call the new source Emulator Bin.

Getting ROM Collection Browser working on OpenELEC

ROM Collection Browser is also available as an addon. It gives you a nice menu in XBMC to launch your ROMS from. You can install it via addon manager without doing anything special.

Once installed start the addon. We’ll need to add your ROMs. Here is how I would do it for Game Boy Advance ROMs.

Start ROM Collection Browser. Hit the Menu button on your remote and select Add Rom Collection->Scrape game info and artwork online->Game Boy Advance. Now we need to select where RetroArch is, open your Emulator Bin source and select

Now it will ask you for any arguments RetroArch needs to start. Change it to: vba_next “%ROM%”

Note that vba_next is the core from RetroArch. If you’re adding different game systems the core name will change. See here for a complete list of cores:

Once it is done scrapping the artwork for your games you should be able to launch them with the remote.

Getting a controller to work on OpenELEC

For me, this was the toughest part of the setup. I tried numerous controllers and spent a lot of time banging my head against the wall. In the end I settled on a corded SNES USB controller.

Wireless XBOX 360 controller: An XBOX 360 controller will actually work just by plugging it in, problem is that the drivers included with OpenELEC are not able to control the LED lights on the controller. Where as on an XBOX the lights will go solid in a spot to represent which player you are, on OpenELEC they continue to flash, forever. If you can deal with the flashing its all good. I’ve had thoughts of taking the controller apart and removing the LEDs.

PS3 Dual Shock 3 Sixaxis: I couldn’t get the controller to work either wired or in Bluetooth mode. In both cases the OS detects it as a HID device, but never as a joystick.

Random corded USB controllers: I’ve had good luck with my SNES USB, old Microsoft Sidewinder, and Logitech USB controllers. All of which only needed to be plugged in to work.

Once you’ve made a choice on controllers you have to let RetroArch know about it. You’ll need to SSH into your OpenELEC computer. The login is root and the password is openelec.

Once logged in:

cd .xbmc/addons/emulator.retroarch/bin/

From there follow the prompts to hit the buttons on your controller. If you don’t have a button it asks for, just hit any button. If says anything about not finding a joystick, you’re in trouble.

Once down you’ll get a bunch of lines mapping buttons to action, you’ll want to copy all of this and put it at the bottom of /storage/emulators/retroarch/config/retroarch.cfg

Also at the bottom of your retroarch.cfg file add:

input_enable_hotkey_btn = 6
input_exit_emulator_btn = 7

Replace 6 and 7 with numbers representing the buttons on your controller you want to hit that will exit a ROM you’re playing. On my controller 6 and 7 represent the Select and Start buttons.

… and that’s it. You should now be able to start Rom Collection Browser, find a game with the remote, start it, play it with a controller, then return to XBMC by hitting two buttons on the controller.



I’ve been lucky enough to get my hands on a GCW-Zero. I’ve had it for about two weeks now and have been playing with it just about every night for a hour or so before bed. I have mainly been playing Link’s Awakening DX, but I have spent a fair amount of time with each system I can emulate.

NES via FCEUX: Perfect. Tried a bunch of different games without issue. Made it all the way through Super Mario Bros. 1 without a glitch.
Game Boy/Game Boy Color via GamBattle: Perfect. I tried a couple of other emulators at first, both of which had problems with music or colors. (OhBoy notably)
SNES via Snes9x4d: I get the occasional slow down. It’s about like SNES emulation on a 3DS. SuperFX games do not work well such as Star Fox or Stunt Race FX.
GBA via ReGBA: No issues that I’ve seen. Mario Kart plays very well. I’m almost expecting to find something glitchy, but so far so good.
Playstation/PSX via psx4all: PSx4All is an unofficial port and the only PSX emulator I could find. Every game I tried was very slow and the sound stuttered or was lagged.
Genesis: I’ll confess I’m not much of a Genesis fan and didn’t try it. There are several Genesis emulators available.
Nintendo DS, Nintendo 64: Spec wise the GCW-Zero should be able to emulate these but there are no emulators yet written.

Some Random Notes:

The hardware is nice. It’s cool, in a nerd sort of way, to see Linux boot up on a handheld. The GCW is light and feels good to hold. You can hold it a long time and not get fatigued. The buttons are all easy to reach and have a good feel.

The native  games for the GCW-Zero are neat but nothing to write home about.

The one exception to the above is Kobo Deluxe.

ScummVM has a port but most of the games are pretty laggy. Should be all good once the software gets some optimizations.

Quake 1, 2, 3 and Decent 2 run really well. The control scheme made them unplayable for me though.

Doom is supposed to run well but for the life of me I couldn’t get it to work.

Warcraft 2 runs in DOSBox. It’s a little laggy but I was able to play the first mission without wanting to kill myself.

Adjusting the volume by holding the power button and using the D-pad is weird, but does the job.

By trolling Ebay I got my GCW for a lot less than retail. I’m not sure I would pay $140 for it.

The best comparison to the GCW-Zero are the Android handhelds put out by JXD. In my opinion the GCW-Zero has great hardware and questionable software. The JXD devices have questionable hardware (quality control issues) and great software (Android OS). If I knew for certain the JXD handheld I was buying had no hardware quality issues I would buy a JXD handheld over a GCW-Zero. Problem with JXD is no one knows if you’re going to get a device with a jacked screen, buttons, or who knows what else.

ThinkGeek is a reseller if you’re looking for a reputable seller.

Bottom Line:

If you can find one for less than $100 I would recommend a GCW-Zero. I think in a year the software will catch up and it’ll be an awesome device.

My other thought is that in a year the handheld Android consoles will be a dime a dozen with greatly improved build quality.

5/9/14 Update: With the release of the newest firmware and some updates to the SNES emulators, SuperFX games work pretty well. Stunt Race FX works great!

I have a Nintendo 3dS XL. I wanted to get a DSTWO flash cart to run emulators. While researching what to buy I couldn’t find a straight answer on how well the emulation works, specifically for SNES and GBA. About the one constant I could find was that the DSTWO has a CPU in it to help out with emulation. Most of what I could find beyond that went from one extreme to the other, it was horrible or it was great.

After trying out the DSTWO for about a month this is what I’ve learned.

SNES: Works very well. Games with lots of sprites moving around at one time will slow down a little, Contra 3 for instance. I remember Contra 3 slowing down a bit way back when I was running it on a real SNES though. Games that use the SFX chip are super slow and not playable. I played a Link to the Past, Ogre Battle,  and Super Mario All Stars (+ World) just fine.

Genesis: About the same as the SNES emulation. The Sonics play well.

GBA: Never saw any problems.

NES, Gameboy, and Gameboy Color titles all play well.

Tip #1: If you try to load the DSTWO and you get a ‘No game inserted’, or ‘No game card inserted’ error, take the cart out and press it back in pretty hard. Its not a problem with how you formatted the card or any other some such. It’s a problem with the cart not seating down properly and the pins not making contact. Just give it a good push in.

Tip #2: The SD slot in the DSTWO is spring loaded. You push the SD card in and it clicks when it is seated. You push it in again and it clicks and the card pops out. The bits inside the card that handle the spring and the seating are cheaply made and wear out after a while. This happened after about ten in and outs for me. I’ve read on some forums about it happening sooner and of course some people never have a problem at all. My SD card will push in, but it no longer clicks and sticks. I ended up opening the DSTWO up, removing the spring and taping the SD card down. I suppose I could of (and should of) sent the card back for an exchange, but I didn’t want to be without it for that long.