Download Latest Version piFBA.zip (22.7 MB)
Email in envelope

Get an email when there's a new version of PiFBA

Home
Name Modified Size InfoDownloads / Week
readme.md 2015-03-21 7.8 kB
piFBA.zip 2015-03-21 22.7 MB
Totals: 2 Items   22.7 MB 1

Final Burn Alpha 2x for Raspberry Pi by Squid

INTRODUCTION

PiFBA is Final Burn Alpha 2x for the Raspberry Pi ported by Squid. This emulates old arcade games using MAME based roms for CPS1, CPS2, Neogeo, Toaplan and many other games. It should support most recent versions of the MAME versions of these ROMS but unfortnately there is no definitive version to use. A full list of supported games is in the frontend program.

Some large ROMS may require converting to the '.fba' format before they will work. FBACache_windows.zip is included to do this, which runs on Windows not Linux.

A clrmamepro/romcenter DAT file is included 'fba_029671_clrmame_dat.zip' which supports most of the ROMS that work and can generate compatible ROMS from recent versions of MAME.

A number of games will not work properly, some are so large they appear to run out of memory.

It uses a modified version of the Capex frontend for game selection but you can use your own frontend and simply call the "fba2x" to play the games.

This port supports keyboard and USB joystick input and are configurable. It uses GLES2 graphics API and can run in the Console or under X-Windows. The audio uses the ALSA API and SDL is used for input. It uses a Cyclone 68000 core for performance and a MAME z80 core for compatibility.

Web page for downloads, news, source, additional information: https://sourceforge.net/projects/pifba

(No asking for ROMS or any issues with ROMS)

CONTROLS

  • 'up arrow' Up direction
  • 'down arrow' Down direction
  • 'left arrow' Left direction
  • 'right arrow' Right direction
  • 'control' Button 1 (starts a game in the frontend)
  • 'alt' Button 2
  • 'space' Button 3
  • 'shift' Button 4
  • 'z' Button 5
  • 'x' Button 6
  • 'return' Start button (starts a game)
  • 'tab' Select button (opens config menu in the frontend)
  • 'escape' Quit
  • 'L+R+SELECT' Service Mode

Additionally to quit with the joystick you can press SELECT+START.

The joystick layout defaults to XBMX 360 button layout.

All controls are configurable by editing the "fba2x.cfg" file. If your joystick uses axis different than 0 and 1 you can change this in the fbax2.cfg file.

The frontend displays the list of ROMS in the following colours:

  • RED = missing
  • ORANGE = clone rom detected
  • YELLOW = parent rom detected or clone rom detected & parent rom detected
  • GREEN = clone rom detected & parent rom detected

INSTALLATION

fba2x       -> Game binary
fbacapex    -> Frontend binary
fba2x.cfg   -> Keyboard and joystick configuration
rominfo.fba -> required by the frontend
zipname.fba -> required by the frontend
preview/    -> screenshots (BMP 384x224)
roms/       -> ROMs directory (Put your game ROMs in here)
skin/       -> Frontend skins directory
FBACache_windows.zip -> for converting large ROMS to .fba cache format
fba_029671_clrmame_dat.zip -> clrmamepro DAT file for ROM validation and conversion.

To run piFBA simple run the "fbacapex" executable. At the command line "./fbacapex". This runs the GUI frontend. To simply run piFBA without the GUI enter "./fba2x roms/{gamerom}" where "{gamerom}" is the game rom filename to run. A number of options are available for "fba2x", enter "./fba2x" on the command line for a list.

For the frontend screenshots you need to put the relevant screenshot files in the preview subdirectory. These files should be BMP and 384x224 (non-compressed BMP) dimensions.

An output file called "output.log" is generated for each game which may show useful information for problem ROMS.

Pi CONFIGURATION

I highly recommend overclocking your Raspberry Pi to gain maximum performance as PiFBA is very CPU intensive and overclocking will make most games run at full speed. The Pi 2 does not need overclocking.

My overclocking settings which work well, (/boot/config.txt):

arm_freq=900
sdram_freq=500

NOTE: Make sure overclocking is actually working by checking "cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor" should be "ondemand". Later kernels appear to set it to "powersave" by default.

If your sound is too quiet then do the following to fix that:

  • First get the playback device, type "amixer controls"
  • This will show the numid for the playback device, probably 3.
  • Now set the volume, type "amixer cset numid=3 90%".
  • Then reboot to make it permanent.

If you're having problems with HDMI audio then it is likely PulseAudio is causing the issues as it has problems with the ALSA drivers. To fix this simply remove PulseAudio:

  • sudo apt-get --purge remove pulseaudio
  • sudo apt-get autoremove

If you're getting a black screen when running in Console mode with Composite output, try removing/commenting out the "overscan_" parameters from "/boot/config.txt" as follows (using disable_overscan doesn't appear to fix it):

#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

GRAPHICS EFFECTS

fba2x.cfg settings:

DisplaySmoothStretch - Disable anti-aliasing smoothing.
DisplayEffect - Postprocessing scanline filter.  For the scanlines filter it is recommended you switch off "DisplaySmoothStretch".
DisplayAutoRotate - For vertical games auto rotate the display.
MaintainAspectRatio - Keep the original game display ratio or fill the screen.

PORT CREDITS

  • Ported to and optimised for the Raspberry Pi by Squid (aka Pudding on the Pi forums)

ORIGINAL CREDITS

CHANGE LOG

March 2013:

  • DPAD/HAT support fixed.
  • Added 4 player joystick support.
  • Screen rotation option for vertical games.

October 2013:

  • Added DPAD (HAT) controls support for joysticks.

September 2013:

  • Joystick SELECT+START now quits the frontend. Joystick SELECT now opens the menu and START will start a game.
  • 2nd player controls now configurable for joystick and keyboard.

August 11, 2013:

  • Fixed keyboard not working when no joysticks attached

August 7, 2013:

  • Fixed sound in some games, e.g. pang3, forgottn
  • All sound now rendered in stereo (mono uses both channels)

August 5, 2013:

  • Added two player joystick support
  • Fixed frontend neverending quit with joysticks

July 30, 2013:

  • Higher resolution frontend

July 24, 2013:

  • Fixed some games
  • Added more Taito games
  • Added "MaintainAspectRatio" option to allow filled screen

July 21, 2013:

  • Initial release.
Source: readme.md, updated 2015-03-21