top of page

1.0.2 / 12-09-2023





average rating is 5 out of 5
average rating is 4.3 out of 5
average rating is 4.5 out of 5

Mesen-X is a fork of Mesen which has NES/Famicon high-accuracy and an NSF player.  It's meant to consolidate development efforts from various different forks whle adding support for the ESPM expansion audio device, fixes, HDPack changes and much more..!



  • Extra High Accuracy: A lot of effort has gone into making Mesen as accurate as possible.

  • Extra High Compatibility: Over 290 mappers supported (all licensed games supported)

  • NES, Famicom, Famicom Disk System, Dendy, VS System, NSF and NSFe emulation is supported.

  • General: Save States, Rewinding, Movie/Audio Recording, Overclocking, Cheat Codes.

  • Video: Numerous video filters, customizable palettes/overscan, support for HDNes' HD packs.

  • Audio: Stereo effects, per-channel volume and panning, equalizer, etc.

  • Misc: Netplay, 7z/zip support, IPS/BPS patch support, automatic updates, and more!


Windows: Vista+ (DirectX 11 / NET Framework 4.5+)

Linux: glibc 2.24+ / Mono 4.2.1+ / SDL 2

Most Recent Changes


Silence warnings

  • Add support for VRC4f (Mapper 23 submapper 1)

  • additional mappers

  • add mappers to mesen-x

  • additional mappers

  • mappers for Mesen-X

  • Update - Spanish translation updated

  • New feature for HD Pack

  • mapper updates

  • Fix addition for vertically flipped sprites

  • corrections and some more mappers

  • fix warnings

  • mappers

  • Add Mapper 413

  • rewrite jycompany mapper and add related mappers +others

  • mappers

  • a few mapper updates

  • Fix color emphasis emulation in Bisqwit's NTSC filter

  • Fix Action 53 initialization

  • Add dependency that made linux build fail

  • blargg NTSC Filter Improvements

  • Libretro buildfix

  • Setup libretro CI

  • Silence MSVC warnings

  • Adding delayed writes to $4016 EPSM Addressing

  • Fix auto size and hd pack enhancement

  • Composite Filter Improvements

  • Fixing bug introduced in the dpi fix

  • Update .NET Target Framework version to 4.8

  • n163: Allow sound RAM to follow RAM initialization settings

  • n163: Account for battery flag when initializing internal ram

  • Mesenx by @negativeExponent

  • Fix broken Debugger

  • More thorough explanations available here...


  • MingW64 Libretro fixes

  • Build against an older version of Ubuntu to attempt to increase native code backwards compatibility

  • Use Ubuntu Docker container, which is cleaner than Github runner

  • Document stepOut/stepOver functions.

  • Change Documentation link

  • Hugo to Github Pages

  • Restore VRC7 Mute capability and update EPSM Clock frequency

  • EPSM Volume adjustments

  • Fix save state breaking between sessions

  • Crashfix for win on MacOS, VRC7 update emulation files, EPSM correct default frequency

  • Add alternative YIQ to RGB conversion equation (SMPTE C)

  • Libretro: Add support for up to 8 codelines per cheatcode by ds22x

  • Add submapper 1 support to Coolboy (mapper 268)

  • Mappers

  • Shows the progress of loading HD pack

  • add some mmc3-based mappers

  • fix typo from last PR and additional mappers

  • Do not disable the auto config input type option

  • Refactor SMPTE-C implementation

  • Refactor SMPTE-C implementation 2


This release includes support for the ESPM expansion audio device, code to support integration with an external debugger, a fix for settings not being saved on Linux on up-to-date Mono, and HDPack related changes

Show Previous Changes


Mesen 0.9.9

WARNING: Save states created with version 0.9.8 (or older) will no longer work in 0.9.9.

New Features

  • Run Ahead: Added run ahead support (in Emulation settings)

  • Emulation: Added 2 new options to emulate known PPU hardware bugs

  • Emulation: Added option to emulate CPU/PPU alignments

  • UI: Added load state and save state menus (with previews and timestamps)

  • Mappers: Added support for Study Box roms (.studybox files)

  • UNROM512/GTROM: Added support for self-flashing

  • Debugger: Various fixes and improvements

  • Event Viewer: Improved filtering options and added the ability to display NTSC borders

Bug Fixes

  • CPU: Rewrote DMC and OAM DMA logic to better match hardware behavior/timings

  • CPU: Fixed an issue with NMIs turning into IRQs (when turning the NMI flag off at the wrong moment)

  • PPU: Fixed PPU OAM fetch pattern on pre-render scanline

  • PPU: Fixed some PPU timings to better match hardware

  • MC-ACC: Improved MC-ACC (licensed MMC3 clone) emulation

  • MMC5: Rewrote a large portion of the code to better match hardware behavior and quirks

  • Mappers: Fixed/improved emulation of a number of mappers used by unlicensed games

  • NSF: Fixed an issue that caused problems with some FDS NSF files

  • Linux: Fixed bug when using nvidia's drivers that caused the screen to be completely black

Mesen 0.9.8

UPDATE (June 25 2019): A bug with mapper 30 has been found that caused some games using mapper 30 to work incorrectly. Since this has become a popular mapper for homebrew titles, I've rebuilt and reuploaded a new version of 0.9.8 with a fix for this (again). If you've downloaded 0.9.8 before now, please manually download 0.9.8 again to get the fix. Sorry about making this even more confusing by reusing the same version number twice, as well.

IMPORTANT: The first release of 0.9.8 contained a bug that prevented FDS games from loading properly, this has been corrected. An updated version of 0.9.8 has been uploaded, if you've downloaded the original release, please manually download 0.9.8 again.

WARNING: Save states created with version 0.9.7 (or older) will no longer work in 0.9.8.

New Features

  • Debugger: General improvements as well as new features/tools (and bug fixes.)

  • NSF: Allow rewinding during NSF file playback and fixed an initilization problem with VRC6 audio.

  • History Viewer: Added a few new features and options, including allowing it to be used with NSF files.

  • Video: Added support for 512-color palette files (for color bit emphasis.)

  • Input: Added options to configure the deadzone size for analog sticks and to hide the mouse cursor when using a zapper.

  • Dip switches: Dip switches can now be configured for all cartridges that use them (instead of being limited to VS System games.)

Bug Fixes

  • APU: Fixed frame counter bug that caused audio to sometimes be paced slightly incorrectly.

  • APU: Fixed DMC power on state to match hardware test results.

  • PPU: Prevent palette updates during horizontal blank when rendering is enabled (to match expected hardware behavior.)

  • Namco 163: Fixed problems with battery save data.

  • Bandai FCG: Added support for EEPROM save data.

  • MMC5: Fixed incorrect attribute data when using fill mode.

  • VRC7: Updated audio instrument values to match the values recently dumped from hardware.

  • AOROM: Fixed power on mirroring state.

  • Misc: Fixed minor bugs in a variety of mappers (including mappers 112, 176, 320 and UNROM512.)

Mesen 0.9.7

New Features

  • Debugger: Numerous small features/improvements/bug fixes.

  • UI: Added a Chinese translation for the UI (thanks to L1cardo and owomomo)

Bug Fixes

  • Audio: Fixed minor issues with Sunsoft 5B and Namco 163 sound emulation.

  • Emulation: Fixed frame timing/pacing issues on some computers (fixes unstable FPS and audio issues)

  • Video: Removed black bar (left) and fixed cutoff pixels (right) in NTSC (bisqwit) filter.

  • HD Pack Builder: Fixed a number of crashes when using the HD Pack Builder at the same time as the debugger (and improved performance while recording).

Mesen 0.9.6

New Features

  • Compatibility: Added support for 29 new mappers

  • VS System: VS DualSystem games are now supported.

  • Audio: Improved audio/video synchronization with dynamic resampling.

  • Debugger: New features and tools (text hooker), UI improvements, performance improvements and bug fixes.

  • Tools: Added history viewer tool.

  • UI: Added some new options (per-game overscan, audio reduction during rewind, etc.)

Bug Fixes

  • PPU: Improved PPU memory bus emulation (fixes Touhou Rououmu homebrew)

  • Fixed emulation issues with a number of boards (FK23C, JY Company, MMC1, etc.)

Mesen 0.9.5

New Features

  • Debugger: Tons of new features, UI improvements, performance improvements and bug fixes.

  • HD Packs: New features, performance improvements and bug fixes.

  • FDS: Improved compatibility of the automatic disk insertion feature.

  • UI: Added a few minor options (and increased the number of savestate slots to 10).

  • Documentation: An offline version of the documentation is now available.

Bug Fixes

  • Input: Changed input polling timing to reduce input lag by 1 frame.

  • Linux: Improved SDL error handling to prevent crashes.

  • Accuracy: Fixed a mirroring issue with mapper 30 games.

Mesen 0.9.4

WARNING: Movies created with version 0.9.3 (or older) will no longer work in 0.9.4.

New Features

  • Input: Added support for 20 more peripherals (including controllers, barcode readers, keyboards, mice, external storage devices, etc.)

  • Video: Added a 60.0 FPS mode to reduce dropped frames

  • Video: Added support for exclusive fullscreen mode (Windows only)

  • Video: Added option to rotate the display (for homebrew games)

  • Performance: Minor performance enhancements on Windows (~5%) and large gains on Linux by enabling LTO (25-30%)

  • Movies: Rewrote movie file format from scratch to be a lot more flexible, and editable by hand. (Old .mmo files are no longer supported)

  • Debugger: Several enhancements and a number of additions/changes to the Lua API.

  • Accuracy: Improved FDS IRQ emulation

Bug Fixes

  • General: Several miscellaneous bugs have been fixed.

  • Debugger: A large number of small bugs and usability issues have been fixed.

  • HD Packs: Fixed performance issues with HD Packs in CHR RAM games (over 2x faster)

Mesen 0.9.3

New Features

  • UI: All UI shortcuts are now customizable in the Preferences (multi-key shortcuts are now supported).

  • UI: Added a link to the new online documentation site in the Help menu.

Bug Fixes

  • Cheats: Fixed crash when cheats window was opened

  • HD Packs: Fixed sprite recording in HD Pack Builder and crashes when loading HD packs in some conditions.

  • Debugger: Fixed some minor bugs.

  • Linux: Fixed some crashes and layout fixes.

  • Dendy: Fixed regression bug with intensify color and grayscale bits emulation.

Mesen 0.9.2

New Features

  • UI: Added an initial setup dialog for new users.

  • UI: Ability to configure paths and portable mode in preferences.

  • HD Packs: New features, bug fixes and audio replacement support.

  • Input: Added support for the Famicom's second controller's microphone.

  • Savestates: Added ability to save/load the state to/from any file.

  • Debugger: Added Lua scripting.

  • Debugger: Assembler now has syntax highlighting.

  • Debugger: Integration with ASM6 via freem's fork (ASM6f) to import labels and code comments.

  • Debugger: Added iNES header editor

  • Debugger: PPU viewer enhancements

  • Debugger: Added "Developer mode" option for quicker access to debugging tools

  • NSF: Added repeat and shuffle options

  • General: Improved emulator startup performance

Bug Fixes

  • UI: Fixed window size not being remembered correctly in some cases

  • FDS: Bug fixes related to cheats and save data

  • Debugger: Fixed watch window usability issues and assembler bugs

Mesen 0.9.1

New Features

  • HD Packs: Improved support for HDNes' HD packs and added an HD Pack Builder tool.

  • Debugger: Added several new features and options (Step Back, configure input, etc.)

  • Video: Added option to automatically re-enable sprite limit to reduce graphical glitches caused by the "remove sprite limit" option.

  • VS System: The custom color palette can now be applied to VS System games as well.

Bug Fixes

  • Overclocking: Bug fixes and improved compatibility.

  • Cheats: Fixed issue with 8-character Game Genie codes.

  • FDS: Fixed a crash, an issue with automatic disk insertion and improved emulation compatibility.

  • NSF: Fixed issue with MMC5 multiplication register (fixes Just Breed NSF).

  • Others fixes and improvements for the debugger, game selection screen, rewinding, mappers 48/163, a number of unlicensed games and more.

Mesen 0.9.0

New Features

  • Rewind: Added a rewind functionality with reverse video and audio playback (up to several hours worth of gameplay can be rewinded.)

  • UI: Added game selection screen

  • Compatibility: Added support for mappers 29, 30, 111, 158 and 174.

  • FDS: Added option to automatically switch disks.

  • Video: Improvements to video scale management and corrected aspect ratio presets.

  • Misc: Added a few other small features (Frame counter, game timer, 96kHz audio, etc.)

Bug Fixes

  • Accuracy: Improvements to PPU, MMC5 and VRC6 emulation.

  • FDS: Fixed issue with sound emulation (Fixes Bio Miracle).

  • Overclocking: Improved compatibility with some games.

  • Debugger: Fixed a number of bugs and crashes.

  • Misc: Several other bug fixes.

Mesen 0.8.1

New Features

  • Performance: Code improvements have increased emulation speed by 15-35%.

  • Audio: Added a customizable equalizer.

  • Patches: Added support for UPS and BPS patch formats.

  • Compatibility: Added support for UNIF FK23C/FK23CA/D1038 boards and mapper 104.

  • PPU: Added option to emulate OAM RAM decay.

Bug Fixes

  • PAL: Improved PPU emulation accuracy.

  • MMC5: Improved emulation accuracy.

  • FDS: Improved IRQ emulation accuracy (fixes Lutter and some unlicensed games).

  • Emulation: Fixed problem that caused in-game crashes in the "Legend of Link" romhack.

  • Misc: Several small bug fixes.

Mesen 0.8.0

New Features

  • Emulation: Added several new options to enable/disable model-specific quirks.

  • Command line: Added command line options for most video/audio/emulation settings.

  • Debugger: Added several new features (Hex editor, TBL file support, code editor, graphic editor, and a lot more), improved performance and fixed some bugs.

  • Games: Headerless roms can now be loaded (if they are found in the built-in game database).

Bug Fixes

  • Emulation: Improved accuracy of $2006 write behavior (solves minor issues in 2 games).

  • Emulation: Improved accuracy of $2004 read behavior.

  • Emulation: Improved accuracy of sprite overflow bug emulation.

  • Misc: Several small bug fixes.

Mesen 0.7.1

New Features

  • Video: Added new custom aspect ratio option.

  • Compatibility: Added support for mapper 190 (Magic Kid GooGoo) and UNIF board EH8813A.

  • Video: Added new codec for AVI recording (camstudio) and compression setting

Bug Fixes

  • FME7: Fixed bug with savestates for mapper 69.

  • Misc: Several small bug fixes.

Mesen 0.7.0

New Features

  • Video: Added new NTSC filter (based on Bisqwit's work).

  • Video: Added feature to allow recording gameplay to AVI files

Bug Fixes

  • Video: Fixed graphic glitches and crashes with the 2xSai, Super2xSai and SuperEagle filters.

  • Startup: Fixed crash that occurred when the path contained non-ascii characters (bug introduced in 0.6.1).

  • Linux: Fixed an issue with the "only allow one instance of Mesen" option.

Mesen 0.6.1

New Features

  • Linux: Mesen can now run under Linux (requires Mono and SDL2). This is still a work in progress and may contain bugs and crashes.

  • UI: Mesen is now available in Portuguese (translation by ThallesAps)

Bug Fixes

  • Audio: Improved square channel accuracy and fixed a sound mixing bug introduced in 0.6.0.

  • Misc: Fixed issues with DirectInput controllers and the debugger.

  • Overclocking: Fixed issues when using overclocking in games that use the DMC channel.

Mesen 0.6.0

New Features

  • Debugger: Tons of new features and improvements (including labels and comments, a profiler, more options in the PPU viewer, etc.)

  • Audio: Greatly reduced sound latency.

  • Audio: Added an option to reduce the popping sounds produced by the DMC channel in some games.

  • Audio: Added channel panning options.

  • Audio: Added a crossfeed option.

  • Video: Added 2 new palette presets (Nostalgia and Nes Classic, by FirebrandX).

  • UI: Added a "power cycle" option to reload the current game.

  • UI: Added an option to load a random game.

Bug Fixes

  • Video: Fixed a bug with the "Remove Sprite Limit" option that could cause it to display incorrect sprites on the screen.

  • Video: Fixed a bug with the aspect ratio option when overscan was used at the same time.

  • NSF: Fixed a crash that could occur when loading incorrect NSF files.

Mesen 0.5.3

  • Added support for 4 new mappers (43, 54, 125, 236)

  • Added support for 40 new UNIF boards.


None prior found to above versions.

You can always check here for general remarks...

bottom of page