From GameBrew

Last Updated2006/08/03
LicenseGNU GPLv2

PSPVBA is a port on PSP of the VisualBoyAdvance v1.7.2, an emulator for GameBoy Advance handheld console.


Unzip the ZIP file, and copy the folder pspvba to ms0:/PSP/GAME/.

Put your rom image files on the roms sub-directory.

User guide

Load GBA Rom files (ZIP, ROM, GBA, BIN)

Put your rom file (with .zip, .rom, .gba, or .bin file extension) on your PSP Memory Stick in the roms directory.

Use the file selector in the the emulator main menu to choose one rom file to load in your emulator. Back to the emulator window, the rom should stard automatically.

Load Key Mapping files

The default keyboard mapping between PSP Keys and GBA keys, is not suitable for some games, and you can write your own mapping file to overcome the issue.

Edit a file with the .kbd extension (with any text editors) and put it in the kbd directory. Samples can be found in the default.kbd.

The keyboard mapping file can be loaded using the main menu inside the emulator. If the keyboard filename is the same as the rom filename, the corresponding keyboard file is automatically loaded (when you load the rom).

Use the Keyboard menu and further edit, load and save your keyboard mapping files inside the emulator.

The Save option save the KBD file in the kbd directory using the Game Name as filename. The game name is displayed on the right corner in the emulator menu.

GBA BIOS support

If you want to use a GBA bios dump file, then put the file GBA.BIOS in the PSPVBA directory.

Then enter in the emulator and select the settings menu. You can enable the bios file support, and the new settings will be saved. You will need to restart the emulator, and it will load the bios file on startup.

Note: Save slot/states are done with the bios file option set to on (at save time), can't be read when the bios file feature is reset to off (same when the bios file option is set to off etc).


GBA emulator window:

Cross - A

Circle - B

D-Pad - Up/Down/Left/Right

L - L-Trigger

R - R-Trigger

Start/Triangle - Start

Square - Select

Select - Menu

Analog - Disabled (can be toggled with D-pad)

Start+L+R - Exit and return to eloader

Select - Enter in emulator main menu

Main menu:

R - Reset the GBA console

Triangle - Go Up directory

Cross/Circle - Valid

Square - Go Back to the emulator window




Developed for Firmware 1.5 and 2.1+.



  • Improve the code of the graphic stuff (up to 3% faster).
  • Improve the code of the ARM emulator (faster).
  • Add BIOS file support (see the README).
  • Add option to adjust the sound quality.
  • Add option to delete files (in the file selector).
  • Bug fix in the save settings code.
  • Merge the code for 1.5FW and 2.xFW.


  • Rewrite partially the code of the graphic stuff (many parts of the code weren't optimized at all).
  • Rewrite partially the code of the ARM emulator.
  • Review memory cache strategy.
  • Bug fix and code cleaning.


  • Rewrite some part of the Gfx code (up to 5% faster).
  • Bug fix and code cleaning.


  • New feature to save and load a distinct setting file for each games.
  • Add option to enable/disable the cache with the Graphical Unit.
  • Emulator menus reorganisation (new menu for settings).
  • Bug fix: Emulator menu is now launched on startup.
  • Bug fix: no more freeze when exiting the emulator (but HOME button still doesn't work).
  • Bug fix: bad refresh of the emulator menu/screen.


  • Port sound code to Media engine (faster).
  • GU access improvement (disable cache).
  • Add option to enable/disable GBA battery/flash save.
  • Add new beautiful icons and background designed by Win-Win (Shadow).


  • Sound improvement (22Khz instead of 11Khz).
  • SDL has been replaced by direct GU access.
  • Graphical render is now faster and smoother.


  • Sound improvement.
  • Switch off the sound during screenshot save.
  • The percent of battery left is now displayed in the emulator window.
  • Add a watchdog to automatically return to the emulator menu when the battery is very low (< 5%).
  • Add beautiful icons and background designed by Shadow.
  • Modify the UI to be able to use custom background images (transparency).
  • Sleep mode is now working (but only when you're in the emulator window).


  • Add a screen resize option (Ymin/Ymax) to reduce the size of the screen and then speed up the emulation.
  • Press Start+Select to return to the emulator menu (whatever the key mapping you have set).
  • (re) Add the save battery feature (already available in the original VBA source code).


  • New turbo modes (more speed and less graphic artefacts).
  • Add SFX enable/disable option (can be used to increase speed).
  • Fix in BMP screenshots (no more need to flip the image).
  • Improve a bit the sound quality.
  • The SELECT key is now available for user keyboard mapping (but don't forget to map a PSP KEY to enter in the emulator MENU).
  • File requester use now two directories for keyboard and rom files.
  • Fix the bug that made games like Pokemon Fire to crash.


  • Emulator menu is now directly available on startup.
  • Add ARM tick average change option (can be used to increase speed).
  • Add turbo modes, but it can result in graphic artefacts (turbo modes don't work for all games).
  • The file default.kbd (keyboard mapping) is now loaded on startup.
  • Screenshots are now save in BMP format instead of PNG (less memory consumming, so it should not freeze your PSP).
  • Many bug fix.


  • Always better speed.
  • Add new render modes (scanline).
  • Add FPS/CPU statistics.
  • The Start key is now usable.
  • Sound off increase speed.
  • Many bug fix.
  • Big Code cleaning.


  • Major speed improvements.
  • Better Sound quality (rewritten).
  • Add new render modes (smooth).
  • Zip file support.
  • PNG screenshots (instead of BMP).
  • Many bug fix.
  • Code cleaning.


  • Intial release.




  • Porting on PSP by Ludovic Jacomme (aka zx).

Special Thanks:

  • Win-Win for the icons and background.
  • YoyoFR to provide the source code of the Snes emulator (Media Engine).

External links