Skip to content

Nintendo - NES / Famicom (Nestopia UE)

Background

Nestopia is a portable and cycle-accurate NES/Famicom emulator written in C++. Nestopia UE (Undead Edition) is a fork of the original source code, with enhancements from members of the emulation community. This includes support for new platforms, and bug fixes in the emulator core.

Author/License

The Nestopia UE core has been authored by

  • Martin Freij
  • R. Belmont
  • R. Danbrook

The Nestopia UE core is licensed under

A summary of the licenses behind RetroArch and its cores can be found here.

Extensions

Content that can be loaded by the Nestopia UE core have the following file extensions:

  • .nes
  • .fds
  • .unf
  • .unif

Databases

RetroArch database(s) that are associated with the Nestopia UE core:

BIOS

Required or optional firmware files go in the frontend's system directory.

Warning

Prior to Nestopia UE 1.50, it required the NstDatabase.xml file for general proper emulation. In version 1.50 or higher, it's baked into the core.

Filename Description md5sum
disksys.rom Family Computer Disk System BIOS - Required for Famicom Disk System emulation ca30b50f880eb660a320674ed365ef7a

Features

Frontend-level settings or features that the Nestopia UE core respects.

Feature Supported
Restart
Screenshots
Saves
States
Rewind
Netplay
Core Options
RetroAchievements
RetroArch Cheats
Native Cheats
Controls
Remapping
Multi-Mouse
Rumble
Sensors
Camera
Location
Subsystem
Softpatching
Disk Control
Username
Language
Crop Overscan
LEDs

Directories

The Nestopia UE core's internal core name is 'Nestopia'

The Nestopia UE core saves/loads to/from these directories.

Frontend's Save directory

  • 'content-name'.srm (Cartridge battery save)

Frontend's State directory

  • 'content-name'.state# (State)

Frontend's System directory

  • custom.pal (Custom palette file)

Geometry and timing

  • The Nestopia UE core's core provided FPS is (FPS)
  • The Nestopia UE core's core provided sample rate is 44100 Hz
  • The Nestopia UE core's core provided aspect ratio is dependent on the 'Preferred aspect ratio' core option.

NstDatabase.xml

The Nestopia UE core relies on the internal database (built from the NstDatabase.xml file) for

  • Games that support a custom mapper
  • Games that support multitap accessories
  • Games that support the Zapper
  • ROM Hacks
  • Famicom Disk System games
  • General proper emulation of games

Custom color palettes

To use custom color palettes in the Nestopia UE core, the custom color palette file you want to use must be in RetroArch's system directory.

Make sure the custom palette file is named 'custom.pal'

Also, the 'Palette' core option must be set to custom.

Custom color palettes for the NES can be generated with either of these tools.

Core options

The Nestopia UE core has the following option(s) that can be tweaked from the core options menu. The default setting is bolded.

Settings with (Restart) means that core has to be closed for the new setting to be applied on next launch.

  • Blargg NTSC filter [nestopia_blargg_ntsc_filter] (disabled|composite|svideo|rgb|monochrome)

    Enable Blargg NTSC filters.

Disclaimer

These 'Blargg NTSC filter' core option screenshots have been taken with the 'Palette' core option set to cxa2025as.

Blargg NTSC filter - Off

Blargg NTSC filter - composite

Blargg NTSC filter - svideo

Blargg NTSC filter - rgb

Blargg NTSC filter - monochrome

  • Palette [nestopia_palette] (cxa2025as|consumer|canonical|alternative|rgb|pal|composite-direct-fbx|pvm-style-d93-fbx|ntsc-hardware-fbx|nes-classic-fbx-fs|raw|custom)

    Choose which color palette is going to be used.

Disclaimer

These 'Palette' core option screenshots have been taken with the 'Blargg NTSC filter' core option set to Off.

Palette - cxa2025as

Palette - consumer

Palette - canonical

Palette - alternative

Palette - rgb

Palette - pal

Palette - composite-direct-fbx

Palette - pvm-style-d93-fbx

Palette - ntsc-hardware-fbx

Palette - nes-classic-fbx-fs

Palette - raw

  • Remove Sprite Limit [nestopia_nospritelimit] (disabled|enabled)

    Remove 8-sprites-per-scanline hardware limit.

  • CPU Speed (Overclock) [nestopia_overclock] (1x|2x)

    Overclock the emulated CPU.

  • 4 Player Adapter [nestopia_select_adapter] (auto|ntsc|famicom)

    Manually select a 4 Player Adapter if needed. Some games will not recognize the adapter correctly through the internal database, this option should help fix that.

  • FDS Auto Insntert [nestopia_fds_auto_insert] (enabled|disabled)

    Automatically insert first FDS disk on reset.

  • Mask Overscan (Vertical) [nestopia_overscan_v] (enabled|disabled)

    Mask out (vertically) the potentially random glitchy video output that would have been hidden by the bezel around the edge of a standard-definition television screen.

Mask Overscan (Vertical) - On

Mask Overscan (Vertical) - Off

  • Mask Overscan (Horizontal) [nestopia_overscan_h] (disabled|enabled)

    Mask out (horizontally) the potentially random glitchy video output that would have been hidden by the bezel around the edge of a standard-definition television screen.

Mask Overscan (Horizontal) - Off

Mask Overscan (Horizontal) - On

  • Preferred aspect ratio [nestopia_aspect] (auto|ntsc|pal|4:3)

    Choose the preferred aspect ratio. RetroArch's aspect ratio must be set to Core provided in the Video settings. 'auto' will use the internal database for aspect ratio autodetection.

Preferred aspect ratio - ntsc

Preferred aspect ratio - pal

Preferred aspect ratio - 4:3

  • Game Genie Sound Distortion [nestopia_genie_distortion] (disabled|enabled)

    The Game Genie cheat device could inadvertently introduce sound distortion in games. By enabling this, you can simulate the distortion it would add to a game's sound.

  • System Region [nestopia_favored_system] (auto|ntsc|pal|famicom|dendy)

    Choose which region the system is from. 'auto' will use the internal database for region autodetection.

  • RAM Power-on State [nestopia_ram_power_state] (0x00|0xFF|random)

    Awaiting description.

  • Turbo Pulse Speed [nestopia_turbo_pulse] (2|3|4|5|6|7|8|9)

    Set the turbo pulse speed for the Turbo B and Turbo A buttons.

Controllers

The Nestopia UE core supports the following device type(s) in the controls menu, bolded device types are the default for the specified user(s):

User 1 - 4 device types

  • None - Disables input.
  • Auto - Automatically detects the device to use based on the internal database.
  • Gamepad - Joypad
  • Arkanoid - Arkanoid paddle - This should be automatic from the internal database, but this can be changed to Gamepad if you'd prefer using a joypad rather than a paddle. (Port 2 only)
  • Zapper - Lightgun - The Nestopia UE core can emulate Zapper inputs. This is generally done automatically based off of the internal database, but can be manually selected as a device type. (Port 2 only)

Multitap support

The Nestopia UE core uses the internal database to detect which games have multitap support.

Controller tables

Joypad

User 1 Remap descriptors RetroPad Inputs
B
Turbo B
Select
Start
D-Pad Up
D-Pad Down
D-Pad Left
D-Pad Right
A
Turbo A
(FDS) Disk Side Change
(FDS) Eject Disk
(VSSystem) Coin 1
(VSSystem) Coin 2
(Famicom) Microphone
User 2 - 4 Remap descriptors RetroPad Inputs
B
Turbo B
Select
Start
D-Pad Up
D-Pad Down
D-Pad Left
D-Pad Right
A
Turbo A
(FDS) Disk Side Change
(FDS) Eject Disk

Lightgun

RetroLightgun Inputs Zapper
Gun Crosshair Zapper Crosshair
Gun Trigger Zapper Trigger
Gun Aux B Zapper Light On

Compatibility

Game Issue
Skull & Crossbones Graphical glitches and screen shaking when in 2-player mode. (1)
(1)

See also

Nintendo - Family Computer Disk System

Nintendo - Nintendo Entertainment System