Sunday, 18 September 2011

Playstation 1 Emulator on Android Tablet

Recently I got my tablet (Motorola Xoom) playing old Playstation 1 games, using my PS3 controller as an input device. Please do not underestimate how happy I was to see Final Fantasy VII up and running!

In this post, I'll detail the steps needed to get an emulator installed, how to download the games and how to convert the games into a suitable format and what you'll need to use your PS3 controller as input device should you desire such a thing. The emulator has a small cost (currently it is £2.61 or $4.10)

Be warned, it isn't all that straight forward so a certain amount of geekery is recommended! If you have any problems, just ask in the comments section.

Also, be warned, emulators and the games you play on emulators (called ROMs) can be a bit of a grey area, legally speaking. My best understanding is that you have the best shot at staying legal if you own the console you are emulating and own the games that are being emulated. I'm no lawyer by any means, so seek your own legal advice and conscience before diving straight in.

Get Android
First step, you're going to want to get yourself an Android device. If you are here already, it is probably safe to assume you have one. I don't think you can do this yet on an iPad 2 without jailbreaking, so Android fans you should prepare for Apple fans telling you they have no need for this (yet, until they can do it on their devices and then claim they were first to do it). My device of choice is my Xoom, running Honeycomb 3.2. Honeycomb 3.1 brought in support for Open Accessory and USB host APIs, meaning you can use the PS3 controller to control input. You need a separate accessory for this, but that is detailed later in the post. As for Gingerbread or Froyo users, I can't comment on the success of this.

Get Emulator
OK, cool, you have Android. I can hopefully assume you already have a certain amount of geekery. You are now going to need a Playstation emulator. Here is where I may lose a few of you guys' interest: the emulator costs money. Not a lot. Currently the FPse for Android app costs £2.61 from the Android Market. (Link here) Now I know for Android users who are used to everything being free, that might be offputting, but stop for a second and think what that buys you: access to nearly every Playstation 1 title, available to play, on the move. Bargain in my books.

I should point out a few things here.

  1. I have no affiliation with the app, I didn't make it and don't get paid for recommending it. It just works for me. 
  2. Other emulators do exist. I tried one, psx4droid but wasn't impressed.

Get Playstation BIOS
The emulator requires the BIOS for the Playstation in order to function. You might ask why the emulator doesn't come with it already, but I'm pretty sure that is for legal reasons. The file you need is called SCPH1001.bin and is about 512KB. I got my file from here, but if that doesn't work, you'll need to Google the file name and find it that way.

Once you have downloaded this file, you'll need to move the bin file across to the device. Copy the file across using your preferred technique (USB cable, Dropbox, email etc...) and copy it to a folder you'll remember.

Configure Emulator
This is an easy step, don't worry. All you have to do is open FPse, and tell it where you put the bin file. Use the menu key to access the Settings menu. Choose "System" and select the first option. It will require you to locate the bin file. Once you have done this, scroll all the way to the bottom of the screen and select "Default config save" to save this configuration. Additionally, you might want to enable "Spu Sync". This will increase the quality of the audio but might slow the game down. Certain games require Spu Sync however, else the sound is non-existent or dreadful (Final Fantasy VII is one such example). Spu Sync can be enabled from the settings menu again, this time click on "Audio" and enable Spu Sync by checking the box.

Get Games
As I mentioned, a game for an emulator is called a ROM file. There are plenty of websites out there offering ROM files for you to download for free. I have no preference on ROM sites so won't recommend one; instead, Google for "Playstation ROM xx" where xx is the game you want. When you download them, they will typically have a filetype of ecm (or sometimes bin.ecm). For some reason, this won't work directly as is on the tablet. You must convert the file from ecm to bin format (no, you can't just rename it!). To do this, you either need a special tool you use on the PC, or an app you can use directly on Android. As the latter costs money and has mixed reviews, I stick to the PC tool. If you are interested in paying a little extra for the app, it is called un-ECM for Droid (£0.61 currently) and you can get the app from here.

Get Converter
You need to use a tool for converting from ecm files to bin files. Such a tool exists here, and is the one I use and will be describing shortly. Should this site ever stop hosting the files, get in touch with me as I will hanging onto the tool in case such a thing happens. What you are downloading is simply a command line tool, this means you need to run it from the command window (DOS-box). Download the tool and put it somewhere memorable (the desktop perhaps).

Convert Game
OK, so you have your ROM file, in ecm format. You have your converter tools. What you want to do now is copy the ROM into the same folder as your converter tools - this is the folder which contains ecm.exe, unecm.exe amongst a whole load of other files.. Once you have done this, open a command window and navigate into the folder. Type the following command, where x is the name of your ROM file:

unecm x.ecm x.bin

This should then start converting the ecm file into a bin file. Once this is completed, copy the bin across to your device (USB cable recommended as PSX games can be around 500MB) and put it into a folder of your choosing. I would recommend having a separate folder for each device type (ie, a folder for PSX, a folder for N64 etc... but hey, you're a big boy/girl, you decide).

Load Game
That's it. You're almost there! Phew. Simply load up FPse on your Android, and it should prompt you to "select ISO to load..." and allow you to navigate around and find your file. Once you have chosen your file, the game should launch.

PS3 Controller
This step is purely optional, as the games can be played well enough typically using the on-screen keys. However, I do enjoy using the familiar PS3 controller as that is pretty close to the controller I used back in the day on the original Playstation console. To use the PS3 controller, if you have Honeycomb, you need to have at least 3.1 installed. I don't know if you can use it on Froyo or Gingerbread. You will also need a special adapter, typically called a USB-OTG cable. I have included a link to such an item in this Amazon link. Why use this link? Well because you'll know it's the right item, and if you buy from it, I'll receive a penny. I'm not being modest, the Amazon referral scheme doesn't pay well!

Actual look may vary; but this is roughly what you are after

It is essentially Micro-USB at one end, to plug into the tablet. And a full size (but female) USB port at the other end, so that you can insert USB devices. The USB device in this case, would be the cable you use to charge your PS3 controller.

Once you have this device, and plug it in, there isn't much setup needing done. You can customise the buttons for the emulator if you want but I haven't done this yet.

Play Games
That's it folks! Go play some excellent old games on your tablet and make non-tablet owners jealous.

If you stumbled upon this page and found any of it useful, let me know in the comments section.