A PSP is a fun handheld. Compared to it’s rival the Nintendo DS, its more powerful, the games look better, and they are arguably more adult orientated.

As a long time PSP owner here is my impression of its emulation quality.

NES: Great
Gameboy: Great
Gameboy Advance: Good
Genesis: Poor. Lots of slowdowns. Sound is laggy or doesn’t sound right.
SNES: Poor. Lots of slowdowns. Sound is laggy or doesn’t sound right.
N64: Nope
Playstation/PSX: Great, if not close to perfect. The PSX emulator on the PSP was written by Sony. The quality is outstanding.
NDS: Nope
GameCube and above: Nope

I see a lot of recommendations online to use a PSP as a cheap SNES emulator handheld. Don’t fall for that. The SNES emulation is bad. It’s so bad I don’t even keep the emulators or ROMs on my PSP. I have never played through a game. I couldn’t even make it through the first level of Contra 3 because the sound of my gun was so high pitched it was annoying me.

If you want to play some PSP or PSX games, definitely get it. You’ll never go wrong playing a game on the original hardware it was designed for. PSX emulation is great, in my opinion it’s better than the PC emulators.

The biggest downside to a PSP is the battery. Batteries don’t age well and the PSP is getting old. Official replacement batteries from Sony don’t exist. Aftermarket batteries are horror stories (check out some Amazon reviews). Most people either stay plugged in all of the time or use an external battery like you would use to charge your phone in an emergency. I read an article of one guy who removed the UMD drive and soldered in two NDS batteries in their place. I’m lucky enough that my battery is in good shape, but when the time comes for a new one I’m a bit worried.

 

The Amazon Fire TV can run NES, SNES, and GBA games. You can even use the included remote, though the game controller works much better.

I made up a package with a batch script that makes it pretty easy.

MyTechJam took it a big step further and made a video tutorial.

 

Here is how to play NES, SNES, and GBA games on your Amazon Fire TV.

Note: This does not require you to root your Fire TV. You will not lose access to the Amazon interface. Nothing will be removed or change. If in doubt look over the package you download and definitely look over all of the .bat files.

Enable USB Debugging and Find out the IP address of your Fire TV

This steps turns on the features that allow you to remotely install software on your Fire TV.

  1. From the Fire TV Home screen, select Settings
  2. Go to System -> Developer Options
  3. Select ADB Debugging to turn it ON
  4. Go to System -> About -> Network, and take note of the Fire TV’s IP address

(Thanks XBMC Wiki)

Download and Extract my Installer Package

Amazon Fire TV Emulator Package: Download

Once you have it downloaded, unzip it.

Install Emulators and Send Your ROMs to the Amazon Fire TV

Installing the emulators:

  1. Double click on INSTALL-EMULATORS.bat (in the installer package)
  2. When prompted, enter the IP of your Fire TV
  3. You should see the emulators install with a ‘Success’ message

Copying the ROMS:

There are folders for ROMs for each system in the installer package. Copy your ROMs into the folder appropriate for them. If your ROMs are zipped, unzip them. Make sure the NES ROMs have a .nes extension, SNES .smc, and GBA .gba.

To play GBA games you’ll need a GBA bios file. Put it in the ROMS-GBA folder.

Once you have everything in the appropriate folders, double click on INSTALL-ROMS.bat. When prompted, enter the IP of your Fire TV. You should see everything copy over.

If at some point in the future you want to add more ROMs to your Fire TV, just add them into the appropriate folder and double click on INSTALL-ROMS.bat again.

Launch Emulators and Configure 

You should now have your emulators and ROMs installed on the Fire TV. Unfortunately side loaded applications do not appear in the Home screen, you have to launch them via the Settings menu.

  1. From the Fire TV Home screen, select Settings
  2. Select Applications
  3. Find and select the emulator you want. (Nesoid, Snesoid, GameBoid)
  4. Select Launch Application

You will want to go into the settings for the emulator and map the buttons for the remote (or your controller) to the game buttons.

Where to go From Here?

If you’re only using the remote that came with the Fire TV you’ll want to get a real controller. The remote works OK for RPGs and games that don’t require twitchy actions. Amazon sells a very good controller made for the Fire TV. XBOX 360 and PS3 controllers work well too.

The emulators I’ve included are not the best out there. There are some really good commercial Android emulators out there, installing and using them makes for a better experience.

What Exactly does the Installer Package do?

The general idea is that it side loads the emulator’s apk files via winadb. The installer package (if you can call it that) contains a apks for the emulators, winadb, and a couple of .bat files. The .bat files launch winadb with the appropriate commands to connect to the Fire TV and install the emulators. You can easily modify the .bat files to allow you to install other emulators.

I’m fortunate enough to own a Nintendo 3DS, GCW Zero, and a Samsung Galaxy S3 Android smart phone. At one time or another I’ve used all three to emulate classic game consoles and play games. How do they compare to each other?

Hardware:

Out of the box the GCW Zero is ready to go. The Nintendo 3DS requires you to buy a $40 DSTWO flash cartridge. The S3 needs a Game Klip and a PS3 controller.

The 3DS has the biggest screen. It also has two screen, this is important for playing DS games.

The GCW Zero is the easiest to pocket. The 3DS is just a bit too big for a pocket, it does well in a backpack. The S3 by itself fits easily into a pocket, the Game Klip and PS3 controller not so much.

The S3 with a PS3 controller has the best controls of the bunch.

The GCW Zero has the best battery life, about eight hours for me. The 3DS around four and the S3 2-3. It’s difficult to judge the S3 since its hard to use it for nothing else than playing a game for 3+ hours.

NES, Gameboy, and Gameboy Color games: All three devices play these games equally well.

Super Nintendo and Genesis Games: GCW Zero and S3 can emulate these darn near perfectly. The GCW Zero has trouble with SuperFX games such as Star Fox. The 3DS has trouble running graphically intense games at full speed. It works well for RPGs or other games where fast responses are not needed.

Nintendo 64 and Playstation Games:  The S3 is the only one that can emulate these. It does pretty well.

Gameboy Advance Games: All three devices can emulate Gameboy Advance with near perfection.

Nintendo DS Games: The GCW Zero cannot emulate DS and even if it did it doesn’t have a touch screen. The S3 can emulate the DS very well, though its screen will be split into two in order to emulate the DS’ two screens. The 3DS can run DS games natively and perfectly.

Other Consoles: None of the three devices have fast enough hardware to emulate consoles beyond the Nintendo 64/Playstation era. The 3DS can natively play 3DS games though. Consoles older than the NES run well on all three.

What about native games? The S3 has the entire Google Play Store to pick from. The 3DS has the library of 3DS and DS games. The GCW has some not so great Linux games.

Using it for things other than games: Hands down the S3. Being a smart phone its all good. The 3DS has a limited web browser and can watch Youtube. The GCW just plays games.

Which one of the three do I use the most? I use my Nintendo 3DS the most. The screen size, battery life, controls, DS and 3DS game support make it my favorite of the bunch. Its the one I take if I’m going on a trip. The 16bit console support is a bummer but the 3DS and DS support more than make up for it.

 

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 retroarch.sh.

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: http://sourceforge.net/p/zaggxbmcaddons/wiki/Core%20List/

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/
./retroarch-joyconfig

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.

 

GCW-Zero

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!

Galaxy S3 with Game Klip

I like playing old games. I missed out on the NDS, Game Boy Color, GBA, and the butt end of the SNES and Genesis. Playing games from those consoles is actually something new for me.

I’ve known about old console emulation on Android phones for a long time. I had an original Droid phone that ran NES games alright. Having to use the touch screen as a controller though makes playing the games frustrating. I’ve played around a bit with using a Wiimote as a controller but then you have to prop up the phone somehow so you can have both hands free to hold the controller, no fun either.

Jump cut to the GameKlip. The GameKlip is a bracket that fits around a PS3 Dual Shock 3 controller and attaches to your Android phone or tablet. You get a real controller to use with your games and you don’t have to try to balance your phone on your lap. The GameKlip is a great idea and I can’t say enough good things about it.

I currently have a Samsung Galaxy S3 running the stock android ROM that came with it. I have attempted to use other ROMs such at CyanogenMod and Slim Bean but they would cause the game emulators to crash after a bit of play. Very cause and effect. Flawless under the stock ROM, reboot into CyanogenMod, load the same quick save up, play for a few minutes, emulator locks up. Bummer.

How well does the Galaxy S3 emulate the different consoles?

PSX: Great! Surprising considering how other emulators perform. Using RetroArch.

N64: It’s hit and miss. Some games wont even load. Speed can be an issue. Mario Kart is sort of playable. Slower paced games like Ogre Battle work ok. I’m currently using MuPen64 Plus AE. I’ve tried several other emulators and its the best all things considered. If you mix and match emulators most anything will at least load. Playability not so much.

SNES: It works well. There can be slow downs in spots with lots of sprites moving around (Contra 3), but nothing that ruins it for you. I’m using SNES9x EX+

Genesis: The same as the SNES.

NDS: Works great. Trying to show both of the DS screens at once on the little S3 screen just makes me wish I had an Android tablet to run the emulators on. Using DrasStic.

GBA: Perfect. No complaints at all. I’m using My Boy!.

GBC/Gameboy: Perfect. I’m using GBC.emu.

NES: Perfect. I’m using John NES Lite.

What about sound lag?

I’ve read a lot about Android emulators having bad sound lag. For instance, you grab a coin in Mario and you don’t hear the sound for it until a second later. Judging from the amount of reports on the Internet I’ve seen it must be a real problem. I already had an Android phone and most of the emulators have free to try versions. I didn’t have any risk involved in trying it out. If I had to buy a phone (or even one of the Android handheld consoles or a tablet) and then hope that emulation works, I wouldn’t have done it. That’s how worrisome all of the lag reports are.

Luckily though I have not had any problems with sound lag in my setup. Is it just my phone? Maybe my combination of emulators, ROM, and Android version is good? Dunno. It just works right for me as is.

What about RetroArch?

Why use all of these other emulators? RetroArch is free and emulates every system!

RetroArch is a good concept. All of the emulators in one place, no questions about licenses, and free. Good times.

RetroArch is hit or miss though. For instance, PSX emulation under it is near perfect. GBC emulation suffers from horrible slow downs and choppy sound. Considering the specs of the two systems you would expect the opposite problem. Using different emulators tailored to a specific system works well for me.  I may have spent $15 total for all of them, but I get a lot of value back in return.

 

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.