ZSNES

From Emulation General
Jump to: navigation, search
Zsnes.jpg
Current version: 1.51
Active: Yes
OS: DOS, Windows, Linux, OS X
Authors: zsKnight, _Demo_, pagefault, and Nach
Official website: ZSNES.com
Source code: SourceForge

ZSNES is a Super Famicom (SNES) emulator written in x86 assembly. It was originally made in 1997 and was one of the most popular Super Nintendo emulators from late nineties to mid 2000s, but now is obsolete and has not been updated since 2007. Most people now just use ZSNES for its excellent netplay code.

Download[edit]

Overview[edit]

The ZSNES developers focused on speed over accuracy, so a hefty amount of games have bugs (and some just plain crash). The current version (v1.51) created more problems than it fixed and many problems still remain:

SNES Pseudo Hi-Res translucency on new graphics engine
  • Compatibility is lower than modern emulators due to low accuracy to real SNES system.
  • Games crashing: Der Langrisser (freezes after 2-3 hours), Super Mario RPG (freezes in many different points of the game), Star Ocean and many other games have freezing and crashing issues.
  • Bad sound emulation: Many games sound inaccurate on ZSNES. ZSNES's audio timer isn't floating point so there are timing artifacts in the music. ZSNES doesn't emulate release values of ADSR so held notes will sound poor.
  • Many of the co-processors, which are actually on the game cartridges, are emulated in strange ways. For example, Super FX is not clocked correctly; Star Fox runs twice as fast as it should.
  • Transparency: Kirby Dreamland 3, Mecarobot Golf, Jurassic Park and other games that use pseudo hi-res translucency won't display correctly in the default graphics engine in v1.51. To get them to display properly in v1.51, one must press 8 to switch to the old graphics engine.
  • x86 code exploit: With specially made hacks and homebrew ROMs, it is possible for them to break out of ZSNES itself and execute native code on the host computer.
  • While older versions of ZSNES still have one of the better netplay systems among emulators, netplay was removed in v1.50.

These are just a few problems, there are a few more listed here and here.

It is recommended to use Snes9x or higan instead.

ROM hacks[edit]

Many ROM hacks and ROM hacking tools were made using ZSNES as a testing platform because of its popularity. However, because of the inaccuracies of the emulator, these tools and hacks are broken on other, more accurate emulators and real hardware.

Alternatives[edit]

bZSNES[edit]

In 2011, byuu released bZSNES - a modification of his bsnes that includes the optional inaccuracies of ZSNES and a similar GUI. This was done as an April Fools day joke. It however only has moderate compatibility with ROM hacks made specifically for ZSNES.[citation needed].

ZMZ[edit]

ZMZ  is a program that utilises libretro versions of Snes9x and the Next variant, as well as the Bsnes cores, much like RetroArch. It uses the exact same interface that ZSNES uses.

Netplay[edit]

Review
PROS
  • Excellent netplay connectivity between 2 players
  • In-game chat that doesn't require switching focus between 2 windows
  • Can pause emulation at any time
  • The host's save file is immediately shared with the client, so you don't need to upload it elsewhere first
  • In case of desync, host can make save states and load them for both players to resync
  • You can swap controllers at any time
  • You can change emulator latency on the fly to compensate for choppiness at the expense of slight input lag
  • It works just as well with between a dial-up user and someone on DSL
  • You can switch between windowed mode and full screen with ease.
  • Using version 1.36, games pretty much do not desync period
  • Still has some big communities and dedicated servers like Z-Net
CONS
  • Netplay is 2P ONLY, with no multiplayer version foreseeable in the near future
  • Both players need their port forwarded to connect over UDP for netplay, and TCP can be quite choppy
  • Most Konami games tend to desync unless you specifically use ZSNES 1.36 or 1.337
  • Interface might be unappealing to some people