Bsnes
Developer(s) | Near (formerly known as byuu), contributors |
---|---|
Latest version | v115 [+] |
Active | Yes |
Platform(s) | Windows Linux macOS OpenBSD FreeBSD |
Emulates | SNES |
Compatibility | 100% |
Accuracy | High |
Website | bsnes.dev |
Programmed in | C++ |
License | GNU GPL v3 |
Source code | GitHub |
bsnes is an open-source Super Nintendo Entertainment System (Super Famicom) emulator. It is also available as a Libretro core for RetroArch.
Contents
Download
Overview
bsnes is a subset project of higan, and focuses on performance, features, and ease of use. It returns to the Qt GUI that it abandoned before its merger with higan and has a much faster multi-threaded PPU renderer, giving it the performance of the old bsnes-balanced core while retaining the accuracy of the bsnes-accurate core. It was originally developed by Near (formerly known as byuu) and is now maintained by the community. It is available under the GNU GPL version 3 or later.
List of forks
Name | Platform(s) | Latest Version | libretro | Active | Recommended | ||
---|---|---|---|---|---|---|---|
PC / x86 | |||||||
bsnes-hd bsnes_hd_beta_libretro |
libretro core beta 10.6 |
✓ | ~ | ✓ | |||
bsnes-mt | 1.3.4 | ✗ | ~ | ~ | |||
bsnes-mercury | 0.94 | ✓ | ✗ | ✗ | |||
bsnes-classic forked bsnes Qt v073 |
git | ✗ | ✗ | ✗ |
Comparisons
- bsnes-hd
A newer fork of bsnes, first released in 2019 by DerKoun, that adds HD video features, such as:
- HD Mode 7 – Rendering the rotated, scaled or pseudo perspective backgrounds at higher resolutions. This does not involve new custom imagery or upscaling algorithms. It is a higher resolution version of the process the SNES uses.
- Widescreen – Extending the scenes to the left and right, without distorting them. Works for most Mode 7 scenes, but also for some other scenes/games, after some setting tweaking.
- Some non-HD related features – Like the ability to disable background layers, sprites and window effects for screenshots for wallpapers or soft crop to zoom in, leaving maps or static art off the sides of the screen.
Some of the features of this fork are or will be included in official bsnes. The difference is that official bsnes only has slight visual improvements but with mostly perfect compatibility. bsnes-hd has more hacks that give true HD in mode 7 SNES games and widescreen in other games.
- bsnes-mt
Has the following improvements over regular bsnes:
- Pixel-perfect integer-ratio scaling both vertically and horizontally.
- Precise aspect ratio of 4:3 instead of 64:49 with correction enabled, in the “Center” and “Scale” modes.
- Saving screenshots in the compressed PNG format instead of uncompressed BMP.
- Drivers are not reset after crashes, a command-line option is provided for explicit reset.
- Better default settings: VSync, exclusive full-screen mode, blur disabled.
- Built-in hotkeys for full-screen and pseudo-full-screen modes, opening a game; Alt+F4 works in full-screen mode.
- Improved usability, bug fixes, and more.
- bsnes-mercury
This fork aims to restore functionality like HLE DSP chip emulation and SGB emulation using Gambatte that was removed in later versions of bsnes, as well as to have some optimizations that don't affect emulation accuracy. It also has an option to overclock SuperFX. Default options make it exactly the same as regular bsnes, with LLE DSP chip emulation enabled. This fork is only available as a libretro core, though it is possible to build it with Ethos (byuu's frontend) instead.
This fork is developed by Alcaro, who developed ZMZ and is also developing his own libretro frontend, minir.
- bsnes-classic
A fork of bsnes v073 that aimed to backport emulation improvements from more current versions of higan while keeping the features of the older version's Qt GUI.
Other forks
- BizHawk: bsnes v087 fork with added TAS features. Multi-system. Used for tool-assisted speedruns and has a debugger.
- bsnes macOS: bsnes v068 fork for macOS. Discontinued.
- bsnes-Qt: bsnes v073 fork to maintain Qt GUI.
- bsnes-sx2: bsnes fork with added Satellaview features. Discontinued. Merged with bsnes-plus.
- bsnes-plus: bsnes-classic fork with added superior debugging features.
- bsnes-cplusplus98: bsnes v085 port to C++98. For Win9x-compatible RetroArch versions.
- bsnes-gilgamesh: bsnes-mercury fork with added SQL database for CPU instructions.
- bsnes-hle: bsnes fork with HLE regressions.
- bsnes-libretro: higan v094 fork for RetroArch.
- bsnes-mcfly: higan v106 fork with the Qt GUI from bsnes v073.
- bsnes-rr: bsnes fork with re-recording features.
- defimulator: bsnes v074 fork.
- higan-qq: higan v094 fork.
- lsnes: bsnes fork with added TAS features.
- OpenEmu/BSNES-Core: bsnes v089 fork for macOS.
- SnesBox: bsnes port to C#.
- xSnes: higan v094 fork to remove non-SNES systems.
Discontinued forks: honou, IronSNES, SSNES (which became RetroArch). Mednafen has a bsnes v059 fork as its SNES core.
See also
- higan - Near's multi-system emulator.
- ares - Near's other multi-system emulator.
External links
- byuu's GitHub - The old archived GitHub repository.