Your NES emulator of choice?

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Your NES emulator of choice?
by on (#188434)
Vote and tell us the main reason of your choice.
Re: Your NES emulator of choice?
by on (#188450)
I've been using FCEUX / FCEU for many many years. I know all the shortcut keys and all the debugging tools inside and out.

It sucks at emulating accurately, and has several bugs...color emphasis, for example. But I already have 5 emulators, and I don't like to change my habits.
Re: Your NES emulator of choice?
by on (#188451)
no$nes. I like the ideology of the author plus the documentation work ~
Re: Your NES emulator of choice?
by on (#188453)
FCEUX, out of habit and convenience. Mybe not the best of reasons.
Re: Your NES emulator of choice?
by on (#188454)
1. FCEUX for debugging, inspecting, making videos, hacking, making TAS, experimenting, etc. Doesn't get some of the finer points of accuracy (esp. obscure PPU timing issues) but is pretty accurate for most of the stuff I care about. It's a great tool.

2. Nintendulator as a backup when FCEUX is not quite accurate enough. I think its UI is not very good, e.g. FCEUX has so much important customization, Nintendulator has almost none.

3. Nestopia for just playing games. (Just works better. If FCEUX had proper vsync and a better fullscreen mode I'd probably just use it for everything.)


Those are the 3 I care most about. I also have my eye on:

4. PuNES - looking good so far for playing stuff, options/UI and the APU sound isn't as good as Nestopia.

5. Mesen - getting a lot of debugger improvements lately.
Re: Your NES emulator of choice?
by on (#188463)
My list is basically the same as rainwarrior's:

1 - FCEUX for debugging, hacking, studying effects, and so on. It has a shitload of debugging tools that make almost any task simple. I consider it very inaccurate though.

2 - Nintendulator for when I need to debug something that relies on more precise timing and/or video emulation. It gets second place because the debugging tools are fewer and not as versatile as FCEUX's. Nintendulator could seriously benefit from more display options too (IIRC you can't even disable the bilinear filtering, which's extremely annoying).

3 - Nestopia for playing. Very lightweight, easy to use, and one of the most accurate when compared to my actual NES consoles. Has the best video output IMO, when using the NTSC filter.

I have been gradually increasing my use of FCEUX for playing though, maybe because Nestopia is finally starting to feel outdated (I don't keep track of the more recent unofficial versions). After configuring the NTSC filter in FCEUX, I'm quite pleased with the picture, and its inaccuracies aren't really noticeable when playing.

I did try some of the newer, actively developed emulators, but some of them felt really bloated (the multi-platform ones) and others required me to install stuff (C++ runtime, .NET Framework, etc.) that I either didn't feel like doing at the time or my Windows 7 simply refused to install, so my experience with those emulators is very limited, and the first impressions weren't the best.
Re: Your NES emulator of choice?
by on (#188464)
Nestopia for playing.
Mesen for debugging (and cross-checking against FCEUX, Nintendulator, and rarely NO$NES)
Re: Your NES emulator of choice?
by on (#188468)
The poll only allows you to select one emulator, but like a few people in this thread, I use multiple NES emulators. My choices are heavily biased towards developing and/or hacking games, so keep that in mind.

#1) FCEUX, primarily for its hacking and debugging features. Lua scripting support also helps.
#2) Nintendulator, as it seems to be the most accurate of the NES emulators. The OAM/sprite debugger is a nice feature as well. I also recommend NintendulatorDX for its ability to randomize boot RAM.
#3) puNES, for when I want to see how things will look with an NTSC filter.
#4) Nestopia, for an alternate NTSC filter look.
#5) emuVT, because none of the above supports VT03, as far as I'm aware. (note to self: stop having so many projects and figure out how to make a proper VT03 ROM)

At some point, I'd like to try Mesen, but I've been caught up with a lot of things lately (hence me not finishing my compo entry, oops).
Re: Your NES emulator of choice?
by on (#188469)
Oh yeah, forgot Lua scripting as one of the reasons for using FCEUX!
Re: Your NES emulator of choice?
by on (#188474)
I use fceux for general use and for testing my own games.

I like the video recording function.
If my game has a bug that isn't easy to reproduce, I simply record a playthrough until I encounter the bug. Then I can try to fix it and play the same recording over the new ROM to see whether it's gone.
Nestopia's record mechanism is shitty in comparison. I doesn't work on another ROM because it is based on a savestate.
The recording function is also my method of choice when letting testers play the game. I ask them to send me their input file, so I can see what they did.

I also use fceux for screenshots because I think it has the nicest color palette without me having to load a custom one. Nestopia's has that purple "Super Mario Bros." sky that I don't like.

But I use Nestopia for backup testing because it's cycle accurate, so I use it to catch things that fceux isn't capable of.
And I use the NTSC filter to check the graphics before having to test it on a real NES.
Re: Your NES emulator of choice?
by on (#188477)
I only use emulators for NES development/debugging nowdays so my list looks like almost everybody else.

1. FCEUX is what I use mostly because its useful debug tools.

2. Nintendulator when I'm not happy enough with the poor accuracy of FCEUX, and it has a debugger and a VRAM/OAM viewer although not as flexible to use as the ones in FCEUX.

3. Nestopia for testing stuff in Family BASIC simply because it can paste code by pressing F12. I wish more emulators had this useful feature. I sometimes use Nestopia instead of real hardware because it's faster to type the code in a text editor and then paste it in Nestopia.

Rocknes and Punes seems to be the only emulators that can swap 50% and 25% duty cycle modes for the square channels to emulate certain Famiclone CPUs, so I have used these too at times.

I never play games on emulators nowdays, I prefer real hardware for that. Especially now when the Everdrive and the FDSStick can replace emulators for running arbitrary ROM/disk images.
Re: Your NES emulator of choice?
by on (#188478)
For building and testing, FCEUX (with Nestopia's palette, although I do frequently check other palettes if indecisive)

For playing, Nestopia (I originally wanted a second emulator for playing, so that I could keep the various settings such as defaulting to fullscreen and joystick input separate. I initially chose it because of its default palette. I continue to use it for entertainment because I have no other complaints. However, most of our play-for-fun is through an Everdrive, so it doesn't get much use.)

FCEUX's palette is tremendously oversaturated. I find it visually uncomfortable to use, and kind of hate that it's the default for the preferred debugging emulator because it results in it being the most commonly used for screenshots, etc.

Honestly, due to my commute, I spend more time playing on Android than anywhere else these days, but I really dislike all of the Android emulators that I've tired. Any recommendations for that would be welcome.
Re: Your NES emulator of choice?
by on (#188483)
I use mednafen most of the time, because it's the only one that works. It doesn't crackle constantly or turn my screen into a disco strobe, supports proper PAR and scaling, can play NSFs and has a debugger. Which is more than can be said for FCEUX or Nestopia.

I'm told Mesen works on Linux nowadays, but I'm too lazy to install Mono.
Re: Your NES emulator of choice?
by on (#188484)
90% of the time I'm on OSX, and use Nestopia for playing, checking accuracy, and having a pleasant experience. I also run FCEUX in wine and on Windows for debugging / lua purposes. Earlier today I tried out Mesen for the first time and it sorta seems amazing! Looking forward to trying it out some more.
Re: Your NES emulator of choice?
by on (#188488)
I selected nintendulator only because it happens to be the one I used recently on the current computer I'm using. I do not do any nes relating thing these days so I do not have a main emulator for that reason but had to select one since it's a vote.

I do not use Nestpopia, never really used much actually, did use fceux in the past but don't know how much it changed these days. I do not use much other emulators.

Like I mentioned in another thread, I would try rocknes more if the UI was native. The problem with allegro ui (same problem with UI Meka for sms, not sure if they use allgero in that case) it that you are stuck in one small windows that opens windows. It's like a browser app that try to open simulated windows in it's on environment. You get limited with that frame and cannot put your windows where you like. If you want to use that emultaor for debugging (do not know how much debugging is possible with rocknes) then you are stuck to the restriction of that frame. That discourage the usage. I now it's quite hell to migrate to another UI framework but the usage of rocknes would go up if it was updated to a native framework (win32) or to a multi-platform framework (wxWidget, qt etc).

Since you created that vote, I can understand that you want to know how much people use your emulator or why other people use the other ones. If your emulator is native ui, has debugging tools then you bet people will use it even more since you update it quite often (I follow your emulator thread every time there is a new update).

I will try rocknes again just to see how it improved recently and wants to know the currents feature but like I said, the allegro UI irk me a lot. Same thing for zsnes, I do not enjoy it at all.
Re: Your NES emulator of choice?
by on (#188492)
Banshaku wrote:
I would try rocknes more if the UI was native.

I never know what Zepper's goal is he starts these kinds of topics. Sometimes it does look like he wants to know how to improve RockNES, but then he just says that what people are asking for (mostly better UI and debug tools) is bullshit and he'll not do it. So yeah, I don't know how to give any constructive criticism about RockNES anymore, or if this is even what Zepper is looking for.

BTW, I didn't answer the poll because I don't use only one emulator, but if I had to pick only one, based on my current habits, it'd have to be FCEUX.
Re: Your NES emulator of choice?
by on (#188501)
Pokun wrote:
Rocknes and Punes seems to be the only emulators that can swap 50% and 25% duty cycle modes for the square channels to emulate certain Famiclone CPUs, so I have used these too at times.

FCEUX has a Dendy mode and a duty-swap option now, as of 2.2.3

M_Tee wrote:
FCEUX's palette is tremendously oversaturated. I find it visually uncomfortable to use, and kind of hate that it's the default for the preferred debugging emulator because it results in it being the most commonly used for screenshots, etc.

The default palette sucks. I especially hate how the $D column greys are mismatched against the $0 column. At least it's customizable, though, and comes with some decent palette files.
Re: Your NES emulator of choice?
by on (#188512)
For playing VirtuaNES (when savestates are required) and Nestopia (when NTSC filtered graphics are required)

For debugging, FCEUx and Nintendulator.
Re: Your NES emulator of choice?
by on (#188526)
The goal is OBVIOUS. I wonder about the main emulator used by the community. It's interesting about people running Mac or Linux, since a few of these emulators were not ported out of Windows. And yes, just 1 choose. ^_^;;
I won't get upset again because of my emulator's UI limitations, or whatever. Banshaku is right about the Allegro's GUI style and limitations. Just remember that 20 years of work makes a big difference in every aspect. :roll:
Other than that, Mr. Tokumaru, it's all right. :wink:
Re: Your NES emulator of choice?
by on (#188541)
@Zepper

It the code base didn't change much since 5.03 for the UI part I could always try to see how to port to something else but I cannot promise anything since my time is very limited. The emulator has potential since it's been worked for so many years, it just the UI is stuck it the past.

These days I work on windows, mac and linux so the more multi-platform emulators that doesn't require wine, the better.
Re: Your NES emulator of choice?
by on (#188553)
Banshaku wrote:
@Zepper

It the code base didn't change much since 5.03 for the UI part I could always try to see how to port to something else but I cannot promise anything since my time is very limited. The emulator has potential since it's been worked for so many years, it just the UI is stuck it the past.

These days I work on windows, mac and linux so the more multi-platform emulators that doesn't require wine, the better.

No problem.
Re: Your NES emulator of choice?
by on (#188555)
M_Tee wrote:
Honestly, due to my commute, I spend more time playing on Android than anywhere else these days, but I really dislike all of the Android emulators that I've tired.


I also play games on my Android phone. Games are 200% harder on my phone, due to not being able to feel the buttons, and I frequently fail to press the correct button.

No recommendation, but I use NES Nostalgia.
Re: Your NES emulator of choice?
by on (#188693)
I guess I'll throw in a vote for my own emulator. The a/v sync (no scrolling glitches), the upscaling filter, and the lack of save states (yes, that's a feature) are what I like most about it.
Re: Your NES emulator of choice?
by on (#188698)
1. FCEUX - debugging,hacking,playing

2. Nestopia - Really only use this for 2 player netplay gaming only these days. The Tecmo Super Bowl community uses this with kaillera peer to peer to play games against each other.

3. Mesen - keeping this on my watch list due its growing list of features. Haven't had a chance to test its netplay or how stable it is lately. Seemed to have some issues with crashing or not keeping a steady frame-rate before but that might have been the early builds.
Re: Your NES emulator of choice?
by on (#188709)
You see... that's sad, but an expected (partial) result: FCEUX.

People do not care about accuracy, but mostly "a toy to play & mess up the things". Who needs accuracy if the emulator supports TSA runs?
I won't vote in my own emulator for obvious reasons, but yes, it's the only one I use for gameplays. The others are a reference for accuracy and certain behaviour while emulating.
Re: Your NES emulator of choice?
by on (#188715)
NESTopia generally, unless I want a debugger or other useful debug features of FCEUX. FCEUX's palette is abysmal.
Re: Your NES emulator of choice?
by on (#188722)
Just because FCEUX is winning, that doesn't mean it's better than all other emulators in every aspect. FCEUX is certainly inaccurate, but it has so many tools to help with game development and analysis that you just can't ignore it. This is a development forum after all, so I don't find it surprising that the emulator with the best debugging features is ahead in the poll.

I absolutely wish there was an emulator with the 3 things I consider essential:

1- CPU/PPU/APU accuracy;
2- debugging tools;
3- proper video output (correct aspect ratio, NTSC artifacts);

Unfortunately, such an emulator doesn't exist, so I end up having to use 3 different emulators.
Re: Your NES emulator of choice?
by on (#188723)
tokumaru wrote:
1- CPU/PPU/APU accuracy;
2- debugging tools;
3- proper video output (correct aspect ratio, NTSC artifacts);
Seriously, look again at Mesen.
Re: Your NES emulator of choice?
by on (#188724)
Mesen might be one of those that required stuff to be installed (C++ runtime?) that my Windows 7 refused to install, so I simply couldn't try it. I'm on Windows 10 now, with all this stuff installed already, so I guess I could give it a try.
Re: Your NES emulator of choice?
by on (#188726)
I think its more reasonable to say people don't necessarily care about small differences in accuracy MOST of the time. At that point everything else becomes more important.

When they are concerned they will check things on a more accurate emulator/real hardware.

A somewhat apt analogy is why Ipod's won out over creative labs players. Ipods didn't really have better sound but had a much friendlier use interface, better look, etc. And obviously better marketing. The sound was good enough for most.
Re: Your NES emulator of choice?
by on (#188728)
tokumaru wrote:
Just because FCEUX is winning, that doesn't mean it's better than all other emulators in every aspect.

It's in the question - your emulator of choice, so it IS the choice.
Quote:
FCEUX is certainly inaccurate (...). This is a development forum after all, so I don't find it surprising that the emulator with the best debugging features is ahead in the poll.

An inaccurate emulator shouldn't be used for homebrew production/testing. Instead, Nintendulator is the best rational choice.

Quote:
I absolutely wish there was an emulator with the 3 things I consider essential:

1- CPU/PPU/APU accuracy;
2- debugging tools;
3- proper video output (correct aspect ratio, NTSC artifacts);

Unfortunately, such an emulator doesn't exist, so I end up having to use 3 different emulators.

Care to list the "best debugging features" of FCEUX?
Re: Your NES emulator of choice?
by on (#188731)
Some of my favorite fceux debugger features:

1. Conditional breakpoints...this is huge
2. Being able to step into out of and over routines. Typical debugger stuff.
3. Right-Click clicking on current location take you directly to the rom location where you can edit the rom using the built in hex editor
4. Code and data logging highlighting.


5. Being able to add labels addresses, variables,etc
6. Debug screen is layed out nicely visually and re-sizeable
7. Display of current stack
Re: Your NES emulator of choice?
by on (#188732)
Zepper wrote:
Care to list the "best debugging features" of FCEUX?

1- Real-time CPU debugging with symbolic disassembly, stepping, breakpoints, cycle count, etc.;
2- Assembler (you can type code after clicking at the left of the disassembly window);
3- Real-time memory editor (RAM, ROM, VRAM/ROM, OAM, etc.);
4- Name table viewer with scroll, mirroring and tile information;
5- Pattern table viewer with selectable palettes and 8x16 mode;
6- "show on scanline X" option when viewing PPU stuff;
7- Visibility toggle for sprites and background;
8- Floating windows that I can arrange in the most convenient way;

These are the ones I use more frequently. One thing that FCEUX is missing is a sprite viewer. It does however have Lua scripting, which allows me to write my own code to debug things that aren't natively debugged, and to check the state of specific games as I reverse engineer them.

I just tried Mesen's debug tools and they're very interesting too. It does many of the things FCEUX does, and even some new things.
Re: Your NES emulator of choice?
by on (#188733)
As expected, nothing unusual from other emulators. Even my emulator can patch any memory in real time. Nintendulator (and many others) have that debugger - of setting up breakpoints, memory viewer and so on. Even NESticle had nametable, pattern table and palette viewer, and using that GUI. ^_^;;

I'd say that FCEUX supports Lua scripts, plus the choice for TASes.
Re: Your NES emulator of choice?
by on (#188734)
Yes, Nesticle's PPU debugging tools were what made me want to program for the NES. For the first time I could see how a game console worked.

As for CPU debugging, I don't think many emulators present it as dynamically as FCEUX does. All the information and options are right there, the breakpoints are easily editable, you can assemble new code on the spot (i.e. hack in real-time without having to use hex), and so on. It's very comfortable to use, and that's what makes the difference.
Re: Your NES emulator of choice?
by on (#188735)
NESticle let you edit VROM in real-time. It was really neat to modify it and watch the character change as the tiles did.
Re: Your NES emulator of choice?
by on (#188736)
mikejmoffitt wrote:
NESticle let you edit VROM in real-time. It was really neat to modify it and watch the character change as the tiles did.

Indeed, as I said. 8-)
Re: Your NES emulator of choice?
by on (#188738)
I too started with NESticle's CHR editor. The failure of changes made there to CHR RAM games to persist is what led me to NESdev in the first place.

So anyway, I use FCEUX because it runs at full speed on a 10" laptop. I use a 10" laptop because it fits in a nondescript bag that I carry on the bus to and from work.

I just tried Nintendulator 0.975 in Wine 1.6.2 in Xubuntu 16.04 on a Dell Inspiron mini 1012 with a 1.6 GHz Atom CPU, and I got 30 to 40 FPS with 9 frameskip. This is despite the claim that "a 1500MHz (estimated) or faster CPU is required to emulate at full speed" on Nintendulator's website. Usually the Atom is comparable to a similarly clocked P4, but something must have been holding it up.

FCEUX for Windows in Wine, for comparison, gives me 60 FPS. That's why I compile FCEUX (SDL) from SVN (instructions) and use it for play testing, use FCEUX for Windows for step debugging and testing with obscure controllers, and use a PowerPak for hardware testing. If laptop makers hadn't largely dropped the 10" size at the end of 2012 to chase the higher profit margins of tablets, I'd be using a newer laptop and something more accurate.
Re: Your NES emulator of choice?
by on (#188741)
You might like the Japanese high-end PC market. I picked up a Panasonic CF-RZ5 while in Akihabara, which I use more or less exclusively in regular laptop mode. The trackpad has actual buttons, and a nice 1920x1200 10" IPS screen. I did a good amount of the development for my compo game on that computer on the airplane. It weighs 1.6 lbs.
Re: Your NES emulator of choice?
by on (#188743)
Then let me rephrase: I use FCEUX because a Panasonic RZ series laptop to run Nintendulator at full speed would cost $1,749 (source: Liliputing), which is well over five times what I paid for this one, and the sort of rasterbation that demands the extra accuracy is not a regular part of my style.
Re: Your NES emulator of choice?
by on (#188755)
Zepper wrote:
An inaccurate emulator shouldn't be used for homebrew production/testing. Instead, Nintendulator is the best rational choice.

The term inaccurate is not a binary yes/no proposition, except when applied to specific cases. FCEUX is completely accurate for a lot of cases, it is inaccurate for some cases. (I think part of its poor reputation comes from the legacy "old PPU" being the default setting, too.)

What matters is whether the emulator is accurate enough to do the job you want it to.

Once I got past the learning curve of some typical inaccuracy issues (e.g. DPCM bit deletion), I found I could easily spend most of my time testing in FCEUX without fear it was going to fail on the real hardware. I still test occasionally on hardware (and other emulators) just to be sure, but it's been a very long time since I've been surprised by something that slipped past its "inaccurate" emulation.

Overall I think it is really quite accurate for almost everything I want to do. (But not completely, which is why I sometimes need Nintendulator, though even an "accurate" emulator like Nintendulator has its limits.)


You mention that many of these features appear in other emulators, but FCEUX has all of those features at once, and most of them are implemented well. Nintendulator has a pretty good debugger, but I find it inconvenient in many ways compared to FCEUX's. Also its movie playback, TAS, and lua scripting all can help tremendously with debugging. Being open source is a huge plus too.

The only debug feature it seems to be missing compared to other emulators is a good OAM viewer, though there are some good lua script alternatives.
Re: Your NES emulator of choice?
by on (#188765)
FCEUX is so prevalent that I wouldn't consider releasing a ROM that didn't work on it.
Re: Your NES emulator of choice?
by on (#188943)
M_Tee wrote:
Any recommendations for that would be welcome.


I like NES.emu (and all the other emulators ) by Robert Broglia. It's based on fceux, but with a well-designed configurable virtual game pad. He uses the same UI bits across his emulators, so once you figure out what you like, you can reuse it for others.

It's not free, not even super cheap. But it's worth it if you actually want to play emulated games.
Re: Your NES emulator of choice?
by on (#188945)
Thanks. I bought NGP.emu long ago. Just recently reinstalled it. It's pretty good.
Re: Your NES emulator of choice?
by on (#189500)
tokumaru wrote:
Mesen might be one of those that required stuff to be installed (C++ runtime?) that my Windows 7 refused to install, so I simply couldn't try it. I'm on Windows 10 now, with all this stuff installed already, so I guess I could give it a try.
Very early builds of Mesen were dynamically linked to the VC++ runtime, but that changed around april last year or so. On an up-to-date Windows 7+, Mesen shouldn't require anything to be installed to run properly. A bit late of a reply, but figured I should mention this!

hackfresh wrote:
3. Mesen - keeping this on my watch list due its growing list of features. Haven't had a chance to test its netplay or how stable it is lately. Seemed to have some issues with crashing or not keeping a steady frame-rate before but that might have been the early builds.
Netplay should be working properly, as far as I know (it's also supposed to work cross-platform). As for crashes, other than the one recently posted for the Linux build, I'm not aware of anybody getting issues (though this may just be a case of people not bothering to report the crashes).


As for the debugger tools in Mesen, there's definitely a few things missing to match FCEUX's debugger (hard to catch up to an emulator that's been in development for a decade!) - though I think it may offer a thing or two that FCEUX is missing (and I think it has pretty much all the debugger features that Nintendulator & no$nes offer?). There's still a fairly lengthy list of features I want to add to it eventually, I just haven't had much time to dedicate to Mesen lately. Like I said before though, I'm more than happy to try and improve the debugger if anyone has any feedback about it.
Re: Your NES emulator of choice?
by on (#189505)
My Windows 7... well, it had problems. I just couldn't get the recent C++ runtime installed. No matter what I did, the installation would always hang halfway through. Not a problem anymore though.

Sour wrote:
I'm more than happy to try and improve the debugger if anyone has any feedback about it.

I really liked what I saw when I finally got to try it. I'm glad that feedback is appreciated.
Re: Your NES emulator of choice?
by on (#189570)
Personally, i like nestopia (for great accuracy/performance balance) and puNES/Mesen.
All of them are pretty accurate and have lot of stuff for end-user.
Also, all of them have ntsc/pal hybrid ("dendy-mode") support, which is important for me.
Re: Your NES emulator of choice?
by on (#190338)
Just to let you know... RockNES works at 60FPS in my Intel Atom N450 1.67GHz, using blitter 256x240 in 1024x600, no vsync. With vsync enabled, the frame rate drops a bit. At 2x size (512x480), the speed drops between 30~45FPS.
Re: Your NES emulator of choice?
by on (#190347)
Sounds like you need triple buffering, that way you get synchronized frames without waiting before each frame, but at a cost of up to a frame of input lag.
Re: Your NES emulator of choice?
by on (#190348)
I remember to have played Rocknes in DOS many years ago!!
It was the only emulator that I could play Castlevania 3 without big issues.

I used the old SNESKey with 2 Dynavision joysticks on the parallel port, and that was great!!
I also used Nesticle, Genecyst, ZSNES and Callus for DOS, with Tyrian, Doom and other DOS games, all with the same joysticks.
I think I had a Pentium 100 at the time, and it was already obsolete!!

I don't remember if I already did but, thank you for this great program!! :beer:
Do you plan to release a native Linux port? It would be great if I could add it to Kodi and play with the kids on my multiseat "gambiarra". :D