Settings

Theme

Super ZSNES – GPU Powered SNES Emulator

zsnes.com

327 points by haunter a day ago · 108 comments

Reader

d1g174l 7 minutes ago

Congrats @zsknight_dev on this amazing relaunch of my favorite emu!

One feature request worth your consideration: MSU-1 support.

The case for it: Super ZSNES already does sample-level audio replacement for the seven curated titles in the Super Enhancement Engine, which addresses instrument fidelity. MSU-1 is the natural complement — it addresses track fidelity, by letting ROM hacks stream full CD-quality compositions in place of the original SPC700 sequences. There are over 200 published MSU-1 ROM hacks already in the wild (Zeldix maintains the index), with an active community producing audio packs for them.

Implementation is small relative to the DSP1 & SuperFX support already on your roadmap. MSU-1 is a memory-mapped register interface plus PCM streaming — no real silicon to emulate. Reference implementations exist in bsnes (open source), Snes9x, higan/ares, and the SD2SNES flash cart. With accurate CPU and audio cores already in place, the addition is largely a matter of wiring up the register interface and the streaming engine.

The combination of Super ZSNES's sample replacement and MSU-1 track replacement would, as far as I'm aware, be unique among emulators. No other emulator does both.

bityard a day ago

The "uncompressed audio replacements" will be pretty nice, it will be interesting to see what comes of those.

There is a guy, Mathew Valente (a.k.a. TSSF), who put in a surprising amount of effort tracking down the original samples used by the composer of the SNES and PSX Final Fantasy games, Nobuo Uematsu. Nearly all of the samples came from various contemporary hardware and software synthesizers. Mathew found most of them (possibly with community collaboration, no small feat either way!) and took those original samples and remastered Nobuo's tracks. If you watch his videos, this was not a simple drag-and-drop operation, there is quite a lot of technical, musical, and subjective work and decisions to be made. The results are just beautiful.

If you liked classic Final Fantasy music, you'll love his channel. Here's one of my favorites: https://www.youtube.com/watch?v=XQhxNkZH-DE

  • akarlsten 15 hours ago

    I don't think this is necessarily good or even desirable, a lot of the SNES music was composed with the compression in mind and sounds off and weird when "remastered" like this.

    Like this Pitchfork writer expressed it here about a classic SNES track from Donkey Kong Country:

    Take one listen to “Stickerbush”’s fan-made “restored” version and you’ll understand why these compositional limitations are so integral. Here, the instruments appear uncompressed and reproduced through FL Studio. Wise’s wistful songwriting is retained, but completely missing is his intentionally impure palette. The instrumentation turns flat and unimaginative. Once-heavensent piano timbres are suddenly as ordinary as any run-of-the-mill ’90s new age track; the alto sax lead actually sounds like an alto sax, losing its unreal texture. Wise’s essential deployment of tension is absent without the compressed grain that elevates it. The idea of restoration is a “misnomer,” Wise said. He always meant for the song to be tethered to the restrictions of the SNES; he wanted to make limited sounds feel limitless. Like the comments section of the internet checkpoint, “Stickerbush” is a living time capsule.

    https://pitchfork.com/reviews/tracks/david-wise-stickerbush-...

    • bityard 4 hours ago

      I suspect that for every game whose soundtrack was lovingly hand-crafted to take advantage of the SNES's unique abilities, you'll find 10 more that someone composed separately on a hardware DAW of the era and then someone else came along and tried to fit it into as a few bytes of ROM as possible.

      Besides, there is no reason a remaster can't also add compression and other SNES effects in order to stay truer to the spirit of the original.

      • Cpoll an hour ago

        I suspect that the noteworthy composers wrote for the medium, and those "10 more" aren't the games we mention when we talk about SNES OSTs.

    • BubTheBuilder 11 hours ago

      For an example of a really horrible audio "upgrade", check out the Ninja Gaiden Trilogy (remake) on the SNES where they replaced the well-crafted NES instruments with SNES samples just triggered for the same notes and beats. Theoretically could have sounded amazing but is like nails on a chalkboard. Not apples to apples comparison with these SNES->SNES restorations of course.

      • b3ing 8 hours ago

        They picked jazzy samples instead of actually thinking about how each track should sound. Many definitely deserve pipe organ, violins, harp, guitar or something better than horns. I don’t think the NES had real instruments it was mostly square/sine waves, but it was done in a way you could imagine the pipe organ, etc.

  • hung a day ago

    Super weird that they went to the trouble of finding all the samples and the output audio has noticeable lag in it. Compare to the original and you can hear it lagging in the 3rd measure. https://www.youtube.com/watch?v=JLrsUOA4Vb4

  • CTDOCodebases a day ago

    There is an example of that feature on the Modern Vintage Gamer youtube channel. See the timestamped link below. He has a whole video covering Super ZSNES.

    https://youtu.be/r5twUkvYFpA?t=617

  • ranger_danger a day ago

    Jammin' Sam does the same thing with Donkey Kong games and some others: https://www.youtube.com/@JamminSamMiller/videos

    You can also find MSU-1 packs that include his tracks so you can play the games with the enhanced audio.

  • rowanG077 a day ago

    holy shit, I regularly listen to Final Fantasy music, including the SNES era and I did not know about this. Thanks for making my week!

carrja99 a day ago

ZSNES was a core part of my childhood. I downloaded it back when it was still fresh back in the late nineties / early aughts and used to emulate all matter of favorite games and homebrew translation projects for Star Ocean and Tales of Phantasia.

  • pdntspa a day ago

    I beat Chrono Trigger on a 486 with sound and transparencies disabled. There were parts where I had to manually switch off the top layer because transparent stuff (such as clouds) would completely block my view

    When my parents weren't home I'd move to their pentium 166mhz with my savestates copied to a floppy and sneak some time playing the game with sound and transparencies.

    I think I also got through most of super mario world and some of the final fantasy games as well

    Fun times!

    • isk517 a day ago

      I gave up on my first play through of Chrono Trigger because I couldn't figure out how to progress in the future world. Didn't realize that the clouds in the dome were supposed to be transparent and not something that I need to trigger a different event to clear up.

      • _jackdk_ a day ago

        My first playthrough of Chrono Trigger was stopped cold because my PC couldn't send enough simultaneous keypresses to unlock a door.

        • pcthrowaway 18 hours ago

          The workaround for this was to assign all the buttons to the same key before chasing the rat (I had this exact problem with zsnes, though my first few playthroughs were on the original cartridge)

        • skhr0680 19 hours ago

          L R A

      • pdntspa a day ago

        Yeah I'm not sure how I figured that trick out, probably just monkey mashing buttons at some point, then I figured out SNES graphics were layers and it was a lot of fun switching the various layers on+off. And hey that turned out to be useful!

    • zerocrates a day ago

      Yeah, I want to say you could press the number keys or F keys or something like that to toggle layers on and off, and it was absolutely necessary in some misty forest/jungle/waterfall type areas.

    • nextaccountic 19 hours ago

      > I beat Chrono Trigger on a 486 with sound and transparencies disabled. There were parts where I had to manually switch off the top layer because transparent stuff (such as clouds) would completely block my view

      Also, you could get better performance running on DOS rather than on Windows

      The same was true for gameboy emulators too

      • shifto 16 hours ago

        Wow, I remember specifically buying a sound card and CD-rom drive for my 486 so I could run the GB emulator. It wouldn't boot without a sound card and I really wanted to play the non-translated version of Pokemon Gold. People wouldn't believe me when I told them I had a newer Pokemon game than Red/Blue/Yellow.

    • butz a day ago

      Thanks for reminding about missing transparency. I think seeing those games in emulator with transparency support had almost same impression as running Need for Speed III with 3dfx card for the first time :)

    • aidenn0 19 hours ago

      Similar, but IIRC I used esnes, not zsnes.

    • cholantesh a day ago

      >There were parts where I had to manually switch off the top layer because transparent stuff (such as clouds) would completely block my view

      Yeah, that was my experience too; Dome 16 was a total annoyance. I did also use it to 'cheat' in sections of games where you had limited FOV, the alternative of having eyestrain and headaches wasn't really desirable.

      I don't think I'd have gotten through a lot of my favourite RPGs without savestates, save points were always so ridiculously spread out while the random encounters were interminable. Still some of the best experiences I've had in the medium though.

    • LarsDu88 a day ago

      Emulating the SNES on contemporary PC hardware. For shame!

      • pdntspa a day ago

        Dude we were broke and my 486 was a hand-me-down from church. The first console I ever got was a Nintendo 64, and that was very late into its lifecycle. I can assure you that 486 was not contemporary, it was very much behind the times when I had it.

        • hsbauauvhabzb a day ago

          I’d be curious if you could squeeze out better performance with a newer emulator. Either way, SNES games on a 468 is not shameful, it’s the pinnacle of hacker ethos!

          • jamiejquinn 16 hours ago

            Newer emulator or even a recompilation of an old one. I'd bet there are a few modern compiler tricks that would help even on decades old CPUs.

  • BiteCode_dev a day ago

    Also discovered the amazing Tales of Phantasia thanks to zsnes. The translation community did a bonker job bringing that from Japan, patching the game without even having the source code, like mad men. Without them, I would have never known such gems existed that were never sold on our market.

    The translation does take some liberties, but honestly, just for the boat scene, I feel like it's worth it.

    And being able to slow down or speed up the game at will, or quick save/reload at any second, thanks to zsnes, is just chef kiss.

  • bitwize a day ago

    Favorite ZSNES moment: I took a math class in a lecture hall equipped with laptops in a year when my university was experimenting with laptops as a pedagogical tool, but hadn't yet pulled the trigger on requiring them or offering them for sale (as compared to the standard dorm room desktop). While the lecture was being given, we were supposed to have our laptops open with the lecture material up. But of course this one kid had installed ZSNES on his and was playing Killer Instinct...

    • carrja99 a day ago

      haha, I was playing Final Fantasy V during computer class in HS.

jmarcher a day ago

Their home page is underselling how cool this is:

MVG did a great overview of it: https://www.youtube.com/watch?v=r5twUkvYFpA

  • AdmiralAsshat a day ago

    It's understandable that they went in this direction. Higan/bsnes has already captured the market for "accuracy" on the SNES emulator front, so this is more going off and doing its own thing rather than re-treading familiar ground.

    I suppose my only concern is what it will do to the hardware requirements, since ZSNES' original claim to fame was how well it was able to run on limited hardware, even if it had to do a bunch of clever hacks to get there.

    • snvzz a day ago

      Or, thanks to bsnes/higan/ares[0], SFC accuracy is solved, thus it should be much easier for any new emulator to be accurate.

      i.e. accuracy should be the baseline; I understand Super ZSNES is not there yet.

      0. https://ares-emu.net/

      • rincebrain 15 hours ago

        Kind of?

        Accuracy is valuable, but as illustrated by the early days of people using buggy emulators for SNES games on phones and the DS/3DS, people will tolerate buggy but running on their hardware over correct but unplayable.

      • pezezin a day ago

        Ares is a seriously underrated emulator. I don't use it much now that I have a MiSTer, but it is by far my favourite emulator on desktop.

  • micheljansen a day ago

    Impressive, but oh man, the transition from the original ZSNES User Interface from my childhood to the UI of Super ZSNES was jarring to say the least. Nostalgia is powerful:

    https://imgur.com/a/R63BKTe

  • adzm a day ago

    The widescreen mode is surprisingly functional, wow

jsd1982 a day ago

It should be possible to have the PPU emulation capture all of the final register state per pixel (or scanline if accuracy isn't paramount) and have the GPU render each pixel using only that state, doing the layer blending, color math, and mode 7 calculations as necessary. Based on MVG's video breaking down the draw commands performed it doesn't look like that's how Super ZSNES have implemented their PPU - it seems to render tile by tile for BGs (and OBJ?) and line by line for mode 7. That'll be a bit inaccurate but it's likely necessary to implement some of their visual enhancement tricks.

  • BearOso 10 hours ago

    I came up with something similar to your idea, a GPU compute PPU for future Snes9x. What they're doing is using legacy fixed-function API to draw quads, then blend a bump map on with the final image. It's weird. We have the tools to do some really cool things with GPUs, but they chose this. I'm more impressed by all the post-processing shaders people have come up with for all the other emulators.

kayson a day ago

Very cool, especially the accuracy improvements. But is GPU really necessary? SNES is so old I wonder why you couldn't get away with CPU-only. Even if GPU is more efficient, is it worth the headache of supporting way more hardware combinations?

  • ndiddy a day ago

    The visual enhancements the emulator is capable of doing (high-res Mode 7, texture replacements, shaders, that sort of thing) wouldn't run well with software rendering. The emulator uses Unity so they don't have to do all the low-level GPU support work themselves.

  • masklinn a day ago

    > SNES is so old I wonder why you couldn't get away with CPU-only.

    Depends what level of accuracy you want. higan (bsnes) does cycle-accurate SNES emulation on the CPU (and has for more than a decade) so that's definitely feasible.

    If you want accuracy beyond that things get dicey. AFAIK when you get down to transistor level emulation, you can do pong but MetalNES runs nowhere near real time, so the limit for that is somewhere between those two systems.

  • aruametello a day ago

    > is it worth the headache of supporting way more hardware combinations?

    no.

    Probably is one of those of "because its fun" type of projects.

bredren a day ago

One of the features is “no vibe coding, classic development style.”

I think that’s kind of interesting, especially when building a retro enablement.

But I wonder does this mean no AI was used at all? Even for say, code review?

No judgment either way just curious for clarification.

  • unleaded a day ago

    This is from the original authors of ZSNES. I think they know what they're doing.

    smartassery aside LLMs are pretty shit at esoteric stuff like this. Especially retro stuff in my experience they mainly tend to get super excited about how awesome and retro it is & reiterate misunderstood factoids about it that it knows that aren't that important/that you probably know already. Like showing it to a Reddit comment section.

    • BearOso 10 hours ago

      > This is from the original authors of ZSNES. I think they know what they're doing.

      ZSNES is popular because of legacy and nostalgia. It was very fast and came at just the right time, but the developers aren't quite coding gods. Their expertise on the SNES is no match for late/later developers like Near and Sour.

      With Super ZSNES, being a Unity project, you can get a fairly clear decompile of the IR, and the code doesn't seem all that impressive. It's alpha-quality, but generally coded like the original ZSNES was. Optimization is completely missing and accuracy is still out of whack, but synchronization is improved and it's doing a little better job of counting cycles. "GPU-powered" is a big stretch. ~~They're only taking advantage of it for fixed-function perspective transform on mode 7~~ Scratch that. It borrows the line-based algorithm from bsnes-hd, including the trick to interpolate the transform variables between mins and maxes. So the only GPU feature it uses is blending for bump-mapping.

      • ranger_danger 2 hours ago

        Full disclosure since it wasn't mentioned: BearOso is a developer for a competing emulator project, Snes9x.

  • xtracto a day ago

    Funny, we now enter the era of "Made with Handcrafted Code" or "Handmade" . Same way as furniture, carpets and any other "handcrafts" are made now... or Lamborghinis

    • zokier a day ago

      it's doubly funny because once the tools are released to public i bet majority of those high-res mods will be ai generated.

  • jamesu 18 hours ago

    I find the specific singling out of vibe coding interesting for a different reason; thinking back to just last month, I recall one of the rationales behind the huge DLSS5 backlash was it ruined the artists original vision. And here we are a month later being amazed at an emulator that literally lets any casual player do just that through a funky point and click interface!

    I guess if they added in an MCP server there would probably be a riot.

  • bowsamic a day ago

    > But I wonder does this mean no AI was used at all? Even for say, code review?

    Would that be surprising to you?

    • bredren a day ago

      Why do you ask?

      • bowsamic 20 hours ago

        I’m just curious if you are so dependent on LLMs that the idea of not using them at all seems extreme to you

        • bredren 6 hours ago

          I see, good to be curious.

          "No vibe coding" is an ambiguous claim. I was asking whether they meant no AI-generated implementation, no AI assistance whatsoever, or just "not primarily generated by prompts."

  • prmoustache 18 hours ago

    It only makes sense for hobby projects where the outcome is just an excuse for the journey. I mean if the point is to have fun coding, you want to do it yourself.

  • pelasaco 11 hours ago

    there is no way to measure it. The source code isnt available. Better a "classic development style" closed source or a "vibe coded" but open source?

  • llmssuck a day ago

    "no vibe coding" is different from "no ai". I'm not sure where the authors are going with this. No autocomplete? What level of autocomplete? No "deep learning"?

maxglute 17 hours ago

With how long SNES emulators been around, I sometimes wonder if more people played Nintendo games on emulators than actual Nintendo consoles.

arkensaw a day ago

> No Vibe Coding. Classic development style.

This is fast becoming a feature people want.

  • elpocko a day ago

    It's quickly becoming the most important question: have they used any matrix multiplications in the development of this incredibly niche software? Or did they use any other algorithms that I do not approve of? It's burning questions like these that keep me awake at night when I think about vintage hardware emulators.

    • xantronix 20 hours ago

      You know full well that LLMs don't simply spawn from nothingness. These things don't exist in a vacuum, technically nor politically.

LoulouMonkey a day ago

The creator of ZSNES did a very interesting interview a couple of months with Zophar from Zophar's Domain:

https://www.youtube.com/watch?v=iG-oqvj4Tqk

dueltmp_yufsy a day ago

Ah man, these guys rocked early on when I was younger. Still recall first booting up ZSNES to play a fan-translated Japanese-only RPG. It opened up a whole new world. Thanks, guys.

honkcity a day ago

I remember my dad explaining that our computer was fast enough that we didnt even need to bother with the actual hardware SNES anymore because it could be run directly on the computer which I thought was pretty amazing. I think it must have been via ZSNES, so its exciting to see further development of it!

llmssuck a day ago

Why is this using Unity? That's insane? How do we know this is not malware?

  • pixelatedindex a day ago

    Can’t speak about the Unity part, but why would it be malware? If you’re a dev with street cred, I’d imagine you won’t hurt it by putting out malware.

  • ouraf 3 hours ago

    download it and test on virustotal

HerbManic a day ago

One of those things where GPU powered seems odd at first but actually makes a lot of sense. Means you can work with more than just the final outputs but can link in a lot deeper on the overall pipeline. Very cool.

Will probably be the first of many emulators to come.

A bit odd they are using Unity but I guess that gets them multi platform easily. Would be nice if they went something a bit more open like Godot but sometime you have to be pragmatic not ideal.

pryncevv 16 hours ago

When I was 12 (like around 2015) & able to install emulators on my laptop I wanted to play chrono trigger on an emulator (after already beating several other emulated games; but all on my phone) .. I picked ZSNES because I fancied the name more than Snes9x.. I'll never forget the snowy menu of ZSNES, it was so beautiful for me

ranger_danger a day ago

Was not expecting it to be using Unity. Also looks to be closed source for now.

  • ouraf 3 hours ago

    We are extremely well served in open source and free options for SNES emulation. The dev wants to make something new, is using Unity for multiplatform and gor partial shader code abstraction and he has proven he can deliver good stuff if properly funded.

    Let the man cook, and if you have some technical question, i'm sure Lord would answer you.

  • miladyincontrol a day ago

    Thats the part I'm a bit apprehensive for, rather I'd be curious what led them down that decision for an emulator of all things. Or is it just a bit of portability and shader technical debt?

    • ndiddy a day ago

      In general the way people make money off emulation is by selling it to iOS/Android users. In this case, it's free on PC and the Android version is $3. The emulator needs to be closed source for this business model to be feasible.

  • Dwedit a day ago

    Unity = Decompilable (except for IL2CPP or obfuscated binaries)

  • butz a day ago

    I see libsteam plugin in archive. Are they planning to release it on Steam?

arecsu a day ago

About the uncompressed audio replacements, it makes me wonder how difficult would it be to train a model with a huge (but simple) library of sound effects and samples of high quality, and also feed them their equivalents"low quality" sound signature close or identical to what SNES have. The technical data about the SNES limitations should be there to know how to process these effects as precisely as possible, right? I'm not really a sound guy, so I might be wrong.

Maybe this could result in a much more automated way to re-sample many more sound effects from the SNES massively! Just a thought

ohkaiby 19 hours ago

sighs unzips ROM files...

yesman_x a day ago

Very cool to see ZSNES back. The per-game enhancement approach sounds way more interesting than generic HD filters, especially with optional toggles.

itintheory a day ago

> Currently implemented with support for 7 popular games.

The enhancement engine sounds great, but it'd be nice to know which games it's for...

alanwreath a day ago

I wonder is there any way to use this or rather get games to play on the emulator legally????

It really is the only thing that keeps me from them. I’d pay to play quality retro games. Heck it would almost be educational for my kids.

  • CM30 13 hours ago

    If you're really concerned about legality, then I guess homebrew games do exist for the console:

    https://itch.io/c/1537684/snes-homebrew

    https://www.reddit.com/r/snes/comments/j6gguc/what_are_some_...

    Most of those are distributed as .smc/sfc files that can be run in emulators like this.

    But in 2026, it's probably not worth getting too bothered by the idea of downloading ROMs for a 20+ year old console.

  • opan 19 hours ago

    The most legitimate method would be to buy a physical cartridge and dump it with a cartridge dumper. You'll probably need to clean the pins with isopropyl alcohol and sometimes also a fiberglass pen to get them to read reliably.

    I don't have a specific cart dumper to recommend from experience, I have dumped GB/GBC/GBA games but not SNES. A quick search found some options, though.

    https://github.com/X-death25/SNES_Dumper

    https://stoneagegamer.com/retrode-2.html

    Also found some discussion here recommending the Sanni Cart Reader, but it's a 5 year old thread so there are likely cheaper or better options.

    https://www.reddit.com/r/Roms/comments/obrxg3/best_nessnesn6...

    That being said, I do not think there is really an ethical problem with grabbing someone else's cart dumps, whether you have a cart of your own or not, and legally I would be very surprised if you had any issues in the US at least. The coolest part about cart dumpers to me is for carts with save files, you can "rescue" them from the hardware and preserve your progress. In some cases the save relies on a battery that could go dead at any time.

    If you do end up collecting physical cartridges, I would also encourage you to get the actual console, and explore mods for it, get the best video signal out of it you can (RGB or component rather than composite). Playing on real hardware is cool. I'd also recommend getting a flashcart even if you do collect original cartridges, so you can try out homebrew, romhacks, fan translations, and ports. There's a guy who has been porting NES games to SNES.

    https://archive.org/details/@infidelity

    • ranger_danger 2 hours ago

      I have used Retrode 2 with good success.

      I cannot recommend Sanni as he seems difficult to deal with and apparently regrets the license he chose, because he is strongly against people selling pre-assembled units which they are entitled to do.

  • nout a day ago

    Search archive.org. All old games are archived. Since the games are no longer selling, imo this is fair.

  • flohofwoe 18 hours ago

    "Don't copy that floppy!"

    Nobody cares when you play abandondend games from the 1980s and 1990s downloaded from a shady ROM dump site. At the worst Nintendo will go after the emulator project itself.

  • pryncevv 15 hours ago

    just get the roms online

anthk a day ago

Old ZSNES was GPL. And it looks maintained and forked over. https://github.com/xyproto/zsnes/

jbethune 20 hours ago

Sick. Been meaning to replay Link to the Past.

the-golden-one a day ago

Is this a ParaLLEl-like implementation? I couldn’t work it out from the video.

pelasaco 18 hours ago

no source code available?

throwatdem12311 a day ago

Welp, guess I’m gonna do another speedrun of Super Metroid just like the good old days.

add2 a day ago

"Wide Screen (where available) - We enable widescreen whenever the game is internally coded to support partial or full widescreen."

firebot a day ago

This was always my favorite emu. No problems on a Pentium 60 MHz.

Plus you can make your own cheat codes!

  • zapzupnz a day ago

    Super ZSNES and the original ZSNES are not the same emulator. Same developers, different codebases entirely. The linked website is about the newer Super ZSNES.

joemazerino a day ago

I see ZNES and I upvote.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection