PCE.emu is a PC Engine/TurboGrafx-16 emulator written in C++ for Android, iOS, Linux, WebOS and PS3. It uses the emulation backend from Mednafen and is built on top of the Imagine engine. The source is released under the GPLv3 license.

Get it for your platform on the Downloads page and view any platform-specific notes


    • Accurate emulation and high compatibility rate (Note: Data swapped TG16 roms are not supported, see known issues below for a fix if you're getting a black screen on load)

    • Backup memory and save state support, auto-save and ten manual slots for save states

    • Supports ROM-based games in .pce and .sgx formats, optionally in .zip files

    • CD emulation via loading CUE or TOC+BIN files (select a system card rom in the options, for versions <= 1.3.0: place syscard.pce in same directory as CUE file)

    • CUE files support external audio tracks in Ogg Vorbis & Wav (PCM, ADPCM, etc) formats

Performance Notes (as of version 1.3.0):

    • Android : 55-60fps with hucards on a 550Mhz Droid running Android 2.2. On-screen controller can cause a small speed hit so disable it when not in use, will be optimized in the future.

    • iOS: 60fps on iPhone 4 with hucards & CDs (~50% cpu utilization). 20-30fps on iPod Touch 2nd gen.

    • WebOS : 60fps on Palm Pre with hucards & CDs.

    • PS3: 60fps with hucards & CDs.

About Save Games:

    • A standard .sav file is created for games using internal battery backup memory

    • Save states are named .ncq for the auto-save slot, and .ncX where X is the slot number for manual saves.

PCE-specific Options:

    • Arcade Card: enable to properly run Arcade CD games, disable to save some memory

    • 6-button Support: enable with games such as Street Fighter II to use all 6 buttons, must be disabled for other games to avoid incorrect inputs

Currently known issues/bugs affecting all platforms:

    • Data swapped TG16 roms cause a black screen or other errors. These are technically bad dumps and are not supported. For a quick fix, open them using Ootake and save a fixed rom when prompted.

    • Not really a bug, but when running on a case-sensitive file system like iOS uses, make sure your CUE file specifies references in the same case as on the file system.