xboxscene.org forums

Author Topic: Nestopia Versus Fce Ultra  (Read 170 times)

Jagasian

  • Archived User
  • Newbie
  • *
  • Posts: 34
Nestopia Versus Fce Ultra
« on: March 01, 2006, 02:21:00 PM »

QUOTE(XPort @ Feb 11 2006, 09:51 PM) *

re: Nestopia, Nintendulator - which is better?  I understand that they have "better" compatibility than FCEUltra, but to my knowledge, FCEUltra was about 99% compatible.  Are there really that many games that don't play in FCEUltra that do in Nestopia or Nintendulator?  Can you show me details?  (Game names, etc.)  I'm all for better compatibility, but unless there is a significant improvement in that area, it's not worth it to do an entirely new project.


Nestopia is the best NES emulator because it is cycle accurate, like Nintendulator, but it is more portable and has more features.  Currently Nestopia has two finished ports: Windows and OSX.  A Linux port is in development.  Check the Nestopia forums for details and screenshots.  Nestopia also has more bells and whistles that casual gamers seem to appreciate.  Recently, Nestopia has had somewhat of a revival in development, similar to the Xport revival of late, but even before the recent drastic improvements to Nestopia, it was still considered the best NES emulator, as demonstrated by this 2004 comparison of NES emulators:
http://www.aep-emu.de/Sections-req-viewarticle-artid-87.html

If that comparison was done again today, Nestopia would be even farther ahead of the rest.  Why?  Well, while it is probably true that FCE Ultra can boot at least 95% of all NES and Famicom ROMs and FDS images, a percentage of that 95% are not emulated correctly.  They have inaccurate colors, sound, video, and additional glitches not present on a real NES or Famicom.  Then there are all of the peripherials that FCE Ultra doesn't support at all, as well as the games that won't even boot.  Nestopia, like Nintendulator, has reached a certain state of NES emulation perfection, which people call "cycle accurate" emulation.  Other than bug fixes and support for new obscure peripherials and pirate mappers, which will always be necessary, it isn't possible to significantly improve the accuracy, compatibility, and quality of Nestopia's emulation, as it runs NES and Famicom games exactly the same way real hardware would, cycle-per-cycle of the CPU and PPU.

Here is a comparison of screenshots taken from Nestopia, the latest FCE Ultra, and a real "toaster" NES hooked up to a TV capture card.  The pictures are not listed in any order.  Can you tell which one is which?  Of course, FCE Ultra sticks out like a sore thumb, but only a true expert can tell the difference between Nestopia and a real NES:
(IMG:http://img385.imageshack.us/img385/6624/emuorvideo17jx.png)

(IMG:http://img354.imageshack.us/img354/3531/emuorvideo21sg.png)

(IMG:http://img456.imageshack.us/img456/5957/08kp.png)
The fact that such a stark difference between the accuracy of Nestopia and FCE Ultra's emulation can be captured in a still screenshot of a very easy to emulate game, implies that actually playing a game, especially a more difficult to emulate game will have an even more noticable difference in emulation quality.  Similarly, there are many games that aren't playable on FCE Ultra, yet are playable on Nestopia.  Switching to Nestopia would mean that from then on out, only small, minor improvements would need to be made to the Xport NES emulator in the future, which means that you could truely wash your hands of NES emulation on the Xbox.

If somebody has a list of games and peripherials which are not playable with FCE Ultra, yet are playable with Nestopia, please post the info.  Finally, here is the link to Nestopia's home page:
http://nestopia.sourceforge.net/


This post has been edited by Jagasian: Mar 1 2006, 10:25 PM
Logged

Diontae18

  • Archived User
  • Sr. Member
  • *
  • Posts: 386
Nestopia Versus Fce Ultra
« Reply #1 on: March 01, 2006, 06:03:00 PM »

Very intriguing

 (IMG:style_emoticons/default/wink.gif)
Logged

Likklebaer

  • Archived User
  • Hero Member
  • *
  • Posts: 767
Nestopia Versus Fce Ultra
« Reply #2 on: March 01, 2006, 06:20:00 PM »

While I fully appreciate the appeal of accurate emulation, I just don't think it's worth XPort taking the time port another NES emulator when FCE-UltraX is already so close to perfection in terms of features and compatibility. Personally, if he were planning on turning his hand to a new port, I'd rather see something entirely new.

You'd probably be better off posting this in the Emulation forums since you may get some interest from other devs who perhaps don't have an existing NES project.
Logged

Opoth

  • Archived User
  • Jr. Member
  • *
  • Posts: 52
Nestopia Versus Fce Ultra
« Reply #3 on: March 01, 2006, 06:35:00 PM »

If anything is in need of a better emulator, it's not NES, it's Master System/Game Gear with Meka.  I think FCEUltra is already accurate enough, especially if XPort decides to update to the final sources released of it.
Logged

lenocinor

  • Archived User
  • Newbie
  • *
  • Posts: 15
Nestopia Versus Fce Ultra
« Reply #4 on: March 02, 2006, 01:16:00 AM »

Some rebuttals to your points:

As I mentioned in my posts in the request thread, a few VS games and a few Sachen games are playable on FCE Ultra but not on Nestopia. There may be others but that's what jumped out at me first. Nestopia does play a lot more games, but from a cursory inspection of the supported mapper list it looks like virtually all the Nestopia exclusives are bootlegs, with a few unlicensed games and hacks thrown in; I was wrong in my other post about the new FCE Ultra supporting them better (from what I've seen). However, many of the bootleg games are  still covered in FCE Ultra, and many of the uncovered ones are simply copied from other bootlegs with a different mapper. Besides, most bootleg games stink anyway. (IMG:style_emoticons/default/smile.gif)

Nestopia does support more peripherals too, but as I mentioned in my other post, most (maybe all?) of them are obscure Japanese peripherals, which again I feel aren't that important.

As far as other differences go, I compared the sound in FCE Ultra to many of the real games I own, and in almost all games the sound is quite close, if not identical. (Metal Gear was a notable exception during my testing.) I also have yet to notice a glitch happening in FCE Ultra that doesn't happen on the real thing for games that I own. If you know of examples please feel free to list them.

You mention cycle-exact emulation also, but I rebutted that already in my other posts. Short version: FCE Ultra has cycle-accurate PPU and sound, which covers most of the benefit of cycle-exact emulation anyway.

The main differences in those screenshots are:

1. Incorrect palette on the FCE Ultra screenshot. This can be mostly fixed by loading an external palette.

2. Lack of scanlines in FCE Ultra. Those who play on conventional TVs will never notice the difference, as scanlines are naturally part of the output signal. If you play on an HDTV, you would notice the difference, but scanlines have nothing to do with emulation accuracy anyway; it's an artifact of the medium you choose to play the signal back on. It's a nice feature to emulate the "TV feel" with emulated scanlines on a monitor or HDTV but including it is optional for accurate emulation.

3. Cutting off of the borders on the FCE Ultra screenshot. This is the only real graphics emulation problem, and I'm not sure why this happens - could it be something to do with the viewport being set improperly, or are those lines really not being emulated anywhere? It could be trying to emulate TVs better (many TVs cut off significant portions of the borders) but this would be a bad thing for an XBox emulator to do.

4. The picture is also stretched vertically but this can be easily remedied by setting the viewport to the correct aspect ratio. It's merely set at 640x480 for convenience's sake in fullscreen play.

At any rate, as I also mentioned in the other post, the recommended tech specs for full-speed Nestopia ask for almost twice the CPU speed and four times the RAM that a stock XBox has, so I can't see a port being feasible without a large amount of frameskipping. I think Nestopia is a great emulator, and I use it some on my PC, but the minor benefits above cannot overcome the huge detriment of its additional hardware requirements for Xbox emulation.
Logged

TwigFigure

  • Archived User
  • Newbie
  • *
  • Posts: 41
Nestopia Versus Fce Ultra
« Reply #5 on: March 02, 2006, 05:15:00 AM »

Somehow, I don't think Burger Time's mapper is supported on FCEUltraX. Graphics are really screwed.
Logged

Opoth

  • Archived User
  • Jr. Member
  • *
  • Posts: 52
Nestopia Versus Fce Ultra
« Reply #6 on: March 02, 2006, 08:13:00 AM »

QUOTE(TwigFigure @ Mar 2 2006, 12:46 PM) *

Somehow, I don't think Burger Time's mapper is supported on FCEUltraX. Graphics are really screwed.


Really?  Are you sure you're using the correct dump of the ROM?  I just fired it up and played the first stage, it seems to work fine here.

AFAIK almost every licensed game is emulated correctly other than the leveling up problem in Just Breed, and the sound is kind of annoying in FF3j.  I know Just Breed is fixed in the later FCEU sources, and I think the sound is too.
Logged

Jagasian

  • Archived User
  • Newbie
  • *
  • Posts: 34
Nestopia Versus Fce Ultra
« Reply #7 on: March 02, 2006, 10:18:00 AM »

lenocinor,

FCE Ultra's PPU is definitely not cycle accurate!  AFAIK, it doesn't correctly emulate the PPU behavior of Micromachines, which is a sign that FCE Ultra is not emulting the PPU in a cycle accurate fashion.  Furthermore, the graphics in FCE Ultra cannot be fixed by merely loading a custom pallete and enabling scanlines.  I actually took that FCE Ultra screenshot with scanlines enabled, but the screenshot doesn't contain the scanlines for some reason.  But realize this, the difference between the real NES and FCE Ultra is even greater when FCE Ultra's scanline feature is enabled!  Give it a shot for yourself.  Load up the latest version of FCE Ultra on your PC and try to enable scan lines.

Nestopia actually emulates the digital to analog converter inside the original NES, which is why its video is nearly identical to a real NES.  Here are two threads which discuss the efforts of a "wave form accurate" emulation of a real NES's video output:
http://nesdev.parodius.com/bbs/viewtopic.php?t=930
http://nesdev.parodius.com/bbs/viewtopic.php?t=1071

In short, the color of a pixel is influenced by nearby pixels, and scanlines are not aligned perfectly in a square grid.  Instead, they zig-zag back and forth.  There is quite allot more detail that goes into correctly emulating NES video, as Nestopia does, than just enabling scanlines, which would simply draw a black line every other line.  Then there is the ghosting effect.  Look closely at those 3 screenshots again.  It takes an expert to tell the difference between the real NES and Nestopia, but even a casual gamer can tell the difference between FCE Ultra and a real NES.

Hook up a real NES to the same TV as FCEUX.  I've done it, and the difference is quite huge, even after tweaking overscan settings and pixel filter settings.  Or hook up a real NES to your PC and load the latest FCEU with scanlines enabled.  There is still a world of a difference.

With regards to some VS games not working correctly, this Nestopia bug as been fixed:
http://www.bannister.org/ubb/ultimatebb.ph...c;f=36;t=000035

...again, any emulator will always require small bug fixes now and then.  The difference is that Nestopia has a better underlying design, while FCE Ultra is limited in its design.  With regards to the Sachen games, their mapper is supported.  If you have found a bug, you might want to report it:
http://www.bannister.org/ubb/ultimatebb.ph...c;f=36;t=000041

Finally, unlike FCE Ultra, Nestopia is being very actively developed.  So the gap between FCEU and Nestopia grows, while the gap between real NES and Nestopia shrinks:
http://www.bannister.org/ubb/ultimatebb.ph...c;f=36;t=000017

One last note, which I should have made with my first post.  The two screenshots above were made by blargg, who is actively researching and developing improving the accuracy and efficiency of the NES NTSC DAC emulation used in Nestopia.  I wanted to point that out so people don't think that I am stealing credit for his screenshots.

This post has been edited by Jagasian: Mar 2 2006, 06:35 PM
Logged

Opoth

  • Archived User
  • Jr. Member
  • *
  • Posts: 52
Nestopia Versus Fce Ultra
« Reply #8 on: March 02, 2006, 10:58:00 AM »

QUOTE(Jagasian @ Mar 2 2006, 05:49 PM) *

lenocinor,

FCE Ultra's PPU is definitely not cycle accurate!  AFAIK, it doesn't correctly emulate the PPU behavior of Micromachines, which is a sign that FCE Ultra is not emulting the PPU in a cycle accurate fashion.  Furthermore, the graphics in FCE Ultra cannot be fixed by merely loading a custom pallete and enabling scanlines.  I actually took that FCE Ultra screenshot with scanlines enabled, but the screenshot doesn't contain the scanlines for some reason.  But realize this, the difference between the real NES and FCE Ultra is even greater when FCE Ultra's scanline feature is enabled!  Give it a shot for yourself.  Load up the latest version of FCE Ultra on your PC and try to enable scan lines.




Right, but what good is all that if the Xbox doesn't have the juice required to make it run reliably?  I'm sure most people, myself included, are going to say that FCEU looks and feels enough like a real NES 99% of the time, whereas the alternative might let you play a few obscure unlicensed games and some improved video, but at a much slower speed given the limitations of the hardware.  Joe Sixpack probably doesn't care about Sachen games, but they do care about playing say, The Legend of Zelda at 60 FPS.  I wouldn't mind and would probably switch to a port of Nestopia, provided the source could somehow be optimized to run at fullspeed on an Xbox, but from the sound of things (and I don't necessarily want to speak for him) XPort doesn't seem interested in taking on a project of that magnitude at this point.  It would be wonderful in theory, just not very practical.
Logged

lenocinor

  • Archived User
  • Newbie
  • *
  • Posts: 15
Nestopia Versus Fce Ultra
« Reply #9 on: March 02, 2006, 11:20:00 AM »

QUOTE(Jagasian @ Mar 2 2006, 11:49 AM) *

lenocinor,

FCE Ultra's PPU is definitely not cycle accurate!  AFAIK, it doesn't correctly emulate the PPU behavior of Micromachines, which is a sign that FCE Ultra is not emulting the PPU in a cycle accurate fashion.  Furthermore, the graphics in FCE Ultra cannot be fixed by merely loading a custom pallete and enabling scanlines.  I actually took that FCE Ultra screenshot with scanlines enabled, but the screenshot doesn't contain the scanlines for some reason.  But realize this, the difference between the real NES and FCE Ultra is even greater when FCE Ultra's scanline feature is enabled!  Give it a shot for yourself.  Load up the latest version of FCE Ultra on your PC and try to enable scan lines.

Nestopia actually emulates the digital to analog converter inside the original NES, which is why its video is nearly identical to a real NES.  Here are two threads which discuss the efforts of a "wave form accurate" emulation of a real NES's video output:
http://nesdev.parodius.com/bbs/viewtopic.php?t=930
http://nesdev.parodius.com/bbs/viewtopic.php?t=1071

In short, the color of a pixel is influenced by nearby pixels, and scanlines are not aligned perfectly in a square grid.  Instead, they zig-zag back and forth.  There is quite allot more detail that goes into correctly emulating NES video, as Nestopia does, than just enabling scanlines, which would simply draw a black line every other line.  Then there is the ghosting effect.  Look closely at those 3 screenshots again.  It takes an expert to tell the difference between the real NES and Nestopia, but even a casual gamer can tell the difference between FCE Ultra and a real NES.

Hook up a real NES to the same TV as FCEUX.  I've done it, and the difference is quite huge, even after tweaking overscan settings and pixel filter settings.  Or hook up a real NES to your PC and load the latest FCEU with scanlines enabled.  There is still a world of a difference.

With regards to some VS games not working correctly, this Nestopia bug as been fixed:
http://www.bannister.org/ubb/ultimatebb.ph...c;f=36;t=000035

...again, any emulator will always require small bug fixes now and then.  The difference is that Nestopia has a better underlying design, while FCE Ultra is limited in its design.  With regards to the Sachen games, their mapper is supported.  If you have found a bug, you might want to report it:
http://www.bannister.org/ubb/ultimatebb.ph...c;f=36;t=000041

Finally, unlike FCE Ultra, Nestopia is being very actively developed.  So the gap between FCEU and Nestopia grows, while the gap between real NES and Nestopia shrinks:
http://www.bannister.org/ubb/ultimatebb.ph...c;f=36;t=000017

One last note, which I should have made with my first post.  The two screenshots above were made by blargg, who is actively researching and developing improving the accuracy and efficiency of the NES NTSC DAC emulation used in Nestopia.  I wanted to point that out so people don't think that I am stealing credit for his screenshots.

I hadn't realized the DAC and the other factors contributed significantly to video quality. Kudos to them, then, for figuring it out and implementing it, and that's a significant difference in emulation quality for those playing on monitors. Thanks for linking me to the threads; as a video nerd I find them quite interesting. (IMG:style_emoticons/default/smile.gif)

Still, it's accurate factors like that which slow the emulator down. Blargg talks about needing a GHz PC for his emulator to implement these graphics, which is probably unacceptable for an Xbox emulator, and that's just the video!

Also, the stuff they are doing is emulating aspects of NTSC, which look great on a monitor, but can actually make the signal look a lot worse on conventional TV (which most Xbox owners use for output) because you're performing the NTSC translations twice.

Thanks also for pointing out that the games I mentioned are now emulated in Nestopia. I was merely going from the documentation for Nestopia, which I guess hasn't been updated yet to reflect the changes.

As far as FCE Ultra's PPU not being cycle-accurate, it says in the documentation: "CPU-instruction granularity for special mid-scanline effects(mostly CHR switching, such as used in 'Pirates!', 'Marble Madness', and 'Mother')." Now, yes, I know that technically CPU-instruction granularity != cycle-accurate, but it should if it is implemented properly. You mention Micro Machines as an example of non-cycle-accurate emulation, but even the "cycle-accurate" Nestopia did not emulate it properly at first. It has to do with very low-level behavior of the PPU, which couldn't be emulated properly without actually simulating the inner workings of the chip itself (or emulating a part of that behavior, which is what Nestopia is doing), and which has little to do with cycle-accuracy.

And FCE Ultra is being actively developed, as Mednafen. It is based off the last codebase of FCE Ultra and has been improved a significant amount over that. A new version came out last week, so the codebase is certianly still being actively improved. Feel free to submit these bug fixes or any others to the author to help improve the code.

This post has been edited by lenocinor: Mar 2 2006, 07:22 PM
Logged

lenocinor

  • Archived User
  • Newbie
  • *
  • Posts: 15
Nestopia Versus Fce Ultra
« Reply #10 on: March 02, 2006, 01:10:00 PM »

Update: I went and tested the real SMB1 on three TVs myself, and the overscan is pretty close to FCE Ultra's, so the first two screenshots from a real NES and Nestopia are wrong in this respect. Oddly enough, Nestopia in the default configuration produces the same overscan amount, so I wonder what settings Blargg used?

Anyway, that removes the only real graphical bug, so as far as I can tell, FCE Ultra is pretty dang accurate in this case outside of NTSC and composite effects.
Logged

Thraxen

  • Archived User
  • Hero Member
  • *
  • Posts: 677
Nestopia Versus Fce Ultra
« Reply #11 on: March 02, 2006, 10:24:00 PM »

Well, I understand wanting to have pixel perfect emulation and I'd gladly take a port of Nestopia, but to be perfectly honest, I think the screenshot of FCEU looks the best.   The colors are a bit off, but I prefer the smoother look to the rough "scanline" look that the original and Nestopia produce.   I assume Nestopia has filters and such to remove the scanlines?  

Anyway, I guess my point is that I'm not so hung up on pixel perfect emulation that I want all the original flaws too. I've never bothered activating the scanline filter in FCEU for this very reason.
Logged

Jagasian

  • Archived User
  • Newbie
  • *
  • Posts: 34
Nestopia Versus Fce Ultra
« Reply #12 on: March 03, 2006, 08:41:00 AM »

QUOTE(lenocinor @ Mar 2 2006, 08:41 PM) *

Update: I went and tested the real SMB1 on three TVs myself, and the overscan is pretty close to FCE Ultra's, so the first two screenshots from a real NES and Nestopia are wrong in this respect. Oddly enough, Nestopia in the default configuration produces the same overscan amount, so I wonder what settings Blargg used?

Anyway, that removes the only real graphical bug, so as far as I can tell, FCE Ultra is pretty dang accurate in this case outside of NTSC and composite effects.


A real NES cannot be wrong, by definition.  Overscan depends on the display device.  If you hook your NES up to a modern TV or projector that does not have any overscan, then you will see exactly what one of those first two screenshots shows because the frame of the display is not covering up part of the screen.  With regards to the pixel perfect emulation, of course Nestopia lets you disable that feature.  Also, again, scanlines as seen in all other NES emulators are absolutely not what Nestopia is doing with its pixel perfect graphics.  Nestopia is emulating the video at an analog wave form level.

I should also point out that blargg's earlier posts describe an earlier prototype of the wave form accurate video emulation, which ran very slow.  He has created a way to do the same ultra low-level emulation very fast.  Read his later posts to see the explanation.  Nestopia will have all of blargg's latest improvements, so give every new release of Nestopia a try.

Oh and you really have to see the pixel perfect video emulation that Nestopia has, in action.  There are aspects of a real NES's video that cannot be captured in still screenshots, such as dot crawl, flicker, etc.  When animated, it really looks great.  Still screenshots make everything look a little more jaggy, for both Nestopia and for a real NES.  Hence Nestopia is really on to something here.

Look, I've been a big fan of FCE Ultra for years now, and I was a fan of even less accurate emulators before that.  As processing power has improved, the ability to emulate the NES at a lower and more accurate level has become a reality.  This is the natural progression of things.  So at least give Nestopia a try on your PC.  It might just convince you that the Xbox needs a port of Nestopia (IMG:style_emoticons/default/smile.gif)  Or maybe the 360?
Logged

lenocinor

  • Archived User
  • Newbie
  • *
  • Posts: 15
Nestopia Versus Fce Ultra
« Reply #13 on: March 03, 2006, 11:21:00 AM »

QUOTE(Jagasian @ Mar 3 2006, 10:12 AM) *

A real NES cannot be wrong, by definition.  Overscan depends on the display device.  If you hook your NES up to a modern TV or projector that does not have any overscan, then you will see exactly what one of those first two screenshots shows because the frame of the display is not covering up part of the screen.  With regards to the pixel perfect emulation, of course Nestopia lets you disable that feature.  Also, again, scanlines as seen in all other NES emulators are absolutely not what Nestopia is doing with its pixel perfect graphics.  Nestopia is emulating the video at an analog wave form level.

I should also point out that blargg's earlier posts describe an earlier prototype of the wave form accurate video emulation, which ran very slow.  He has created a way to do the same ultra low-level emulation very fast.  Read his later posts to see the explanation.  Nestopia will have all of blargg's latest improvements, so give every new release of Nestopia a try.

Oh and you really have to see the pixel perfect video emulation that Nestopia has, in action.  There are aspects of a real NES's video that cannot be captured in still screenshots, such as dot crawl, flicker, etc.  When animated, it really looks great.  Still screenshots make everything look a little more jaggy, for both Nestopia and for a real NES.  Hence Nestopia is really on to something here.

Look, I've been a big fan of FCE Ultra for years now, and I was a fan of even less accurate emulators before that.  As processing power has improved, the ability to emulate the NES at a lower and more accurate level has become a reality.  This is the natural progression of things.  So at least give Nestopia a try on your PC.  It might just convince you that the Xbox needs a port of Nestopia (IMG:style_emoticons/default/smile.gif)  Or maybe the 360?

One of the TVs I hooked it up to was a Sony WEGA, so I hope that counts as modern. (IMG:style_emoticons/default/smile.gif) I even turned off overscan on it, and the framing was still pretty close. Unless you mean HDTV, of course, in which case yeah, there won't be any overscan. All the TVs I used for testing were conventional TVs.

I said it wasn't just scanline stuff, I agree with you about that. I was misinformed and did not realize how much work Blargg had put into making an NTSC composite simulation. I'm glad he's working with the Kega and zSNES teams to implement it in more emulators. It's a real boon for PC players, and an exciting development for console emulation in general.

I do use Nestopia regularly, as you can see from my posts, and you're right, if you're looking for the TV experience on a monitor Nestopia does capture it really well. I like Nestopia lots and use it on my PC often. The only case I've been trying to make here is for why Nestopia shouldn't be used as an XBox emulator, especially when we have to make a choice of only one emulator to port. If there's a later platform that people are porting to that can handle Nestopia's more accurate and more resource-intensive emulation, then I say more power to them. It's just that on the XBox you still have to make some choices in that regard, and though I'm a big fan of compatibility as well, I think full speed (as opposed to fairly intense frame-skipping) is much more important than the minor compability benefits in this case.
Logged