RELEASE pFBA: final burn alpha

Discussion in 'Switch - Emulation, Homebrew & Software Projects' started by cpasjuste, Feb 21, 2018.

  1. cpasjuste

    cpasjuste GBAtemp Advanced Fan

    Aug 27, 2015

    pFBA is a fork of FBA, an arcade and consoles emulator which run neogeo, cps1, cps2, cps3... arcade roms and megadrive, master system, game gear, pc engine.... consoles roms.


    You can also run console games (megadrive, pc engine...).
    You can find some information in the ps vita thread :
    You can also find some information and source code here :

    Download pfba releases on github :

    • devkitPro and libnx people: yellows8, plutoo, fincs, subv, armada, profi200, WntrMute ....
    • fba main author: barry...
    • ScHlAuChi for providing a 3.0 Switch! (you rock mate)

    pFBA 2.0:

    • use OpenGL for rendering, which allow some nicer ui effects, and of course, more power (thanks armada, fincs, subv... for theire work on mesa/nouveau)
    • point filtering can now be used in any rendering size
    • add a few libretro shaders (retro-v2, scanlines, pixellate, crt easymode, crt geom, sharp bilinear, sharp bilinear scanlines, sabr v3, xbrz, supereagle). Note that some shader will work better in integer scaling (2x, 3x), and some will have a better effect with linear filtering (sharp bilinear). Also, some are very intensive (crt geom, sabr, xbrz) and may not work fullspeed in some emulators (pSNES).
    • add fps counter option
    pFBA 1.58:
    • try to fix docked mode (untested, thanks m4xw for the tips)
    pFBA 1.57:
    • change ui font
    • change buttons configuration (see readme at
    • add possibility to display icons (32x32 png in the "icons" folder). Can be enabled or disable from pFBA options menu (slow loading time if lot of icons on switch)
    • add titles images support in the "titles" folder (used by default, press L/R to show previews image)
    • fix consoles titles/previews/icons not using consoles prefix
    • fix per rom config applied to all roms
    • fix saves states message box buttons visibility bug
    • switch: fix crash in point scaling + fullscreen (point scaling limited to 1x, 2x and 3x scaling)
    • switch: fix a random crash after multiple rom loading
    • switch: update button icons, add LSTICK/RSTICK icons
    • switch: add single joycon mode: enable SINGLE_JOYCONS in option
    • switch: fix (+) and (-) keys inverted in config menu
    • and more untracked changes... (to enhance the user’s experience...)

    pFBA 1.55:

    • update to FBA
    • update/fix save states and nvram support (you NEED to delete old folders : "config" and "saves" to prevent crashes)
    • remove m68k cyclone asm core support
    • switch: disable single joycon support for now
    • fix console roms, no prefix needed anymore, roms need to be in their respective directories :
      • pfba/megadriv
      • pfba/gamegear
      • pfba/sms
      • pfba/coleco
      • pfba/msx
      • pfba/sg1000
      • pfba/pce
      • pfba/tg16
      • pfba/sgx

    pFBA 1.54:
    • switch: fix audio :)
    • switch: add 4 player support. When joycons are not docked (multiplayer), use "L STICK" button press for start or coin instead (+) or (-)). All players share the same button configuration for now.
    • switch: fix a random crash on exit (hopefully)
    • switch: lower font size
    • switch: use linear filtering as default option (faster)
    • pfba: fix button textures not deleted when changing menu
    • pfba: fix version not correctly handled on some platforms
    • pfba: fix missing rom path slash on new config

    pFBA 1.52:
    • SWITCH; new ui renderer (libcross2d/sdl2), improved texture and font rendering (no more scaling)
    • SWITCH: use bigger font size
    • SWITCH: add proper joystick implementation (joystick was previously interpreted as buttons).
    • SWITCH: add "point filtering", limited to 1x, 2x and 3x scaling. This is slower but may give a better image.
    • SWITCH: add basic/crappy scanline effect
    • SWITCH: fix input rotation (OFF=landscape, ON=landscape, FLIP=portrait)
    • SWITCH: fix random crash on exit? (libnx fix?)
    • VITA: fix wrong input rotation (hopefully)
    • VITA: add sharp-bilinear-simple shader back in
    • PFBA: don't play an audio frame when entering menu/savestates
    • PFBA: reset configuration when updating to a new version (sorry).

    Changelog 1.51:

    • PFBA: some ui adjustment
    • PFBA: fix 4/3 aspect ratio
    • NX: add audio (not perfect, but mostly ok)
    • NX: many fixes and improvements
    • PSP2: lot of ui changes
    • PSP2: fixed shaders (was not properly scaling, linear filter and sharp+scan shader is now perfect)
    • PSP2: many, many changes...

    Changelog 1.50 :

      • DELETE FILE "/switch/pfba/pfba.cfg
      • DELETE FOLDER "/switch/pfba/configs"

    • add hardware scaling and rotation, big improvement in frame-rate.
    • fix scaling and rotation in any mode (horizontal, vertical, flipped)
    • add save state support
    • fix some random crashes
    • fix input change/mapping in configuration menu
    • add input names in configuration menu (textures to come)
    • add joystick support (basic, handled as buttons for now)
    • add rotation information in rom info box
    • add crappy audio support (disabled for now)
    • add fba version in loading screen
    • disabled unused filtering option for now (only linear filtering is available)
    Last edited by cpasjuste, Sep 19, 2018 at 7:44 PM
  2. yardie

    yardie Banned

    Mar 27, 2016
    United States
    good work bro
    looking forward to sound working
    whateverg1012 likes this.
  3. x0x0

    x0x0 GBAtemp Regular

    Nov 15, 2017
    Inside the code
    Damn, no sound yet :D
    anyway good job =]
  4. Kerbangman

    Kerbangman GBAtemp Fan

    Sep 19, 2016
    Outstanding cpasjuste and thanks
  5. ploggy

    ploggy WAKA! WAKA!

    Aug 29, 2007
    United Kingdom
    Every day that goes by makes me want to update to 3.0.0 more and more :) Thanks @cpasjuste
    Does this port of FBA support all the other systems too Snes, Medgadrive, Tg16 etc..?
    lordelan and KiiWii like this.
  6. cpasjuste

    cpasjuste GBAtemp Advanced Fan

    Aug 27, 2015
    Yes it support console (except snes, i don't think fba support this).
    ploggy likes this.
  7. ploggy

    ploggy WAKA! WAKA!

    Aug 29, 2007
    United Kingdom
    Ahh, yes my mistake (probably wishful thinking) :P
    lordelan likes this.
  8. gameboy

    gameboy GBAtemp Advanced Maniac

    Dec 9, 2015
    United States
    more like, final ''burn-in'' alpha
    LaPingas likes this.
  9. yardie
    This message by yardie has been removed from public view by porkiewpyne, Feb 22, 2018, Reason: Rude.
    Feb 21, 2018
  10. Masterwin

    Masterwin GBAtemp Fan

    Jan 7, 2016
    Good Job!!!


    Ghost92 and lordelan like this.
  11. notimp

    notimp GBAtemp Advanced Fan

    Sep 18, 2007
    Here are a few more impressions and hopes.. :)

    First of all the usual tip, if you are new to this FBA port, press - in the menu and select to display "working games only" if you do not want to scroll for a long time.. :)

    Overall its a neat experience as it is right now - the three major current setbacks being

    - no sound (of course ;) )
    - no working button configuration menu in game (if you can, please bump this in the priority list of things to fix - especially as FBA can emulate so many systems - also, if you can and think it would be a good idea, add switch button designations in the mapping menu)
    - no savestates


    What does already work though, and this made me *eek* with joy, is loading a vertical screen orientation game like Galaga, detaching the controllers - so they are in bluetooth mode, turning the screen 90° and start playing your vertical shooters like they were meant to be played. :)

    Of course the digipad is turned 90° as well, which brings us back to the importance of button mapping in game... ;)

    Neogeo Stuff pretty much all works full speed. Garou even is surprsingly playable with the "not a digipad, digipad" - also I never knew how cheap this game was in terms of mechanics (pay to win 1999 style.. ;) ).

    SF3 3rd strike (3x scaling), still lags (drops frames) every now an then but is playable - I noticed though, that the fan would never turn to a semi hearable state - so I hope its not throttling because of certain temperature states.

    Oh, and I also experienced a crash to failure black screen upon exiting the emulator via the new exit option - once. Most times it exited fine.

    Other than that - the menu navigation fix made a huge difference, and boy is this system ramping up to be a winner. ;) Thank you for your work.

    edit: The flickering border in Neogeo (/MVS?) games is now gone as well, but there is still a slight line (frame) left, thats probably not supposed to be there. :) Currently you can press + and - and then resume the game to make it go away.
    Last edited by notimp, Feb 21, 2018
    lordelan, h33t and Masterwin like this.
  12. notimp

    notimp GBAtemp Advanced Fan

    Sep 18, 2007
    Last edited by notimp, Feb 21, 2018
    H1B1Esquire, KiiWii, lordelan and 3 others like this.
  13. Migz

    Migz Advanced Member

    Feb 3, 2008
    Hi cpasjuste, Just tried this out & it is awesome as said above a few tweaks here & there & it will be perfection! Great work! ;)
    Last edited by Migz, Feb 21, 2018
    Tomobobo likes this.
  14. notimp

    notimp GBAtemp Advanced Fan

    Sep 18, 2007
    Default button mappings for Neogeo Games (as of now):

    A = A
    B = B
    Y = D
    X = C
    - = Start
    + = Insert Coin

    How to set ingame difficulty for Neogeo Games:

    Download the MVS/AES Unibios from here:

    Unzip the uni-bios.rom file and rename it to asia-s3.rom
    Overwrite the asia-s3.rom in your (bios) with the renamed uni-bios rom.
    Copy the back to the roms folder.

    Then watch this youtube video from the referenced timecode forward, to get a basic understanding how the unibios works:

    First boot a Neogeo game, then exit it, then boot it again. From now on you can change the games soft dip switch settings, by pressing BYX (all three buttons simultaniously) during the unibios boot screen (From there select the soft dip settings.). This is what the software menu for the Arcade cabinet would have looked like back in the day (see for reference :) ), and in there usually you also can find a difficulty setting for the game. You exit with X and "exit".

    How to use cheats in Neogeo Games:

    Follow the description above to set up unibios. Then in game press "-" and BAX simultaniously. An in game menu will pop up, with the first option being cheats for the game thats currently loaded up. Unibios has quite a solid database for cheats built in, it should work in most games. A to select, B to disable all cheats, X to exit the menu.

    Overall - its a good Idea to use cheats and different difficulty modes sparsely - as it does impact how you will experience the game. Most games you'll be able to get through just fine, with unlimited continues - which pFBA provides out of the box. But on some (SNK ;) ) beat em ups, and especially when you are using the switch in handheld mode - at least lowering the default difficulty might be a thing worth looking into... ;)

    Should you want to/need to reset settings for a specific game - there are individual configurations for each game you played in a config folder on the SD card. Delete a specific games config, and all your changes will be reset.
    Last edited by notimp, Feb 22, 2018
    focusonme, lordelan and mitcha like this.
  15. mitcha

    mitcha GBAtemp Regular

    Dec 20, 2015
    thank's for those information ;-)

    @cpasjuste could it be possible in future to implement 2 things :
    -add 2nd player.
    -playing with the joypad ,it would be great to play on the switch like an arcade cabinet joystick (combat games).
  16. pwsincd

    pwsincd Garage Flower

    GBAtemp Patron
    pwsincd is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Dec 4, 2011
    Manchester UK
    hey great work look forward to sound ,, i have added it to our appstore here : and look forward to seeing this develop.. you can always submit updates on our site if and when you release one .. .
    lordelan and chronoss like this.
  17. EvilG31

    EvilG31 Member

    Dec 31, 2017
    United States
    Any chance you can add filters to your site so we can sort by libtransistor / libnx?

    **NVM... did you make it all libnx homebrew now? :)
  18. notimp

    notimp GBAtemp Advanced Fan

    Sep 18, 2007
    Further feature request (if you get to it). :)

    Control modifiers for "Switch specific play modes".

    - Dont rotate your configured controls in a vertical game (Galaga) by 90° (because you detached the controllers) pFBA already seems to have a modifier active for those kinds of games.

    - Implement a preset for "2 player detatched mini controllers mode" - if it is possible. This depends on how the switch treats detached mini controllers in 2 player mode (does it change the inputs that arrive on the software level - when that mode is set up?) - if possible.

    Arcade games lend themselves especially well to quick two player sessions, so it would be great to have that option.
  19. pwsincd

    pwsincd Garage Flower

    GBAtemp Patron
    pwsincd is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Dec 4, 2011
    Manchester UK
    why would that matter ?
  20. Aftershock

    Aftershock Member

    Jun 15, 2012
    Thank you for the release. I was playing around with the early build a couple of days ago but will upgrade to this.

    A couple of quick questions if you don't mind:

    * To upgrade do we just replace the nro file and leave other files as they are?

    * Can you confirm the rom paths for the console games?

    * Is there a way to recofigure the left anolog sick as the dpad? using the buttons means I die even more that I should :-)
    freevil likes this.
  21. solrac21

    solrac21 Member

    Feb 22, 2018
    United States

    Console roms are added to the same rom folder. I had to rename them to a certain name before they were seen. I added a megadrive game - toejam and named it and it worked. i cant put a link here but its in the OP's PS vita link you are looking for the FB alpha gamelist.txt
    Leonidas87 and Aftershock like this.