

The remaining issues are relatively small ones, in the grand scheme of things. We mostly know how the PPUs work, but we have to make guesses for some functionality that result in less than total perfection. The sole exception is the PPUs (picture processing units), which are used to generate the video frames sent to your screen. Today, we enjoy cycle-level accuracy for nearly every component of the SNES.

So that's it, right? Kudos on a job well done, thanks for all the fish? Well.

Dynamic rate control for perfect audio-video synchronization.Low-level emulation of all SNES coprocessors.Some amazing things have come out of SNES emulation recently, including: SNES emulation has gotten so precise that I've even taken to splitting my emulator into two versions: higan, which focuses on absolute accuracy and hardware documentation and bsnes, which focuses on performance, features, and ease of use. Barring unusual peripherals that are resistant to emulation (such as a light-sensor based golf club, an exercise bike, or a dial-up modem used to place real-money bets on live horse races in Japan), every officially licensed SNES title is fully playable, and no game is known to have any glaring issues. Today, SNES emulation is in a very good place. But first, let me recap how far we've come. Getting that final bit of emulation accuracy will require a community effort that I hope some of you can help with. We are now at a point where that goal is in sight, but there we face one last challenge: accurate cycle timing of the SNES video processors. Further Reading Accuracy takes power: one man’s 3GHz quest to build a perfect SNES emulatorAs the lead coder of bsnes, I've been attempting to perfect Super Nintendo emulation for the past 15 years.
