Super Nintendo emulators

From Emulation General Wiki
Revision as of 16:50, 13 May 2023 by 172.71.215.61 (talk) (Accessories)
Jump to navigation Jump to search
Super Nintendo Entertainment System
Snesna.png
Developer Nintendo
Type Home video game console
Generation Fourth generation
Release date 1990
Discontinued 2003
Predecessor NES
Successor Nintendo 64
Emulated
For other emulators that run on SNES hardware, see Emulators on SNES.

The Super Nintendo Entertainment System (SNES) is a 16-bit, fourth-generation home video game console released by Nintendo on November 21, 1990, in Japan and on August 23, 1991, in the US. It retailed for $199.99. It has a Ricoh 5A22 CPU at 3.58 MHz. Borrowing the name of its predecessor, the Nintendo Entertainment System, it was similarly named the Super Famicom in Japan. During that time it had fierce competition with SEGA's Genesis (known in other regions as the Mega Drive).

Emulation for the SNES is robust, with several high-quality emulators for various systems, some of which are cycle-accurate.

Emulators

Name Platform(s) Version NSS SGB BS-X/ST SFC ROM/BS-X Data Pack/ST Link MSU-1 CD Retro
Achievements
Libretro SNES
Modem
Netplay Accuracy FLOSS Active Recommended
PC / x86
bsnes Windows Linux macOS FreeBSD nightly
libretro cores
beta 10.6 (bsnes-hd)
1.3.4 (bsnes-mt)
git (bsnes-classic)
[N 1] [N 2] [N 2] ~[N 3] High-Cycle
ares Windows Linux macOS git Artifacts
v136
? Cycle[N 4]
Mesen2 Windows Linux git artifacts
2.0.0-preview1
Cycle
Snes9x Windows Linux macOS FreeBSD Web nightly
libretro nightly core

1.62.3
* * High NC
BizHawk
(bsnes v115)
Windows Linux Dev builds
2.9.1
[N 1] ? ? * High-Cycle ~
higan Windows Linux macOS FreeBSD v110
nSide
libretro core
* * ~[N 5] Cycle [N 6]
Mesen S/SX Windows Linux 2022-3-10 (Mesen SX)
libretro core
Cycle [N 7]
MAME Windows Linux macOS FreeBSD git artifacts[N 8]
0.264
libretro core
~[N 9] Cycle
lsnes
(based on bsnes)
Windows rr2-β25
git
* ? ? ? ? High-Cycle
NO$SNS Windows 1.6 ? Mid
CATSFC
snes9x2005_plus_libretro
Windows Linux macOS FreeBSD libretro core
git
Mid ~
Mednafen
bsnes v059 and SNES-Faust
Windows Linux macOS FreeBSD 1.32.0-UNSTABLE
libretro core
[N 10] * Core
Dependent
kindred (Super Sleuth PE) Windows 1.12 Preview Build 3 ? ? ? ?
Silhouette macOS 1.0 ? Low
ZSNES Windows Linux macOS MS-DOS 1.51 ? Low
SNESGT Windows 2.18 (2007) ? Low-Mid ?
Mobile / ARM
Snes9x
snes9x_libretro
snes9x2010_libretro
snes9x2005_libretro
snes9x2002_libretro
Android iOS Linux Pandora libretro core * ? High NC
Snes9x EX+ Android Dragonbox Pyra 1.5.77
1.5.46.02 Pyra
? ? High ?
CATSFC
snes9x2005_plus_libretro
Android iOS Linux Pandora libretro core Mid ~ ~
SuperRetro16 Android 2.2.1 ? ? Mid ~
Snes8x
(Different from 'Snes9x')
(Snes9x based)
Windows Mobile 2.15.3 ? ? ? Mid ?
Little John
(Snes9x 1.39 based)
PalmOS 1.1, 1.2 ? ? ? Mid ?
OpenSnes9x GP32 Tapwave Zodiac 0.3beta ? ? Low
J2MESnes Java ? ? ? ? ? ? Low ?
Console
Virtual Console Wii Nintendo 3DS
Wii U
N/A ? Mid-High
Nintendo Switch Online
(L-CLASSICS)
Switch 3.4.0 ? Mid-High
bsnes Switch Xbox One Xbox Series X/S libretro core ? ? ~[N 3] High-Cycle
Snes9x
snes9x_libretro
snes9x2010_libretro
snes9x2005_libretro

snes9x2005+_libretro
snes9x2002_libretro

PlayStation 2 PSP
PlayStation 3 GameCube
PlayStation 4 Vita
Wii Nintendo 3DS Wii U Switch
Xbox 360 Saturn [N 11]
libretro core
RetroArch 360 0.9.8.3
Saturn 06/07/29
? High
Snes9x GX GameCube Wii Nightly Builds
4.5.4
? ? High NC
CATSFC
snes9x2005_plus_libretro
Wii Nintendo 3DS
Wii U Switch
Nintendo DS
PSP
PlayStation 3 Dreamcast
libretro core
Mid ~
Snes9x X Xbox 0.23 ? ? ? Mid ?
SNES360 Xbox 360 0.21 beta ? ? Mid ?
SNES Station PlayStation 2 0.2.6c ? ? Mid ?
DreamSNES Dreamcast 0.9.8 ? ? Low
Snes9x for 3DS Nintendo 3DS git ? ? ? Low
Pocket SNES GameBoy Advance TI-Nspire Beta
git
libretro core
? ~ Low ~*
(Ti-Npire)
pSnes Vita 6.6 ? ? ? Low ~
Snes9xTYL Mod
(Snes9x 1.39 based)
PSP git ? ? ? Mid ~
SnemulDS Nintendo DS Bitbucket ? ? Low ~ ~
blargSNES Nintendo 3DS 1.3b ? ? Low
  1. 1.0 1.1 Super Gameboy is available and implemented using the bsnes core. However, it is by far the least maintained of the GB cores and is missing a significant amount of accuracy improvements to bsnes + SameBoy. Versions of bsnes at and before v073 used the Gambatte core for its Super Game Boy functionality.
  2. 2.0 2.1 Recommended to use bsnes-plus for BS-X and Data Pack emulation.
  3. 3.0 3.1 Only bsnes-mercury libretro core supports RetroAchievements
  4. As of ares v127, ares developers now provide a new option in the emulator settings: 'Pixel Accuracy'; when this is enabled, any core that supports a pixel accurate mode will use it.
  5. It's not being built currently, but the repo is on github if someone wants to build it again.
  6. Superseded by ares.
  7. Superseded by Mesen2
  8. CI-Windows CI-Linux CI-Macos
  9. MAME 0.264 version compatibility status for nintendo Super System.
  10. Super Game Boy is presently not supported. If it ever is supported in the future, it will likely be via the mednafen's SNES module instead of the GB module.
  11. snes9x2010_libretro (Snes9x Next & 1.53) has no PS4 support.

Comparisons

higan / ares / bsnes
  • The codifier of emulation accuracy. Should play all commercially released games without trouble, assuming you have the power.
  • Incompatible with old ROM hacks made to take advantage of emulator quirks, much like real hardware.
  • Has a superb LLE audio engine.
  • For maximum authenticity, higan offers better ROM management, but newcomers who care more about playing the ROMs they have should stick with the bsnes release.
Snes9x
  • Compatible with most games, even many ROM hacks that make use of emulator quirks.
  • Fast enough for pretty much any toaster (even Pentium 1 or 2 machines, though for a decent experience, you'll want at least a late Pentium 3).
  • Shares its LLE audio engine with bsnes.
  • Older versions may have buggy graphics and shaders in standalone, though it's video card- and driver-dependent.
  • Controller support is hit-and-miss, especially when it comes to XInput.
RetroArch
  • Not a unique emulator, but there are official cores for bsnes and Snes9x you can obtain easily.
  • Very customizable and programmable by nature.
  • Tends to have better graphics than standalone software.
  • The viewport is scalable to any resolution.
  • It makes good use of fullscreen with the right choice of interface.
  • A highly robust and flexible shader system completely separate from the core.
  • Dynamic rate control fixes most audio issues.
  • Mirrored ROM and RAM maps, allowing ordinary ROM images to be played right away.
  • The Snes9x Next core was forked from a commit somewhere between upstream version 1.52 and 1.53. It includes some extra speed hacks to run full speed on the Wii, as well as a SuperFX overclock option.
  • bsnes-mercury restores things like HLE DSP and SGB emulation using Gambatte, as well as some optimizations that don't sacrifice accuracy. Things like the HLE DSP were removed in higan, and, much like Snes9x Next, it has the option to overclock SuperFX. The default options match bsnes, where HLE emulation is not enabled by default.
BizHawk
  • Multi-system emulator by TASVideos, designed for tool-assisted speedruns, but also doubles as an easy-to-use emulator.
  • Its SNES core is based on bsnes v115.
  • Primarily for Windows, but some Linux compatibility has been reported, likely through Wine.
  • Has support for libretro cores.
Mednafen
  • Like BizHawk, it's multi-system and based on bsnes.
  • Graphical shells exist (like Mednaffe) to help with the fact that it can only run from the command line.
  • Its SNES core is based on bsnes v059, which is a pretty old release. It predates the performance/balanced/accuracy profiles as far back as 2010. However, this version is much faster than current higan versions.
  • It's missing many of the improvements to the LLE audio engine that newer versions of Snes9x and higan have.
  • It also lacks many of the updates to edge cases, such as A.S.P. Air Strike Patrol, one of two games notorious for manipulating the PPU mid-scanline. It also has problems rendering text, flickering lines near the bottom, and displaying shadows during flight.
  • There are systems Mednafen emulates well and very accurately, but the SNES is not one of them. At that point, you'd be better off using standalone bsnes.
Mesen S / Mesen SX / Mesen2
  • Launched in April 2019 from the same author of the top-class NES/Famicom emulator Mesen. It was slated to have similar features as its famous forebearer.
  • Users who increasingly tire of higan's and bsnes' limited user options and cumbersome ROM and save files management may gravitate towards Mesen-S sooner or later, which should run nicely in users' game systems alongside Snes9x or Mednafen (or similar peer).
  • Mesen2 is a multi-system emulator from the original author that continues active development.
ZSNES
  • The least accurate of the bunch but still relevant for many reasons, including:
  • Running full speed on even very old PCs such as an early Pentium 1.
  • Forming the basis for many ROM hacks, which were often designed around (let alone possible, simply because of) its problems and would break on anything else.
  • Having tons of bugs and not even emulating some of the original console's operations which some less notable games needed.
  • One of these bugs was an ACE vulnerability that, if discovered in the emulator's prime, would've allowed a maliciously designed ROM to run its own code on the host machine. No real-world case of it being exploited exists aside from some harmless proof of concept, but it's always good to verify your ROMs before opening them in ZSNES.
  • While fans have since modded the binaries (including patching out the vulnerability), the project is basically dead.
  • Older versions rely on external pre-decompressed graphical packs to emulate some games with elaborate chips, much like older versions of Snes9x, such as 1.43. Assuming you get (what are now rare and very hard-to-find) graphical packs for the SPC7110—like from here—and Star Ocean and put them in folders you then set under "Paths" in ZSNES, they can be playable without missing graphics. With that being said, however, the newest version does not need them for SDD-1 titles, only for SPC7110 titles.
  • Viable alternatives are bZSNES (for ZSNES-centric ROM hacks), ZMZ (for the UI), NO$SNS, or older versions of Snes9x (for speed boosts tailored to old systems). Otherwise, choose any of the others like bsnes/higan, or Snes9x (for better compatibility).

Emulation Enhancements

High-Resolution Affine Transformations

The SNES had a graphical mode called "Mode 7" that allowed scaling the first background layer. The Super-FX2 added more advanced scaling options, but they're not covered by Mode 7 and, therefore, enhancements for it. The SNES Mode 7 background is limited to 128x128 pixels, and the output resolution is 256x240. As a result, there's heavy aliasing and a general loss of quality with some transformations. However, there have been emulator enhancements to make it look better:

  • High resolution: The scaled backgrounds are rendered with subpixel precision at a higher resolution compared to the rest of the game's graphics. This may cause visual discrepancies between both.
  • Supersampling: Acts like a sort of anti-aliasing for Mode 7. All graphics are rendered with the same pixel size, though scaled backgrounds are rendered in a higher resolution, then processed back to the same resolution as the rest of the image for a more uniform look. Used to be the only option in bsnes.
  • Widescreen: Later added by bsnes-hd.

A fork of bsnes, bsnes-hd, offers active development of these features. Most of those were ported back to higan.

With certain settings, there is heavy aliasing which we can reduce by increasing the sampling rate.

Mode 7 scaling bilinear filtering

Some older versions of SNES9X offered bilinear filtering for Mode 7 backgrounds, making them smoother/blurrier instead of pixelated as they are scaled instead of just applying the bilinear filter on the video output itself.

Alternative audio interpolation methods

Most SNES emulators, since at least ZSNES 1.3.x, support audio interpolation methods beyond the traditional SNES Gaussian interpolation, such as Linear, Cubic, Sinc, or even no interpolation, should someone prefer that.

Higher sample rates

Likewise, the sample rate can also be set to higher than 32 kHz, even in ZSNES 0.150. Though in some versions of ZSNES in the early 2000s, it did cause some artifacts. Nowadays, emulators support sample rates all the way up to 96 kHz.

Accessories

There weren't as many accessories that were released for the SNES compared to the NES[1], but there are still quite a few to go over.

Name bsnes ares Snes9x Mesen2 BizHawk higan Mesen S/SX
Mouse
Super Game Boy
Super Scope
Super Multitap
Konami Justifier
M.A.C.S. Rifle ? ? ? ? ? ?
asciiPad
Voice-kun

Super Game Boy

The Super Game Boy was a peripheral designed to play Game Boy and black Game Boy Color cartridges on the Super Nintendo through the cartridge slot, just like a typical SNES game. The Super Game Boy uses a special version of the Game Boy hardware to allow for Super Game Boy enhanced Game Boy games to operate its otherwise hidden features, such as colorization and improved sound by way of the SNES's more sophisticated sound hardware.

Although many Game Boy/Game Boy Color emulators and Game Boy Advance emulators can somewhat replicate the SGB's added features using certain tricks, a true recreation of the SGB can only be done by a multisys that supports emulating a SNES and a Game Boy simultaneously. higan, and by extension ares, were the first emulators to add SGB support, though it's understandably hardware-intensive even by their usual reckoning.[2] As of April 2023, Mesen2 is the only other multi-system emulator that can properly replicate the SGB.

There are a few hiccups with emulating the Super Game Boy, however. higan's Game Boy core isn't up to snuff. One notable example is Pokémon Yellow and the special border that's supposed to display. higan displays the standard Game Boy border, while the real hardware displays a special green Pikachu border. On the other hand, Pokémon Gold and Silver, designed for the Game Boy Color, can operate on a Game Boy, and operates as intended when played on a Super Game Boy. Also, if one attempts to run the Game Boy Camera in higan in Super Game Boy mode, the emulator crashes.

Another thing to note is that there's a redesigned model, only released in Japan, called the Super Game Boy 2. Compared to the original, the main feature the SGB2 adds is a link cable connection, allowing for connectivity with normal Game Boys or even with other SGB2s. It also uses its own oscillator to be able to run games at normal speed, fixing a slight overclocking issue that stemmed from the original SGB's reliance on the clock signal from the SNES. higan can run in Super Game Boy 2 mode, but link cable connections are not possible yet, not even with other Game Boy emulators that can emulate a link cable.

asciiPad

The asciiPad is a controller by asciiWare that has similar features to the NES Advantage. Unlike the standard SNES controller, it has seven small switches that extend the way buttons are pressed. All the switches can be set to one of three modes for the standard buttons they individually represent, except for the seventh labeled "Slow" which changes the frequency of the additional modes. The switch can be set to off, turbo, and auto. The turbo setting holds the button, and the auto setting control presses them automatically. higan is the first and only emulator known to support this specific controller's switches. Other emulators have a completely different implementation of turbo presses in their GUI, which can work for some, but not to this extent.

Pointing Devices

Mouse

The mouse allowed for control in Mario Paint and Mario & Wario, among other games. Though in later games, mouse support was optional. Some emulators, including Snes9x and ares/bsnes/higan, support the Mouse. A ROM hack for Mario & Wario replaces mouse controls with traditional controls for the emulators that don't support this feature.

Super Scope

The Super Scope is a bazooka-looking light gun that is a bit more complex than the Zapper for the Nintendo Entertainment System. Super Scope 6, Yoshi's Safari, Battle Clash, and Metal Combat: Falcon's Revenge used it. Some emulators including Snes9x and bsnes/higan support the Super Scope, emulated with the mouse.

Konami Justifier

Similar to the NES Zapper, but differs from the Super Scope. It's a another light gun, but requiring calibration this time around. It looks like a real gun. It was intended to simulate the shooter arcade experience. Only one game is compatible, and that's Lethal Enforcers. Snes9x and higan support this gun.

Super Multitap

Made by Hudson Soft and licensed by Nintendo, this functions similarly to the NES Four Score. Instead of using both controller ports, it just used one, allowing up to 5 players at once. Bomberman games used this accessory. Some emulators, including Snes9x and bsnes/higan, support five players.

JRA PAT, SNES Modem, and NTT Data Controller

This is a rather obscure Super Famicom game with compatible accessories. JRA PAT is a horse race gambling game that allowed you to use real money.[3] The service is dead. No emulator appears to support the special controller and modem that plugs into the player 1 and player 2 slots. SNES XBand Modem compatible games list

Voice-kun

A few games by Koei shipped with an Audio-CD that typically contained voice acting and supported the Voice-kun accessory, which would command a CD player with IR signals. Typically used by remote controllers so that audio plays at specific points in the game. These games are still playable in most emulators but without Voice-kun support. byuu intends to make either MSU-1 hacks or proper Voice-kun emulation for these games in future higan versions, which would make it the first emulator to emulate this feature.

Satellaview emulation

The Satellaview was a subscription-based add-on released only in Japan that streamed content to the Super Famicom. BS-X or Satellaview software was broadcast to the console add-on and stored as temporary data to be deleted shortly afterward. As such, a wealth of games went undumped and lost forever.

Many of these games had Soundlink features and would have assets like streamed music and voice acting, as well as some extra data, but these have been lost forever outside of video recordings and OST releases. These games will likely play without music on your emulator. The entirely fan-made MSU-1 feature on the higan emulator tries to replicate the BS-X Satellaview and unreleased SNES-CD concept for streamed music in SNES games far beyond the 12 MB cartridge capacity,, but it's not the same thing.

Some games like BS Treasure Conflix make use of the additional RAM provided by the BS-X add-on. While you can try playing them on regular SNES emulators, you may face issues for many of these games (no font appearing, hangs with a black screen, and so on). You'll need Satellaview emulation to properly emulate those games.

bsnes and snes9x are recommended. They use your PC clock with no option to modify it, though. SNESGT had the option to modify the clock, but it wasn't updated for a while and isn't really recommended for SNES emulation in general. No$SNS has good BS-X emulation (and the best debugger tools for ROM hackers and translators) but falls behind the others when it comes to general emulation.

You'll need the BS-X BIOS to properly emulate the Satellaview. It goes as "BS-X.bin" under the "BIOS" folder when using snes9x. There are many variants. You'll want the translated one (with English text) with removed DRM so that you can play a given broadcast without restrictions on how many times you can do so, like in the original hardware.

Whenever you open a BS-X compatible ROM (that wasn't modified to behave like a normal SNES game, like most BS Zelda translations were), you'll be greeted by the BIOS software. It will ask you to choose your name and avatar, which you can control in a city. Of course, the St-GIGA broadcast service went defunct in 2000, so the big radio tower will just give you a "Hello Satellaview" test broadcast. However, you may be interested in seeing how Nintendo used to do loading screens. To see them without them shutting down instantly, open BSX0001-47.bin (bsxdat folder) in a hex editor and change offset 0x06 from 0x30 to 0x00. Most houses will be closed, though.

You'll want to enter the little red house you start in front of and load the stored data. Sometimes, you might have to wait a while before actual gameplay starts or until a given time. On real hardware, people would wait for up to 6 minutes!

Data Pack emulation

AKA DLC for the Super Famicom.

Data Packs are Satellaview 8M Memory Paks, which have data meant to be used as an expansion for a Data Pack-compatible game. Data Pack-compatible game cartridges look like the BS-X Cartridge. For most of these games, data was distributed via St.GIGA’s Satellaview streaming services. Same Game and SD Gundam G-Next had some Data Packs sold in physical form via retail stores. RPG Tsukuru 2, Sound Novel Tsukuru and Ongaku Tsukuru Kanaderu could save user-created data to 8M Memory Paks.

The following games were compatible with Data Packs:

  • Derby Stallion 96
  • Joushou Mahjong Tenpai
  • Ongaku Tsukuru Kanaderu
  • RPG Tsukuru 2
  • Same Game
  • SD Gundam G-NEXT
  • Shigesato Itoi no Bass Tsuri No. 1
  • Sound Novel Tsukuru

These Data Packs are available on ROM sites as regular SFC files, but their actual nature couldn't be more different. Unlike regular SNES games, they won't load in SNES emulators by themselves. These emulators support this feature:

  • Snes9x: To play SFC games with Memory Pack support (also works with BS-X): Use File -> Load MultiCart... and put the main game in Slot A and the Memory Pack dump in Slot B. Memory Pack changes are not saved automatically, you need to use Save Other -> Save Memory Pack. (Optional) You can put Satellaview Broadcast Files in a folder named SatData (can be changed in the settings). Satellaview Time & Date are based on current time.
  • bsnes-plus: To play SFC games with Memory Pack support: Under "File/Load Slotted BS-X Cartridge". Memory Pack changes are not saved automatically, you need to use File -> Save Memory Pack... bsxdat folder contains Satellaview Broadcast Files. Satellaview expansion needs to be enabled to work. You can change the Satellaview Time & Date in the settings to either use the current time or start with a specific time setup (recommended).
  • higan: Importing a memory pak is like importing a regular game, but the name of the memory pak file must end in .bs (if it’s in a .zip file, that’s OK, but the name inside the .zip file must end in .bs) in order for it to be successfully imported. Sometimes memory pak filenames end in .sfc, which will make higan try to import them as regular Super Famicom games and fail. Rename the file and it should work beautifully. Playing a game that has a slot for a memory pak is just like playing a regular game, but after you have selected which game you want to play higan will open another filesystem browser to let you pick which previously-imported memory pak you want to insert into the game. If you press “Cancel” at this point, the game will load without any cartridge in its memory pak slot. If you load the control cartridge into higan, make sure the emulated Satellaview is connected to the emulated Super Famicom’s expansion port by opening the “Super Famicom” menu, selecting the “Expansion Port” sub-menu, and choosing “Satellaview”. If the expansion port was previously configured with a different option, power-cycle the Super Famicom (also in the “Super Famicom” menu) to make sure the control cartridge will find the Satellaview when it starts up. Note that higan’s Satellaview emulation is not very accurate, so the control cartridge may not work as it should. Playing a memory pak on its own doesn’t make much sense, it’s not a standalone cartridge. Play a game with a memory pak slot, and choose which memory pak you want when higan asks for it.

SuFami Turbo emulation

  • Bishoujo Senshi Sailor Moon Sailor Stars: Fuwafuwa Panic 2
  • Crayon Shin-chan: Nagagutsu Dobon!!
  • Gegege no Kitarou: Youkai Donjara
  • Gekisou Sentai Carranger: Zenkai! Racer Senshi
  • Poi Poi Ninja World
  • SD Gundam Generation: Axis Senki
  • SD Gundam Generation: Babylonia Kenkoku Senki
  • SD Gundam Generation: Colony Kakutouki
  • SD Gundam Generation: Gryps Senki
  • SD Gundam Generation: Ichinen Sensouki
  • SD Gundam Generation: Zanscare Senki
  • SD Ultra Battle: Seven Densetsu
  • SD Ultra Battle: Ultraman Densetsu

SNES-CD revival and emulation

SNES-CD

It's pretty well-known that the Super Famicom was going to get a CD add-on called the SNES-CD, developed by Sony, who had already helped with the sound chip for the SNES. However, Nintendo were unhappy with Sony's clause in the contract that would give them the rights to any software developed on the device. In retaliation, Nintendo announced that they'd be partnering with Phillips instead. Talks between Sony and Nintendo continued afterward as late as 1993, but the project couldn't be salvaged. Nintendo lost interest in the CD peripheral, seeing how the Sega CD failed in the US, and the PC-Engine CD only enjoyed modest success. They canceled the Phillips collaboration on yet another SNES-CD prototype, but in return, they allowed them to use some of their properties for their Phillips CD-i console. Later, they collaborated with the St. Giga radio service to create the Japan-exclusive Satellaview add-on for the Super Famicom, which played broadcasts of SFC games using streamed audio. As for Sony, they took the hardware and experience from their collaboration with Nintendo to create the first PlayStation. Nintendo would continue to support the cartridge format for its next console, the Nintendo 64. A shy attempt at rewritable disk media was attempted with the 64DD, but the add-on failed due to its 64 MB maximum storage limit, which would be obsoleted by later, bigger N64 cartridges, as well as the lack of support from third parties - many of whom had opted to support the PS1 instead.

Some prototype units of the Sony SNES-CD were made. While games were in development for the add-on, some were eventually reworked as regular SNES cartridge games with lots of content gutted (e.g., Nintendo R&D's Marvelous, Square's Secret of Mana, and Romancing Saga 2). Other games, like Hook, were ported to other systems instead (Hook to the Sega CD and Rayman to the Atari Jaguar, among others), while the rest were outright canceled. These games were to have much bigger worlds, streamed music, cutscenes, and even FMVs, according to various interviews. That never happened, however, and most of what was developed for these consoles, including their various manuals and specifications, were lost.

Recently, an actual Sony SNES-CD prototype was uncovered[4] and repaired.[5][6] It had various weird hardware restrictions (number of saves, CD size limit, no co-processors), with much of it likely having to do with its unfinished nature. For example, it had planned Audio CD support, though it doesn't actually work, which means the MSU-1 is a much more attractive alternative for hacks aiming to reflect what the SNES-CD could have been.

No$SNS 1.6 supports the Sony SNES-CD add-on. This was made possible after some reverse-engineering and analysis of the leaked BIOS file. Get the leaked Super Disc BIOS, circulating on the net as "SDBR_v0.95.sfc". Under the same directory as the no$sns executable, make a "BIOS" folder, put the BIOS file there, and rename it to "SFX-100.bin".

The only SNES-CD games available online currently are the BIOS for one of the discovered prototypes and two homebrew games. These games, Magic Floor and Super Boss Gaiden (both of which have alternate versions as regular SNES ROMs), come as BIN/CUE files. NO$SNS 1.6 supports only one CD mode, so it only reads the BIN, not the CUE. Both were tested on real hardware and had severe visual glitches due to the SNES-CD adding more undocumented interrupts, which are not accurately emulated anywhere. This means it's safe to say that while SNES-CD emulation exists nowadays, it would have low compatibility with any real unreleased SNES-CD game prototypes.

MSU-1

Cue the MSU-1, which aims to add some of these features to the SNES. It's a custom fan-made hardware specification for an additional chip, eventually made available and working with real SNES hardware as the SD2SNES flashcard. It's the closest to the SNES-CD that you'll ever get. No more 12 MB maximum cartridge size limitation!

One inconvenience is that most emulators don't really support this specification. It's currently supported by the SD2SNES flashcard, bsnes (v075 and up), higan (v094 and up), and Snes9x (1.55 and up). These hacks simply won't work at all in other emulators unless their developers implement an MSU-1 check to let the game run in these emulators without the MSU-1 enhancements (the MSU-1 specification has a specific feature to allow for compatibility testing).

To load the MSU-1 patched games with higan or bsnes:

  1. Patch the original SNES ROM with the IPS patch
  2. Make sure to copy manifest.bml and the PCM files (generated with create_pcm.bat, often found included with the sound pack) in the same directory as the ROM
    • Make sure it's %USERPROFILE%\Emulation\Super Famicom\ in the case of higan, and follow the readme included to know what names to use
  3. Launch with higan/bsnes.

To load the MSU-1 patched games with Snes9x:

  1. Patch the original SNES ROM with the IPS patch
  2. Copy the patched ROM file, any MSU image file, and the PCM files (generated with create_pcm.bat, often found included with the sound pack) in the same directory as the ROM.
    • Make sure the files all carry the same name prefix as the base ROM, with the MSU image having a .msu extension and all PCM files suffixed by track number.
  3. Launch the base ROM with Snes9x.

Notable hacks for the MSU-1 include:

References

Resources