Banana Pi / Arch Linux / PSX emulation

Yes, it’s possible to emulate PSX games on the Banana Pi. Although there might be games, where you better use the original console, it seems that the BPi is able to run a lot of games surprisingly good using PCSX-ReARMed.

Software

You can build a PCSX standalone or libretro version which acts as a RetroArch core. Still I recommend using the standalone version, as I have the feeling that is has a better performance. To compile PCSX as a RetroArch core, see the end of this blog post.Make sure you have the packages “sdl” and “sdl_image” installed. Clone the repository and start the configure script:

cd $HOME
git clone https://github.com/notaz/pcsx_rearmed
cd pcsx_rearmed
git submodule init && git submodule update
./configure

You can modify the resulting config.mak file. Remove everything except the “sdl” in SOUND_DRIVERS.

The default directory for the PSX BIOS is ~/bios. If you want to configure it later in your ~/.pcsx/pcsx.cfg, you need to apply following quick-fix:

sed -i '382i \tCE_CONFIG_STR(BiosDir),' frontend/menu.c

We go on with the compilation:

make

You get the PCSX executable which we copy to /usr/local/bin, as there is no “install” rule within the Makefile:

sudo cp pcsx /usr/local/bin/

Now you should be able to run your beloved PSX games by running:

pcsx -cdfile [PSX_IMAGE_FILE]

If you want to uninstall it, it’s enough to just delete /usr/local/bin/pcsx.

Configuration

You need a configuration in ~/.pcsx/pcsx.cfg. Also you should obtain a PSX BIOS (e.g. scph1001.bin) and place it either in ~/bios or if you used my previous mentioned quick-fix in a directory of your choice after configuring BiosDir in pcsx.cfg. For example I placed the BIOS in ~/.pcsx/bios since everything else is also in the ~/.pcsx directory. So my pcsx.cfg starts with:

Bios = scph1001.bin
BiosDir = /home/rel/.pcsx/bios

The rest is easily configured using the options menu from PCSX by pressing the escape key. Don’t forget to save the changes, if you made some.


Final Fantasy IX

Crash Bandicoot

Metal Gear Solid

All games ran surprisingly great using the standalone version of PCSX. In Metal Gear Solid I had some tiny graphical glitches, but it’s still absolutely playable.

RetroArch?

It is also possible to compile PCSX as a RetroArch core. When I tested it, the performance was noticeably worse than with the standalone version. But still you can do it.I assume you have a running RetroArch. If you don’t have a RetroArch installation right now, you could follow my blog post on how to build RetroArch on the Banana Pi.

Clone the repository like shown above, start configure with the –platform=libretro argument and compile:

./configure --platform=libretro
make

You will get a libretro.so in your building directory. Copy it to your other cores:

sudo cp libretro.so /usr/lib/libretro/libretro-pcsx.so

Place your PSX BIOS into the ~/.config/retroarch directory. To run your PSX images through RetroArch, you simply run:

retroarch -L /usr/lib/libretro/libretro-pcsx.so [PSX_IMAGE_FILE]

3 comments:

  1. Everything is working perfect by following your instructions.
    I’m using the standalone version of PCSX.

    Have you got any luck setting it to any other resolution than 640×480? I can’t get it to fullscreen using F11.

Leave a Reply

Your email address will not be published. Required fields are marked *