Download(s) (archive v0.2)(archive v0.4)
Developer(s) FCE Ultra team
zzhu1982 / Notaz
Version 0.4 r171
Status Released and playable
Webpage [1]

GPFCE is an NES (Nintendo Entertainment System)/Famicom emulator which was ported to GP2x by zzhu8192 and is based on FCE ultra V0.81.

Notaz has greatly improved this emulator and many games work with the GP2x at 135MHz, but some games need 166Mhz.

Source code avaible here.



  • New Picodrive-like menu (as of v0.4).
  • Support of zip files.
  • Support of mono sound at up to 44100 Hz samplerate.
  • Volume bar on the screen.
  • Save States (up to 10 slots).
  • Hardware & Software scaling options available.
  • Supports game saving.
  • 60 FPS without frameskip on most games at 150MHz.
  • Turbo Fire configurable.
  • Support of cheat codes with Game Genie (As in FCEU 0.81).
  • Configurable buttons.
  • 4 USB Joystick support but NES games only support 2 gamepads.
  • TV-Out support.
  • FPS Display.
  • Menu in style.
  • FDS (Famicom Disk System) image support.
  • VS Unisystem support.
  • NSF player.
  • Zapper support.


  1. Unzip the emulator archive onto some directory on your SD card.
  2. 0.4 allows ROMs to be put anywhere. Older versions require to have
    a directory called /roms/nes on your SD card for ROMs (/mnt/sd/roms/nes is the gp2x path).
    Rom files can be zipped.
  3. The emulator will create a subdirectory in it's working directory
    fceultra. Save states etc. go here.
  4. To enter the menu, press both volume buttons or hit L+R+START.
  5. For FDS support, put disksys.rom in <where_you_put_gpfce>/fceultra
  6. For GameGenie support, put gg.rom in <where_you_put_gpfce>/fceultra


From v0.4 the controls can be changed in the menu.

  • In the Explorer of file of the emulator:
Launch ROM.
Previous menu / Return to game
Scroll up one, wraps if at top
Scroll down one, wraps if at bottom
Left / L
Page up
Right / R
Page down

  • In the game:
NES B Turbo (default, but can be configured).
NES A Turbo (default, but can be configured).
NES B (default, but can be configured).
NES A (default, but can be configured).
VOL +/-
Volume control.
L & Joystick
Save state (default).
R & Joystick
Load State (default).
VOL Middle or L + Start
Go to the menu.
  • Zapper and Arkanoid control:
Y / A 
Increases / Decreases the movement speed.
trigger button for the Zapper.
trigger button for the Zapper, but as long as you have it pressed down, no color detection will take place, which is effectively like pulling the trigger while the Zapper is pointed away from the television screen. Note that you must press X for a short time to have the desired effect.
  • For FDS or VSUnisystem:

There's no default control, you have to go to the "controls" "Emulator controls" menu.

Known Issues

  • Some compatibility issues due to original emulator or the ported version. If you see some problems you can report them at gp32x boards.


  • V0.4 rev171 - 21/06/2007:
    • Added optional "Accurate renderer", which is the original FCE Ultra 0.98.x renderer + PPU emulation code. It's much slower, but it can handle games which need more precise PPU timing emulation (like Marble Madness).
    • Fixed saving and loading of game specific configs.
    • Some other minor changes.
  • V0.4 rev162 - 10/06/2007:
    • Fixed savestate subsections (were causing some mapper data not to be saved).
    • Fixed an issue of MapIRQHook getting lost after loading a savestate (glitched Akumajou Densetsu and other games after savestate load).
    • A bug, which prevented configuring multiple USB pads fixed.
    • Fixed sound breaking bug after switching it on/off multiple times.
    • Added "Perfect VSYNC" option, which changes GP2X refresh rate and syncs emu timing to LCD vsync.
    • Fixed IPS patch support.
  • V0.4 rev153 - 03/06/2007:
    • Lots of work on the asm core.
    • Timing fixed for some instructions.
    • Some missing undocumented instruction handlers added.
    • Lots of tweaking to make it compatible with all that mapper code.
    • Completely new PicoDrive style menu added with most standard FCE Ultra and some additional options.
    • Selector removed, ROM list is now built-in and only limited by available memory.
    • Merged in most of code from 0.98.1x versions.
    • Only ppu/rendering and sound emulation code left from 0.81 (which is less accurate but much faster).
    • Default palette changed to one from later versions.
    • Fixed some alignment problems in MMC5 and some other mappers.
    • Some generic optimizations and code cleanup/refactoring.
    • The built-in NSF player fixed.
    • Authentic GameGenie support fixed.
    • FDS support fixed.
    • VS Unisystem support fixed.
    • Ingame saves fixed (not sure when they got broken).
    • Increased maximum sound volume.
    • Added Zapper emulation just for fun.
    • Added partial FCM movie support.
    • Fixed some memory leaks.
    • Fixed a bug which caused USB connection from GP2X menu to hang after using gpfce.
    • Software scaler added.
    • USB gamepad support added.
    • TV out fixed.
    • Documentation updated.
    • Some other stuff I've forgotten about.
Personal tools