NINTENDO NES/FAMICOM EMULATOR CORE
FCEUmm
FCEUmm is a libretro core that ports the FCEU-mm (FCE Ultra, mappers modified) lineage into the libretro/RetroArch ecosystem to run NES / Famicom / Famicom Disk System / Dendy and VS. System content.

WHY IT MATTERS
Why pick FCEUmm?
FCEUmm targets broad cartridge and mapper compatibility by incorporating many extra and obscure mappers from the FCEU-mm line. As a libretro core it integrates with RetroArch features (save states, rewinding, core options, netplay) while providing specific NES/Famicom features such as FDS support, custom palettes, and multitap handling.
BEST FOR
Where FCEUmm is strongest
Compatibility with odd/unlicensed mappers and broad format support (.nes, .fds, .unif/.unf). The core exposes a large set of NES-specific core options (palette selection, region forcing, peripheral/device emulation) and respects RetroArch frontend features (saves, states, screenshots, netplay).
The people behind FCEUmm
History and lineage
FCEUmm is derived from the FCE Ultra family (the FCEU-mm “mappers modified” branch) — an unofficial FCEU build by CaH4e3 that focused on adding many additional mappers (including uncommon and unlicensed boards). The libretro port (libretro-fceumm) brings that mapper-focused code into the libretro core model so it can be used inside RetroArch and other libretro frontends. The broader FCEU/FCE Ultra family also fed into the FCEUX project; FCEU-mm is one of the notable historical forks referenced in FCEUX histories.
What FCEUmm supports
- RetroArch / libretro frontends
- Windows (via RetroArch builds or custom core builds)
- Linux (x86, ARM via RetroArch / distro packages)
- macOS (via RetroArch builds)
- Android (via RetroArch builds)
- Single-board computers (Raspberry Pi, other ARM targets supported by RetroArch builds)
Download and availability
OFFICIAL DOWNLOADS
Get FCEUmm
Obtain FCEUmm as a libretro core through RetroArch's Online Updater (Core Updater) or by downloading/building the libretro-fceumm repository. Place optional firmware/BIOS files in your frontend's system directory as required (see BIOS section).
Get FCEUmm ↗DOCUMENTATION
Official documentation
Read the official configuration, compatibility, and troubleshooting material before changing advanced options.
Read official documentation ↗FCEUmm setup guide
Setup note: Quick setup options: use RetroArch's Online Updater to install the core automatically (recommended), or build/download the libretro core binary and place it in your frontend's cores folder. If you plan to run Famicom Disk System (FDS) images, add the FDS BIOS file to the frontend's system directory.
- 1) Install via RetroArch (recommended): Open RetroArch, go to Online Updater → Core Updater, find and download 'FCEUmm'. After download, load a supported ROM and RetroArch will use the FCEUmm core. RetroArch manages core placement and configuration automatically.
- 2) Manual core download or distribution packages: If you have a distribution or device that packages libretro cores (RetroPie, Batocera, GarlicOS, custom builds), use that platform's package manager or core list to install lr-fceumm. These packages typically use the libretro build artifacts and place cores where the frontend expects them.
- 3) Build from source (advanced): Clone the libretro-fceumm repository and build following the libretro core compilation instructions for your platform. Typical steps: clone https://github.com/libretro/libretro-fceumm, ensure your build environment matches the target (gcc/clang, make, libretro build settings or RetroArch toolchain), then run the provided Makefile.libretro or CI-supplied build steps to produce a libretro core (.so/.dll/.dylib). Place the resulting core in RetroArch's cores directory and refresh cores.
- 4) Place required firmware files: Famicom Disk System (FDS) images require a disksys.rom BIOS file (8 KB). Place disksys.rom in your RetroArch or frontend 'system' directory. For Game Genie support enable the core option and place gamegenie.nes in the system directory. Custom NES palettes can be provided as nes.pal in the system directory.
- 5) File formats and loading: FCEUmm supports .nes (iNES/NES 2.0), .fds (Famicom Disk System), and UNIF (.unf/.unif). Load ROM images using your frontend's 'Load Content' / 'Load ROM' flow and pick the FCEUmm core if the frontend doesn't auto-select it.
- 6) Configure core options for best results: Use the core options menu to set Region (Auto/NTSC/PAL/Dendy), Color Palette (many presets or custom), and Zapper mode for lightgun input. Set RetroArch's Video aspect ratio to 'Core provided' to respect the core's preferred aspect. For multitap or special peripherals select the appropriate 'User 5 Device type' if required by a game.
- 7) Troubleshooting and compatibility notes: If a particular game shows graphical glitches try alternative NES cores (Mesen, Nestopia) to compare behavior. Ensure your frontend's core is up to date; some issues reported in community forums relate to specific builds. For FDS content confirm disksys.rom is present and correctly named in your system directory.
Software reminder: FCEUmm as distributed with RetroArch does not include commercial game ROMs, FDS BIOS, or Game Genie ROMs. You must supply any copyrighted firmware or game images you own. Use only legally obtained ROMs and firmware.
Sources and further reading
Detailed guides and tutorials
Explore step-by-step guides for FCEUmm as they are published.
Use FCEUmm on Android
An Android ARM64 Libretro build exists for FCEUmm. Run the core through RetroArch for Android; the standalone desktop download and Android core may have different menus and features.
Emulates: NES.
Verified Android core build ↗ · Browse all Android emulators →
Retro Replay Retro Gaming History, Reviews & Emulation