This fork adds several features to bubble2k's great implementation, giving you more options to enjoy your game collection. It's built with recent versions of devkitARM (r62) and libctru (2.2.2). See Building from source for more info. Feedback and bug reports are welcome. Help with development is also welcome.
- Game thumbnails (boxart, title, gameplay)
- Border (bezel) and second screen image (cover) for each game
- Themes
- Improved cheat menu
- RetroArch-ish folder structure to keep game collections clean
- Swap screen and more hotkey options
- ready to use and cleaned up no-intro sets for cheats, thumbnails, borders and covers
- Download latest cia version here and install via FBI.
- (Optional) Download latest no-intro sets here.
You can put your SNES games inside any folder. Keep in mind that zip files are not supported. Your game has to be in ".smc", ".sfc" or ".fig" format.
Configs, saves and other assets are located at sd:/3ds/snes9x3ds
- Copy snes9x_3ds.3dsx and snes9x_3ds.sdmh to sd:/3ds/snes9x_3ds
- Go to your Homebrew Launcher and launch the snes9x_3ds emulator
See https://github.com/matbo87/snes9x_3ds-assets.
- Make sure you have devkitPro and ctrulib installed correctly. If not, https://devkitpro.org/wiki/devkitPro_pacman will guide you through this process.
- Makefile is based on TricksterGuy's 3ds-template.
- Run
make 3dslink
to send the 3dsx build to your homebrew launcher.
You can use citra as well, but game emulation is broken (no sound + snes tiles are not rendered properly). This issue is several years old - probably since libctru 1.5.x. I wasn't able to fix it - maybe you will be able to.
There are some emulator options, which may improve gaming experience
- Go to emulator options tab and change the SRAM Auto-Save Delay to 60 seconds, or disable it entirely. There is also a SRAM-on-pause option.
- Go to emulator options tab and change the In-Frame Palette Changes to either one of the 3 options: Enabled, Disabled Style 1, Disabled Style 2. Color emulation is never perfect because we are using the 3DS GPU for rendering, which doesn't allow us to do what the SNES requires.
- Enabled cheats may also result in bad gaming experience. Disable them and reload the game
- Ensure that your game file isn't corrupt. Try another revision or region.
- Some games are just not running well on this emulator. (see Compatibility List)
Split up your game collection in sub folders. The more games you have in one single folder, the slower the caching.
Make sure, game filename matches with image filename. For more information see https://github.com/matbo87/snes9x_3ds-assets
The cheat set is roughly tested. So it is possible that some cheats will not work or even damage your savegame. Use them with caution.
You can try using save states from Snes9x v1.43, but sometimes this emulator doesn't recognize them.
- Graphic modes 0 * 7.
- Frame skipping.
- Stretch to full screen / 4:3 ratio
- PAL (50fps) / NTSC (60 fps) frame rates.
- SDD1 chip (Street Fighter 2 Alpha, Star Ocean)
- SFX1/2 chip (Yoshi's Island, but slow on old 3DS)
- CX4 chip (Megaman X-2, Megaman X-3)
- DSP chips (Super Mario Kart)
- SA-1 chip (Super Mario RPG, Kirby Superstar)
- Sound emulation (at 32KHz, with echo and gaussian interpolation)
- Citra SNES emulation is broken (probably since libctru 1.5.x?)
- Deprecated CSND service
- Minor sound emulation errors
- Poor performance in some SFX1/2 games like Doom
- Mosaics.
- In-frame palette changes - This is because this emulator uses the 3DS GPU for all graphic rendering. Without in-frame palette changes implemented, a small number of games experience colour issues.
- bubble2k for his snes9x_3ds emulator
- ramzinouri for his snes9x_3ds fork
- Asdolo for his snes9x_3ds forwarder