• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Best NES, SNES and GBA Emulators

nes mini
snes mini

I can only assume this is sarcasm as the nes classic emulation was no where near the quality available to those with a pc.

Is Higan already included in Retroarch or are you supposed to apply it?

I downloaded it seperately but I couldn't figure out how to put it in the core folder.

Higan is not in retroarch but the slightly older bsnes is. If you are talking about the pc version then you use the online updater to download the cores.

I'm surprised people want that rounded edges look.

My theory is that most of these people never played the games on original hardware with a crt back in the day. So these modern gamers with a focus on anti aliasing 3d rendered content push those standards over to 2d sprite work as well.

There's some kind of higan there, but it's not the latest. Dunno if that's due to squarepusher's hatred of byuu or just a lack of people to maintain it. Possible one of the forks they offer is up to date, though I don't use it so can't say one way or the other

Its not the latest but all the updates from newer versions have been backported according to the devs who post on reddit. But generally they have the attitude that they shouldn't be the ones having to update cores, its the job of the emulation authors themselves and byuu has stated that he isn't going to due it due to the inclusion of the mercury fork if I'm not wrong. So really we are lucky that the bsnes core is as up to date as it is considering how the standalone is a pain without a gsync monitor.
 

byuu

Member
If anyone were considering trying higan official, I should warn that I had to drop the much faster balanced profile both for ideological reasons and resource limitations. hex_usr's nSide emulator has taken over maintaining said port, so if higan runs too slowly, I'd highly recommend nSide.

I know the higan dev byuu was and is still furious that retroarch included it.

Was going to stay out of it, but since this is being discussed by others ...

bsnes-mercury is a hatchet job on core portions of the emulator to eke out small speed gains, overclocking the SuperFX violates accuracy, and the author also reverted the DSP coprocessor emulation that was the result of years of research for buggier, less accurate HLE from previous versions. This has undermined my fight for groups like No-Intro to more sanely handle SNES game coprocessor firmware files.

I don't care if they're "optional", Alcaro intentionally went against everything I stand for in emulation in making that, and this is a subject I feel very strongly about. Yes, he has that right. The GPL is giving everyone something and hoping they don't abuse your trust. It doesn't always work out.

If the optional hacks are off, then it serves no purpose over stock bsnes. I added the only significant speedup of his that did not affect accuracy to higan official. If you want to use mercury for speed reasons, you're much better off using an emulator designed to compromise accuracy for speed and stick with Snes9X. The latest release is very reasonable here, and it has a far better speed-to-accuracy ratio than mercury does, and comparable compatibility.

It's also worth noting that both cores in Retroarch are based on higan v094, which was from January 2014. There have been substantial SNES emulation improvements over the past four years to higan.

But ... if someone is okay with what mercury stands for and wants to run it anyway, then to each their own. But please don't associate the project with higan/bsnes or make claims to its accuracy being comparable to the official releases. Probably the biggest reason it concerns me is that it's taking name recognition credit for the work I put into accurate SNES emulation and perverting it.

Whilst bsnes in retroarch is an older version of Higan all the changes get backported so its up to date.

They most certainly do not. That would be ten times more work, and introduce more accidental bugs, than just simply porting new versions.

Why is he (Squarepusher/TwinAphex/DanteAli/etc) so mad at everyone?

He has serially stalked, harassed and defamed me online for the past seven or so years. I stayed quiet on this almost the entire time, but I'm not going to stay silent on this any longer.

Is it because he was not trying to make money and they were?

He's making over $1,000 a month on Patreon, ironically off others' emulation cores, such as mine.

I have a Patreon, too. $260 a month here. Every dollar I spend is documented and mostly goes towards redumping the SNES game library. I have already found three bad dumps and two new game revisions, and provided high-resolution scans for the entire US library to SNES Central. I'm actually around $30,000 in the red at the moment due to me purchasing the full Japanese Super Famicom set, but upon selling it, I'm likely to come out ahead.

Uh no, it's just a few optimizations, it doesn't differ from bsnes all that much, and reenables the possibility to use HLE special chip emulation.

People can believe whatever they want. I've seen it, I am the original author of the project, and I say it is. DSP HLE is an absolutely massive hack. Instead of properly emulating each CPU instruction, it runs simulations of entire functions written in C with no timing emulation (everything completes instantly), and with known calculation inaccuracies in all but the DSP-1 core. DSP HLE wasn't a "removed feature", it was a stopgap measure before we were able to extract the firmware from said coprocessors.

I don't know why Retroarch devs have such a fight in people using Alcaro's fork over mine.
 
They most certainly do not. That would be ten times more work, and introduce more accidental bugs, than just simply porting new versions.

Huh, so they were straight up lying when they claimed to be doing the work of backporting any updates.

Quick question. Is there any chance that we could see some form of dynamic rate control in Higan as an option. As much as I would love to use it the screen tearing with no vsync or audio issues with it on make the experience pretty awful on my standard hdtv. Understand you may see this as a regression or against to goal of accuracy but from a users point of view some sort of sync to refresh would be amazing.

Thanks for your hard work, its very much appreciated.
 
byuu <3

Huh, so they were straight up lying when they claimed to be doing the work of backporting any updates.

Quick question. Is there any chance that we could see some form of dynamic rate control in Higan as an option. As much as I would love to use it the screen tearing with no vsync or audio issues with it on make the experience pretty awful on my standard hdtv. Understand you may see this as a regression or against to goal of accuracy but from a users point of view some sort of sync to refresh would be amazing.

Thanks for your hard work, its very much appreciated.

This would be very useful. Don't really have the wonga to spend on a gsync monitor & nvidia card.

For years I used Visual Boy Advance.

I suppose there are far better emulators nowadays.

mgba or higan are best for gba.
 

Radius4

Member
Huh, so they were straight up lying when they claimed to be doing the work of backporting any updates.

Quick question. Is there any chance that we could see some form of dynamic rate control in Higan as an option. As much as I would love to use it the screen tearing with no vsync or audio issues with it on make the experience pretty awful on my standard hdtv. Understand you may see this as a regression or against to goal of accuracy but from a users point of view some sort of sync to refresh would be amazing.

Thanks for your hard work, its very much appreciated.

Many of the relevant updates to the bsnes core have been incorporated.
Particularly the ones byuu alerted forks to perform.

If anyone were considering trying higan official, I should warn that I had to drop the much faster balanced profile both for ideological reasons and resource limitations. hex_usr's nSide emulator has taken over maintaining said port, so if higan runs too slowly, I'd highly recommend nSide.. blah blah blah

We don't actually promote any fork (or core for the matter) over another.

That said. I see someone stalking anything loosely related to libretro/mercury now instead of it being the other way around..

You need at least two people to keep an argument going and you have done your fair share to keep the flame burning.
 

byuu

Member
Huh, so they were straight up lying when they claimed to be doing the work of backporting any updates.

I don't doubt that they have backported some of the more major issues noted in my release changelogs.

But I am 100% positive they have not backported every SNES emulation improvement over the past four years. Doing so would be a monumentally psychotic undertaking. It's not just lines of code that have changed, the entire structure of the emulator has been revamped. Backporting would be very difficult.

I should add here: the Emulator::Interface abstraction that libretro relies on has barely changed. So the above is not an excuse as to why v094 is still being used four years later.

Is there any chance that we could see some form of dynamic rate control in Higan as an option.

I would love to add it, but audio processing is not my specialty. Every attempt I've made at implementing it has failed. I would welcome any third-party assistance to add this in.

But please also note its limitations: your monitor refresh rate will have to match. Most games run at 60fps, but PAL games run at 50fps, and Wonderswan games run at 75fps. Some systems that higan emulates can dynamically alter the exact frame rate during gameplay as well. Only adaptive sync can support all systems at the same time without constant mode changes.

Understand you may see this as a regression or against to goal of accuracy but from a users point of view some sort of sync to refresh would be amazing.

Nah, I'm quite disappointed in nVidia for making G-sync a premium luxury feature. No one should have to pay a $100 markup for the feature. And no one should have to suffer AMD's Windows drivers for FreeSync.

You need at least two people to keep an argument going and you have done your fair share to keep the flame burning.

Bullshit. I said nothing for several years, and your leader persisted the entire time.

This thread brought the issue up and started quoting me, so I clarified.

Go look at all of SP's posts (goes by DanteAli here) in the higan v104 thread:
https://www.reddit.com/r/emulation/comments/6t80g1/multisystem_emulator_higan_v104_released/

Or almost any other threads pertaining to me, for that matter. Count the number of times I replied to him. Let me know when you make it to one.

Now go find posts from me in Retroarch release threads. Go on, find one. I'll wait.
 

Aeana

Member
It's also worth noting that both cores in Retroarch are based on higan v094, which was from January 2014. There have been substantial SNES emulation improvements over the past four years to higan.

The main reason I prefer to use Retroarch is because it takes care of the video/sound sync issue I was never, ever able to solve in standalone Higan for me. Even after letting it sample for an hour+ I'd still get the occasional blip in the audio which drove me nuts. I'll admit that I haven't tried Higan in many years now... and I do have a gsync monitor now, when I didn't before. I'm not sure if that would make things work out better for me or not.

The other reason is that I really love the CRT shaders and with Retroarch I have access to the exact setup I like with every single emulator core. I know Higan had shader support long ago, but the Retroarch ones aren't compatible with Higan, right?

And then there's the whole 100% controller-driven UI thing which makes it really fast and easy to make configuration changes even from my couch.

I wish there wasn't all of this drama going on... I just want accurate emulation + CRT royale (+ tvmode tweaks). (._. )
 

Neith

Banned
So can someone clear up the sync issue for me with the emus? Is there a problem with sync or something because I don't seem to notice it? Is it input lag or something? I haven't tried many games yet and used to play on SNES9X.

Input lag is a massive turn off, so I want to make sure I am using a BSNES version without input lag. I know some people are mad at certain things, I just want to sort out the details in a concise way.

It doesn't. It still looks like a blobby mess in comparison to the original, proper display option.

But it was what they made, not that oversmoothed homogenized filter that so obviously is an algorithm and not a human hand. If I'm going to play an old game I want to play it as it was made, as it was displayed, and as it was meant to look on the original hardware, or at least as close as possible. I'm there to play that game from 1987 or 1991 or 1994 or what have you, not some weird simulation of what it might look like if it were made today by someone who doesn't know how to draw a proper character sprite. If Nintendo remakes Yoshi's Island with new graphics designed for 1080p/4K displays, I'm all in. But this doesn't look like that, it looks like a half-assed filter that drains all the personality out of the spritework.

Honestly this is like the game equivalent of the old "letterbox vs pan & scan" argument from the VHS era. The letterbox people want to watch the movie as it was originally shown and intended, and the pan & scan people want to watch some arbitrarily altered version of it because their display device is different than what was originally used to show the content.

But in the case of Yoshi the whole point is you have what the artist's envisioned, before they were reduced to filling it in with pixels, as "blobs" of paint all over the screen. It's the aesthetic they were going for. No one said it works for every single game man. It has nothing to do with letterbox and pan and scan, because we are doing nothing with the aspect ratio. If you want a better comparison that is still flawed with film you could say it is more like Disney revisionism in their blurays vs the cells they filmed. There are actually two arguments to this discussion whether you want to admit or not.

In that case one says that cells they filmed are more like the modern blurays without all the crappy grain. The other says well you erased details. I happen to think it would be nice to have full 4K presentations of the originals and the newer style, which approximates the old cell look. The problem is that they used too much DNR or whatever and certain scenes and films look very processed. A lot of them look amazing, but their use of processing strains a lot of the old cell work to its limits.

As for Yoshi, well you can say it is some kind of homogenized blob, but it really isn't. It's a very intelligent filter that preserves almost all of the detail while getting rid of the pixelated look, which IMO harms the visual style of YI on large screens a bit, and with retroarch it is as easy as the press of a button to turn it off so no big deal really. The Hq filters of days past were in fact terrible. This is a HUGE step up from those days.
 

Radius4

Member
Go look at all of SP's posts in the higan v104 thread here:
https://www.reddit.com/r/emulation/comments/6t80g1/multisystem_emulator_higan_v104_released/

Or almost any other threads pertaining to me, for that matter.

Now go find posts from me in Retroarch release threads. Go on, find one. I'll wait.

Stalking doesn't mean participating, you both seem hellbent into finding each other.

I don't have to go find anything, we're in one. This right here IS keeping the flame burning, If he had a GAF account he'd be here already and this whole BS would keep going forever.
 

Neith

Banned
Stalking doesn't mean participating, you both seem hellbent into finding each other.

I don't have to go find anything, we're in one. This right here IS keeping the flame burning, If he had a GAF account he'd be here already and this whole BS would keep going forever.

Hi, can you please tell me about the sync issue, and what I should look out for in the emus for SNES games? How can I reduce input lag the most. I commonly have vsync on in my Nvidia GPU. How should I go about this with BSNES or Mercury?
 
So can someone clear up the sync issue for me with the emus? Is there a problem with sync or something because I don't seem to notice it? Is it input lag or something? I haven't tried many games yet and used to play on SNES9X.

Input lag is a massive turn off, so I want to make I am using a BSNES version without input lag. I know some people are mad at certain things, I just want to sort out the details in a concise way.

Tom's talking about tearing in higan I think. Vsync's been kind of disabled in it recently

http://higan.readthedocs.io/en/latest/faq/#i-see-tearing-when-a-game-scrolls-how-can-i-enable-vsync

I believe this isn't an issue in RA though - you should have noticed it if it was

Stalking doesn't mean participating, you both seem hellbent into finding each other.

I don't have to go find anything, we're in one. This right here IS keeping the flame burning, If he had a GAF account he'd be here already and this whole BS would keep going forever.

I'm pretty sure he'd have trouble keeping to the ToS.
 

byuu

Member
I don't have to go find anything, we're in one.

This is not a Retroarch thread. The title clearly says, "Best NES, SNES and GBA Emulators."

This is what he says about me (goes by TwinAphex here):

https://retroarchleaks.wordpress.com/2017/05/23/byuu/

What I say about him is: he harasses me.

Your false equivalency game here is absolutely sickening.

You know better than anyone that I support the Retroarch project and idea behind it, given its very origins. What I don't like is harassment, a version of my emulator that doesn't get updated (even though other emulators do), and a fork that undermines the goals of my own emulator being included. The latter two are not personal in any way. I'm just defensive when it comes to something I've invested thirteen years of my life into making.
 

Awakened

Member
Hi, can you please tell me about the sync issue, and what I should look out for in the emus for SNES games? How can I reduce input lag the most. I commonly have vsync on in my Nvidia GPU. How should I go about this with BSNES or Mercury?
Enable hard sync in video options. This will reduce display lag on all cores. It takes a bit of extra toll on your CPU though, so if you hear any sound crackling, set hard sync frames to 1. That is slightly laggier than 0, but much less CPU intensive. With my 2500k I only have to set it to 1 for Beetle Saturn, Mupen 64 Plus and Cave SH3 games in MAME.

You don't want to force Vsync for RetroArch in the Nvidia CPL. Leave it to "Application Controlled", which let's RA do it's own Vsync implementation.
 

Lettuce

Member
So again, how do you set up the main menu of Retroarch to be controller-friendly, looking something like this:

xretroarch-games.png.pagespeed.gp+jp+jw+pj+ws+js+rj+rp+rw+ri+cp+md.ic.XOGbK2g0nb.png

Might be better of using Lakka

http://www.lakka.tv/
 

Neith

Banned
Enable hard sync in video options. This will reduce display lag on all cores. It takes a bit of extra toll on your CPU though, so if you hear any sound crackling, set hard sync frames to 1. That is slightly laggier than 0, but much less CPU intensive. With my 2500k I only have to set it to 1 for Beetle Saturn, Mupen 64 Plus and Cave SH3 games in MAME.

You don't want to force Vsync for RetroArch in the Nvidia CPL. Leave it to "Application Controlled", which let's RA do it's own Vsync implementation.

Okay thanks. I will set that in Inspector. Pretty sure hard sync with zero was on by default. I just upgraded to a 2600K so I think I should be okay mostly.
 

Easy_D

never left the stone age
One of the best reasons to use it with Retroarch is that it handles this synchro setup for you.

I think mGBA does it out of the box as well, it's the only standalone GBA emulator that hasn't resulted in terrible stutters
 

petran79

Banned
ZSNES is HANDS DOWN the SINGLE WORST SNES EMULATOR. It's extremely inacurate. Hell, I don't know if it's still like that, but it once was breaking Donkey Kong Country 2. Hell, in speedrunning, it's OUTRIGHT banned in most SNES titles because it's so inacurate and how it fails to replicate a SNES at a decent level. At least, if you are going this way, choose SNES9x. Otherwise, BSNES/Higan is the most accurate SNES emulator out there... and my favorite.

Pagefault updated ZSNES to 1.53 few years ago. Last svn version was 5311 but it did lack sound. No progress ever since

https://board.zsnes.com/phpBB3/viewtopic.php?f=2&t=139390

Here are the changes for the upcoming ZSNES 1.53MR version that should be released soon once I get more feedback from internal testers. This is not a replacement for 2.0. This list is subject to change.

- Removed DirectDraw and replaced it with OpenGL renderer (you will need to reconfigure your video settings if you have an existing config file)
- Netplay is much better now with fewer desyncs and movie playback is much more reliable but still experimental (1.54 should have most of this ironed out)
- Numerous emulation fixes have been incorporated to provide better compatibility and reliablity of the emulator.
- The exploit has been patched.ynt to give better compatibility.
- New S-DSP/SPC core (thanks blargg!)
- SA-1 is probably going to remain unreliable in this release.
- Lots of patches to the GUI and graphics engine to fix rendering problems.
- Linux support should be better now under modern 64-bit systems.
- MS-DOS support has been completely removed (sorry guys).
- Lots of stuff I have forgotten.
 
I said "in a more objective case" because I feel Yoshi's Island qualifies as a bigger upgrade than other games. You really aren't going to convince me that the sketch book style is supposed to be jaggy and pixelated. It doesn't fit in with their vision at all. It's my opinion, but it has more going for it than yes we like individual squares a centimeter wide to represent a coloring book dream world lol. It's more like if the game were made today it would look like what ScaleFX provides. It would look even better than that, but that it even gets that close is a miracle.

That filter looks fucking terrible to me. Fine if you like it, people can like whatever they want, but there is absolutely nothing objective about it. Yoshi's Island or otherwise. Not everyone loathes jaggies. And for the record objectivity isn't a sliding scale.


Interesting fact, 98% of people wouldn't be able to tell the difference between BSNES and SNES9x

"Fact"

I'm not sure why anyone would ever argue in favor of less accuracy. Low performance hardware is fair enough but that is an overall temporary issue.


just checked twitter and saw the below posts. absolutely no doubt in response to the discussions we have been involved in.....

http://www.twitlonger.com/show/n_1sq6hrd

http://www.twitlonger.com/show/n_1sq6hsn

Won't "engage in self-censorship"? Ok. That is a way to look at the world. I guess.
 
Nestopia core via Retroarch
BSNES Mercury Balanced core via Retroarch
mGBA core via Retroarch

There is literally zero reason to use anything else. Most accurate (while still easy to use) emulators for their consoles by far.

Higan itself is more accurate, of course.
 

Neith

Banned
Nestopia core via Retroarch
BSNES Mercury Balanced core via Retroarch
mGBA core via Retroarch

There is literally zero reason to use anything else. Most accurate emulators for their consoles by far.

Okay, so now I am being told to use Mercury Balanced? What is it guys! Mercury or BSNES Balanced? What are the main arguments for either one?

That filter looks fucking terrible to me. Fine if you like it, people can like whatever they want, but there is absolutely nothing objective about it. Yoshi's Island or otherwise. Not everyone loathes jaggies. And for the record objectivity isn't a sliding scale.

It is objectively more pure to the original vision of the actual art before it was made for the SNES in that the the filter gets closer to the concept art, which had no pixels at all.

That was the whole point. The paint aesthetic taken out of technical limitations. It's as objective a look as can be had at what their possible game could have looked like if they had a more powerful system to work with. That has nothing to do with my personal opinions. The concept art for the game drawn in preproduction was not limited to SNES standards.

Is it objectively better than the unfiltered image? No, that is up to you to decide, and I was never aiming to say that. My words were being taken out of context. It's pretty hard to imagine that this filter is less objectively faithful to the concept art and the artist's original vision before they applied pixels. But I'm pretty much done with this argument.

Also, it doesn't look fucking terrible. It's a different look, but there won't be any convincing you so I'm not sure what the point of your posts is. We've already been over this discussion. Jaggies are one thing. Objectively, jaggies are considered artifacts unless for some odd reason your game is based around using aliasing in its art style. Unfiltered images do not have jaggies. An unfiltered look is pure pixels and nothing more.
 

Sophia

Member
Okay, so now I am being told to use Mercury Balanced? What is it guys! Mercury or BSNES Balanced? What are the main arguments for either one?

If you desire the additional features of Mercury (HLE support, slight speedups, SuperFX clocking), use that. If not, the BSNES Balanced core is fine.
 

Awakened

Member
Okay, so now I am being told to use Mercury Balanced? What is it guys! Mercury or BSNES Balanced? What are the main arguments for either one?
I like the Mercury core primarily because it loads ROMs instantly. There is a couple second delay on loading them in the regular BSNES cores. I also like the Balanced profile since it plays well with CRT shaders. That's because the Accuracy profile forces a 480p framebuffer at all times even though most games use 240p. Most CRT shaders are designed to work with 240p input. The main game that Accuracy makes a noticable difference on is Air Strike Patrol, where the shadow under the aircraft is rendered properly. I think in Balanced it doesn't show up at all.
The author still lists a libretro port as a possibility on his github roadmap. I hope it happens someday. Nestopia UE is still very good for now and I love the turbo button and pallete options (PVM Style D93 is my preferred one currently).
 
Sorry, OP, didn't mean to come in and dunk on your thread. To actually contribute and answer your question slightly different from others.

I will very likely be switching primarily to the NT Mini (when it finally ships) when it comes to NES. Which is completely unreasonable from a price perspective for many, I understand, but FPGA solutions are just so goddamned good.

I have an incredible amount of respect for accuracy above all else emu-dev such as byuu is doing, and will support and use them as much as possible (and strongly encourage others to as well), but in terms of sitting down and playing something for reals I'll probably lean FPGA for the foreseeable future.
 

byuu

Member
Interesting fact, 98% of people wouldn't be able to tell the difference between BSNES and SNES9x

Because 98% of people won't play beyond Super Mario Kart/World, Super Metroid, Castlevania IV, A Link to the Past, Chrono Trigger, etc.

The games that start showing issues are less often played: Air Strike Patrol, Battle Blaze, Cu-on-pa, Mecarobot Golf, Sink or Swim, Speedy Gonzales, etc (some of these work in newer Snes9X releases.) Not exactly A-list titles.

The way I look at it is: if you can run the more accurate version anyway, and are not on a battery-powered device, and don't need any program features the faster version has, why risk the game crashing in level 6-1 on you due to an emulation bug? If any of that is not true, then by all means ... please use the faster version!

I'm a big fan of Snes9X, too. I contributed the audio core to it, and the parts outside of decompression for SPC7110 emulation are mine as well. It also contains MSU1 and BPS support, too.

Okay, so now I am being told to use Mercury Balanced? What is it guys! Mercury or BSNES Balanced? What are the main arguments for either one?

Honestly, I don't like mercury, but ... try both, and please use whatever you like best.

There is a couple second delay on loading them in the regular BSNES cores.

That's very unfortunate :(

Loading is instantaneous in modern higan releases*. I may've had an issue like that back in 2013 that's since been fixed.

... sigh, maybe I'll ask around and see if anyone's interested in making a v104 libretro target.

(* it's actually really bad with the GBA because I have to scan the entire ROM looking for save RAM type strings, and it's a naive search instead of something like KMP or BT.)

I also like the Balanced profile since it plays well with CRT shaders.

Although I haven't fixed it myself with higan's quark shaders, that is something that is fixable. The core needs to tell the shader that even though the buffer is 480p, that the pixel density is 240p.

Best NES, SNES and GBA Emulator Drama

Yeah, I'm really sorry for contributing to that. I hate it as much as everyone else.
 

Paragon

Member

Royale can simulate any kind of CRT, not just Trinitrons. It's incredibly flexible - though complex.
If you set it to use an aperture grille mask, that's a Trinitron display. Slot mask is like an old pre-trinitron TV, and dot mask is like a PC monitor or non-Sony broadcast monitors.
Royale really needs a lot of resolution to work at its best though, especially for the slot/dot mask simulation.

My theory is that most of these people never played the games on original hardware with a crt back in the day. So these modern gamers with a focus on anti aliasing 3d rendered content push those standards over to 2d sprite work as well.
Not everyone loathes jaggies.
Displaying square hard-edged unfiltered pixels is not being true to the source either.
Pixels are not supposed to be squares, and the electron beam in a CRT formed a round spot on the surface of the display. This is a single white pixel on a dot mask CRT:

LCD on the left, dot mask CRT on the right:
Notice how much smoother and rounded everything is on the CRT.
Though retro gamers are often seeking out high-end Trinitron displays (and for good reason), you won't get that same "anti-aliasing" effect that you do with a dot mask CRT. They're arguably the best type of display for pixel art, and likely what most developers had access to when they were drawing it. (typical for a CRT monitor)
Lines have a thicker appearance than the LCD for multiple reasons: the CRT focus is not as sharp as the LCD with fixed pixels, but the spot size also changes with the brightness of the pixel.

Here, on a Trinitron CRT, you can see how brighter lines are much thicker than dimmer lines, causing them to taper off. You don't get that with a fixed-pixel display.
Though the edges of everything are still rounded, you can see how the Trinitron tube has a much squarer more grid-like appearance, with thick scanlines.
It does still have that analog nature of the CRT compared to a flat panel, it just doesn't have the same "anti-aliased" appearance of a dot mask display.

So can someone clear up the sync issue for me with the emus? Is there a problem with sync or something because I don't seem to notice it? Is it input lag or something? I haven't tried many games yet and used to play on SNES9X.
Consoles often ran at non-standard refresh rates. The SNES ran at 60.08Hz while televisions typically refresh at 59.94Hz and monitors at 60.000Hz
With an 0.08Hz discrepancy, the emulator is guaranteed to drop a frame (skip) every 12.5 seconds. But your monitor is probably not running at exactly 60.000Hz either, so it may be more or less frequent than that.
What RetroArch does is sync up the system speed to your display speed. So if your display is running at 59.94Hz rather than 60.08Hz, the game runs a fraction of a percent slower than real hardware would. This is largely imperceptible, compared to a very obvious stutter every 12.5 seconds.

On top of that, RetroArch dynamically resamples the audio so that the speed is kept in sync and does not skip, glitch out, or crackle due to being changed from its original playback speed. Again: this should largely be imperceptible compared to the sound glitches or sync errors (sounds playing late or early) that you would hear without it doing this.

No other emulator or front-end I'm aware of has managed to get both of these working together for a near-perfect audio/video experience.
I've yet to get it playing nice with my G-Sync monitor though. Unless I disable G-Sync and use V-Sync at 60Hz, I get constant stuttering in games. In theory, G-Sync should allow them to output exactly the correct framerate/refresh rate, but it doesn't seem to work.

The Hq filters of days past were in fact terrible. This is a HUGE step up from those days.
I agree - though the filter may as well be called the "Yoshi's Island filter", as I've tested it with a number of other games and it just looks awful in everything else that I've tried so far. Doesn't seem to work correctly with the bSNES "accuracy" cores rather than "balanced" either.

Pagefault updated ZSNES to 1.53 few years ago. [...]
You're better off with Snes9x if you want something fast (preferably the RetroArch core...) and Higan/bSNES if you want accuracy. There's no good reason to be using ZSNES now, unless there are old ROM hacks which only work with it?
 

nkarafo

Member
The games that start showing issues are less often played: Air Strike Patrol, Battle Blaze, Cu-on-pa, Mecarobot Golf, Sink or Swim, Speedy Gonzales, etc (some of these work in newer Snes9X releases.) Not exactly A-list titles.
And Doom. For some reason, after version 1.42, SNES9x has display artifacts in this game.

Also, SNESGT > SNES9x. I wish it would work better on modern Windows though.
 

Baleoce

Member
I hear people mentioning LaunchBox, I've never heard of it before, but have been trying to get EmulationStation working. Should I be looking at LaunchBox instead?
 

nkarafo

Member
I hear people mentioning LaunchBox, I've never heard of it before, but have been trying to get EmulationStation working. Should I be looking at LaunchBox instead?
Launchbox has a good online database that will find info, box art and snapshots for you, plus it can also search for stuff from emumovies if you have an account there. It should find at least 80-90% of all the assets you need.

It's good to have but i prefer Quickplay as a desktop frontend for it's speed and Rocketlauncher/Hyperspin for the eye candy + couch play. Launchbox falls somewhere in the middle for me and it's big box mode is behind a pay wall.
 
Is there a good Retroarch guide?

I got back into emulation with Retropie. I haven't found anything nearly as user-friendly yet for Windows.

Launchbox has a good online database that will find info, box art and snapshots for you, plus it can also search for stuff from emumovies if you have an account there. It should find at least 80-90% of all the assets you need.

It's good to have but i prefer Quickplay as a desktop frontend for it's speed and Rocketlauncher/Hyperspin for the eye candy + couch play. Launchbox falls somewhere in the middle for me and it's big box mode is behind a pay wall.

Thanks.
 

Awakened

Member
That's very unfortunate :(

Loading is instantaneous in modern higan releases*. I may've had an issue like that back in 2013 that's since been fixed.

... sigh, maybe I'll ask around and see if anyone's interested in making a v104 libretro target.
I think it was because in the regular core it has to convert standard single file .sfc ROMs to ROM folders in RAM, while Mercury can load .sfcs directly.
Although I haven't fixed it myself with higan's quark shaders, that is something that is fixable. The core needs to tell the shader that even though the buffer is 480p, that the pixel density is 240p.
That would be great, since I think there were other benefits to the 480p buffer. Maybe it was stuff like Kirby's Dreamland 3's transparency effects and Seiken Densetsu 3's high res text look better?
I've yet to get it playing nice with my G-Sync monitor though. Unless I disable G-Sync and use V-Sync at 60Hz, I get constant stuttering in games. In theory, G-Sync should allow them to output exactly the correct framerate/refresh rate, but it doesn't seem to work.
Twinaphex has mentioned possibly getting a G-Sync display down the line to improve variable refresh support, so cross your fingers :)
 

Neith

Banned
Displaying square hard-edged unfiltered pixels is not being true to the source either.
Pixels are not supposed to be squares, and the electron beam in a CRT formed a round spot on the surface of the display. This is a single white pixel on a dot mask CRT:

Hey, thanks for the info and the comparison. Unfiltered pixels are just a bit weird to me on large screens. CRTs definitely had a better approach to it.

I would however disagree that ScaleFX only works with Yoshi's Island. It does quite well, IMO of course, on any kind of cartoony game where the source cannot be filtered correctly to produce smooth gradients.

I even have used it in Super Metroid and I thought it looked great. But again some people are going to hate it in a game like that. I tend to switch different filters while I'm playing to get a good sampling of different looks.

I tried it on Aria of Sorrow, where xBRZ looked like trash, and I was honestly pretty surprised at how nice it looked. I know a lot of people want that CRT look, but it's not always easy to get when you don't have an actual CRT.

With that being said, can you recommend me a shader in Retroarch that might look as faithful as possible to the actual CRT experience.
 

nkarafo

Member
With that being said, can you recommend me a shader in Retroarch that might look as faithful as possible to the actual CRT experience.
My favorite is CRT Geom but you might want to tweak it. I don't like how it curves the screen as much by default but you can reduce or disable the effect. It has enough options thankfully.

But it also depends on what console you want to emulate. Personally i like having an accurate representation of what i grew up with. For instance, with Genesis/Mega Drive i pick one from the NTSC shaders folder. That's because it looks exactly how i remember it and it also blends the dithering nicely, just like a real CRT. But you also get a bit of bleeding (which is good).

N64 is the hardest to emulate accurately. There aren't any shaders i know of that emulate it's video output accurately. Still trying to make a custom one that i'm happy with.

Also be careful of uneven scanlines. It's the worst looking effect when you don't use integer scale. Some shaders look better than others when you use a full screen non-integer resolution (CRT Geom looks fine for me). But most of the time you will have to choose between horrible looking uneven scanlines VS borders at the bottom and top of the screen.
 

Neith

Banned
My favorite is CRT Geom but you might want to tweak it. I don't like how it curves the screen as much by default but you can reduce or disable the effect. It has enough options thankfully.

But it also depends on what console you want to emulate. Personally i like having an accurate representation of what i grew up with. For instance, with Genesis/Mega Drive i pick one from the NTSC shaders folder. That's because it looks exactly how i remember it and it also blends the dithering nicely, just like a real CRT. But you also get a bit of bleeding (which is good).

N64 is the hardest to emulate accurately. There aren't any shaders i know of that emulate it's video output accurately. Still trying to make a custom one that i'm happy with.

Also be careful of uneven scanlines. It's the worst looking effect when you don't use integer scale. Some shaders look better than others when you use a full screen non-integer resolution (CRT Geom looks fine for me). But most of the time you will have to choose between horrible looking uneven scanlines VS borders at the bottom and top of the screen.

Thanks, I'll definitely check it out.
 

Lettuce

Member
I'm not sure why anyone would ever argue in favor of less accuracy. Low performance hardware is fair enough but that is an overall temporary issue.

I think BSNES only emulates 2 games better than vanilla SNES9X (forks of SNES9X are on par with BSNES in this respect) and the other 'accuracy' benefits BSNES has over SNES9X is really microscopic details like the rolling demo in one of the Megaman X games completing properly (which it doesnt in SNES9X) nothing that effect actual gameplay between the 2 emulators what so ever.

Im not saying SNES9X is the better emulator as its not, its just what BSNES brings to the table over SNES9X is so insignificant that you'd never notice, and if people are that anal then what the hell are they doing using an emulator in the first place just get real hardware!.

If you have hardware thats not able to run BSNES (like RPi and the like devices) then SNES9X is perfect enough

Regarding the Mercury fork of BSNES im waiting for them to implement overclocking for non FX Chip games, Super Ghouls & Goblins need this massively!!
 

Radius4

Member
That's not true either.

Megaman X 1.0 copy protection triggers in snes9x and, super punch out can't be completed every time in snes9x. Not sure it glitches every time but it does for me in mad clown's stage.

https://github.com/snes9xgit/snes9x/issues/122

On the other hand the translation of Front Mission Gunhazard doesn't work in bsnes.

Bottom line, mix and match, find whatever works best for you :)
 

byuu

Member
On the other hand the translation of Front Mission Gunhazard doesn't work in bsnes.

Yes, but that isn't my fault.

ROM hackers back in the late '90s and early '00s only had ZSNES and early Snes9X, and abused the SNES in ways that real hardware would not permit. Most notably was writes to video RAM during active display periods.

The game won't work on real hardware either. However, understandably, someone who just wants to play the game in English will want to use another emulator, such as Snes9X or bZSNES (my ZSNES emulator.)
 

Radius4

Member
Actually it works on mainline, just not on bsnes-libretro on android, it seems it gets stuck on one of the co_threads or something.

I was able to reproduce this on PC ONCE, the app would appear frozen but video kept updating.
 
Top Bottom