Mesen is a cross-platform (Windows & Linux) NES/Famicom emulator built in C++ and C#
C++ C# C Other
Latest commit 6eb6181 Jan 15, 2017 @SourMesen committed on GitHub Updated readme

Mesen is a cross-platform NES/Famicom emulator for Windows & Linux built in C++ and C#.

If you want to support this project, please consider making a donation:
Donate to this project using Paypal


Latest version
Older releases


Things that may or may not be added in the future, in no particular order:

-Support for more UNIF boards and more NES/Famicom input devices
-Rewind functionality
-Debugger improvements (APU state display, memory editor, scripting, etc.)
-Improvements to movie file format to support a few things that currently do not work
-RAR file support
-Libretro support
-TAS editor



1) Open the solution in VS2015
2) Compile as Release/x64 or Release/x86
3) Run


You will need clang/gcc, Mono/XBuild and SDL2 to compile and run Mesen under Linux.
The makefile contains some more information at the top. Running "make" will build the x64 version by default, and then "make run" should start the emulator.


Mesen is available under the GPL V3 license. Full text here:

Copyright (C) 2016 M. Bibaud

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see