Code Monkey home page Code Monkey logo

mesen's Introduction

Mesen

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

Website (https://www.mesen.ca)
Documentation (https://www.mesen.ca/docs)

Development Builds

Development builds of the latest commit are available from Appveyor. For stable release builds, see the Releases section below.

Warning: These are development builds and may be unstable. Using them may also increase the chances of your settings being corrupted, or having issues when upgrading to the next official release. Additionally, these builds are currently not optimized via PGO and will typically run 20-30% slower than the official release builds.

Windows: Build status

Linux: Build status

Releases

Windows

The latest version is available on the website. Older releases are available from the releases tab on GitHub.

Ubuntu

The official releases (same downloads as the Windows builds above) also contain the Linux version of Mesen, built under Ubuntu 16 - you should be able to use that in most cases if you are using Ubuntu.

The Linux version is a standard .NET executable file and requires Mono to run - you may need to configure your environment to allow it to automatically run .exe files through Mono, or manually run Mesen by using mono (e.g: "mono Mesen.exe").

The following packages need to be installed to run Mesen:

  • mono-complete
  • libsdl2-2.0
  • gnome-themes-standard

Note: Mono 5.18 or higher is recommended, some older versions of Mono (e.g 4.2.2) have some stability and performance issues which can cause crashes and slow down the UI. The default Mono version in Ubuntu 18.04 is 4.6.2 (which also causes some layout issues in Mesen). To install the latest version of Mono, follow the instructions here: https://www.mono-project.com/download/stable/#download-lin

Arch Linux

Packages are available here: https://aur.archlinux.org/packages/mesen

Roadmap

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
  • Shaders
  • TAS editor

Compiling

See COMPILING.md

License

Mesen is available under the GPL V3 license. Full text here: http://www.gnu.org/licenses/gpl-3.0.en.html

Copyright (C) 2014-2019 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 http://www.gnu.org/licenses/.

mesen's People

Contributors

altiereslima avatar arcus87 avatar bananarama203 avatar darkaiser0 avatar davi92 avatar dwedit avatar fr500 avatar gouchi avatar inactive123 avatar juanramonmartinez avatar koitsu avatar l1cardo avatar lioncash avatar llethas avatar newsie-oss avatar norill avatar owomomo avatar p-sam avatar puigru avatar pyrolagus avatar reversedmitry avatar slash0042 avatar sourmesen avatar stellarporter avatar superusercode avatar trevormerritt avatar valpackett avatar webgeek1234 avatar yoshisuga avatar zorchenhimer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mesen's Issues

Loading a state in playback

When loading a state in playback, the file will playback input from either later or earlier in the input depending on where the load state is created.

Attached video file (2mb) shows the file playback as intended, followed by loading a state.

Originally created at 2016-07-19 16:47:54+00:00 (UTC) by Spikestuff as a(n) major issue.

Sound bug in Double Dragon III - The Rosetta Stone (J) [!]

Steps to reproduce:

  1. Launch Mesen;
  2. Open game rom "Double Dragon III - The Rosetta Stone (J) [!]"
  3. While playing in game, press at one time two buttons A+B , to make Billy jump and you will see sound bug.

Originally created at 2016-08-12 15:52:28+00:00 (UTC) by medigi as a(n) major issue.

TMNTurtles II - The Manhattan Project (Japan) doesn't work

Loading rom: Teenage Mutant Ninja Turtles II - The Manhattan Project (Japan).nes
File CRC32: 0x7929F237
PRG+CHR CRC32: 0x490E8A4C
[iNes] Mapper: 25 Sub:0
[iNes] PRG ROM: 256 KB
[iNes] CHR ROM: 256 KB
[iNes] Mirroring: Horizontal

[iNes] Battery: No

[DB] Initialized - 2993 games in DB
[DB] Game found in database
[DB] Mapper: 25 Sub: 2
[DB] System : Famicom
[DB] PRG ROM: 256 KB
[DB] CHR ROM: 256 KB
[DB] Battery: No
[DB] Input: 2 standard controllers connected

Originally created at 2016-07-17 19:58:40+00:00 (UTC) by matich as a(n) minor issue.

Idea for Mesen: Reduce sprite flickering by buffering frames

New idea for emulator to add: buffer three frames (adding an input lag of 50/100 ms) , if a sprite gets hidden for a frame of two then reappears, consider it as sprite flickering and show the sprite that would be otherwise hidden during both frames, using an average for its position

Pocket Games 150 in 1

ROM launching and works, but games with different graphical bugs. Can you investigate it?

About the control settings

Emulator does not distinguish between "ENTER" and "NUMENTER"
As a result, when you configure these buttons start button on different controllers, double-click works.
(Unable to run Battltoads one player)

Originally created at 2016-07-26 11:26:52+00:00 (UTC) by as a(n) major issue.

Problem about playing NSF file

Cannot play some nsf files used sound chip.

no sound : Sangokushi 2 - Haou no Tairiku.nsf
out of sync : robokabuto_-_yoshimune_soko_ni_aru_kamo_shire_nai.nsf

Translate question

Hello, thank you for great emulator. I have question - is there possible to translate this emulator on other languages, and how? I want to make ukrainian translate for Mesen.

Black bars when playing some games.

I found some games that have black bars on the side when playing the game.

Zelda 2, Karnov, Burai Fighter, Magmax

Originally created at 2016-07-26 05:17:31+00:00 (UTC) by Cibo_Matto as a(n) minor issue.

Most of NSF's don't start 1st song

User need to select next song, then return to previous for listen it.

Originally created at 2016-07-10 17:39:08+00:00 (UTC) by eugene-s-nesdev as a(n) trivial issue.

Unknown cheats in the cheat finder.

Is there a way to find unknown cheats in the Cheat finder like energy bar codes and so on ? I know how to do it in FCEUX but not in Mesen

Double Dragon 2 - The Revenge

The jumping sound doesn't sound correct.

Originally created at 2016-07-25 05:18:09+00:00 (UTC) by Cibo_Matto as a(n) minor issue.

Active triangle-channel detects as silence so NSF player move to next track.

Here is an NSF file which i've created to show bug.
It have 2 "songs".
First "song" contains all 5 internal apu channels triggered on and off quickly.
Second "song" contains silence.

Try to disable volume of all channels except triangle.
You'll see that "silence counter" will detect triangle as silence,
and emulator will switch to next song.

Originally created at 2016-07-19 18:21:43+00:00 (UTC) by eugene-s-nesdev as a(n) major issue.

Cybernoid - The Fighting Machine (U)

Start the game next pause the game and press A this is how get the music to play in the game you will see graphics errors when the music starts to play.

Originally created at 2016-07-21 06:07:57+00:00 (UTC) by Cibo_Matto as a(n) major issue.

Lethal Weapon (Ch) not working

The same also will happen, if you try to launch it like 7z file (File - Open - Lethal Weapon (Ch)) [this is you can found in GoodNES] .

Lethal Weapon (UE) opens and working fine, unlike this one with "(Ch)"

Originally created at 2016-07-30 13:46:20+00:00 (UTC) by medigi as a(n) minor issue.

Debugger crash

The Debugger will crash on any game. Just load the game then select debugger.

capture9-7-2016-2 36 40 am

Problems with multicarts

Many of roms doesn't launching or writing errors (often problem - Game has crashed - Invalid OP code cpu crashed) Maybe the problem in roms, not in Mesen? The problem is that there 457 roms , in Multicarts Collection.7z from GoodNES

A big thanks will be if you check and fix games.

Shortcut Keys Request

Are you going to add more Shortcut keys later? Like the - and + it would be nice to map that to the gamepad so I could slow or speed up the game.

Input Display

Adding a option "Input Display" let player see, what buttons he pressing. To example, in fceux famicom gamepad shows you, what buttons you pressing if this option enabled. This is also usefull for making speedruns

Originally created at 2016-07-17 20:04:02+00:00 (UTC) by medigi as a(n) major issue.

Mapper #126

Hello, can you add this rare mapper for Mesen? Some games, as powerjoy or multicarts doesn't launching without it.

Sound bugs in some games

Example, sound bug in TMNT2: The Arcade Game. Music is ok, but the sound "broken" in some games. Also issue in game "Journey to Silius"

Originally created at 2016-07-14 14:35:03+00:00 (UTC) by medigi as a(n) major issue.

Add "LAG Counter" for see how much overclock cycles need depending game

Hi, Sour.
I have a useful request.
Can you add "LAG Counter" for see how much overclock cycles
need depending of various games?

Here is lastest FCEUX and puNES betas:

https://www.dropbox.com/s/2h6xo1hu15v1n4s/fceux.zip?dl=0
(config->display->lag counter)

https://dl.dropboxusercontent.com/u/21595068/punes32.wip.d3d9.zip
(PPU hacks menu)

Originally created at 2016-07-10 17:51:30+00:00 (UTC) by eugene-s-nesdev as a(n) trivial issue.

Some sprites not showing up in Akumajou Special - Boku Dracula-Kun English Translation

Some platforms are not showing up in the translated rom of Akumajou Special - Boku Dracula-Kun. I've attached some screenshots. The first one is with an untranslated ROM in Mesen, where the platforms show up fine.
akumajou special - boku dracula-kun japan _000

The second is with a translated ROM in Mesen. No platforms for some reason.
akumajou special - boku dracula-kun japan en by vice v1 04 i m kid dracula _000

The third and final screenshot is with the translated ROM in FCEUX. The platforms show up just fine.
akumajou special - boku dracula-kun japan en by vice v1 04 i m kid dracula -1

I've tried downloading different pre-patched ROMs and patching the ROM myself, but I cannot get it working in Mesen.

Magmax

The NSF player will play track 2 to slow.

Edit cheats Feature

Do you think we may see a way to edit the cheats after they are put in? like change the name of a cheat or the value of a cheat.

Frameskip option

I didn't found this option. This could be usefull and it's need if host-machines, which can't provide / support required FPS and inquire with system requirements of emulator. This option already in fceux, nestopia and puNES

4-player adapter

Does this option exists? If not, maybe you can add it in Mesen (would be great)?

Paths

I think, Mesen need also Paths like nestopia and fceux - this will make Mesen more usefull, because not all users can like when you can't choose paths. To example:

D:\Games\Mesen\save\ - for Save Data (savestates) ;
D:\Games\Mesen\cheats\ - for Cheats

Originally created at 2016-08-15 14:36:38+00:00 (UTC) by medigi as a(n) minor issue.

OSD message when region changed

Would be good to see OSD message when user change region, or when it change automatically depending loaded game.

Originally created at 2016-07-10 18:01:53+00:00 (UTC) by eugene-s-nesdev as a(n) trivial issue.

Can't delete cheats

here is a video of the problem.

Originally created at 2016-07-29 06:30:54+00:00 (UTC) by Cibo_Matto as a(n) major issue.

Emulator crashes when loading any ROM

Every time I try to load a ROM in Mesen, the emulator crashes a mere second after loading it. Here's the exception I get:

Often, the faulty module is either psdprotect.dll or btmmhook.dll.

I'm on Windows 7 Home Edition 64-bit and have .NET Framework 4.6.1 installed.

psdprotect.dll is used by MyWinLocker and btmmhook.dll is used by the WIDCOMM Bluetooth software. It could be that Mesen interferes with these programs/DLLs in unexpected ways.

Originally created at 2016-07-19 17:48:23+00:00 (UTC) by as a(n) major issue.

Option "Allow Left+Right / Up+Down"

In emulators Nestopia and FCEUX there is option. I didn't found it in Mesen, maybe i'm somewhere missed it?

Anyway, if there no option for this, maybe you can add it? Thanks for responce

Magmax

The music and Sound Effects do not sound correct

Originally created at 2016-07-26 05:10:18+00:00 (UTC) by Cibo_Matto as a(n) minor issue.

Autosaver for mesen

How about add this feature, or this is already in Mesen?

Something like this add in Mesen
1

Github downloads

Any chance we could get signed binary downloads from github + hashes in the future?

Thanks for Mesen, very impressed with it so far!

Video size decrease?

Mesen 0.4.0 . When i'm launching any game, then going to Game -> Reset - result will be like in my attached video, i don't know why this happens (using Video Size 4x).

Also, can you add hotkey for "Reset" button and for "Stop" ?

Originally created at 2016-07-29 01:13:37+00:00 (UTC) by medigi as a(n) minor issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.