bsnes is a Super Nintendo (SNES) emulator focused on performance, features, and ease of use.
Go to file
byuu e308cf4275 Update to bsnes v017 release.
- This version adds major accuracy improvements, countless bugfixes and DSP-1 support. At the time of this release, the only remaining known bug in bsnes is with Uniracers 2-player mode, with well over 300+ games tested.
Changelog:
    - DSP-1 support added [Andreas Naive, byuu]
    - Added cooperative multithreading library, written by myself
    - Rewritten CPU core, now bus accurate
    - Rewritten APU core, now bus accurate
    - Added cartridge database
    - Added several PCB mappers, thanks to research from Overload
    - Added several games to database, fixing several mapping-related bugs
    - Improved mirroring [Nach, grinvader, byuu]
    - vscroll bug in hires, interlaced mode fixed. Fixes RPM racing
    - RTO X=256 bug corrected. Fixes Super Conflict title screen [anomie]
    - Fixed bug in NTSC filter with hires games
    - Updated snes_ntsc to version 2.0.1 [blargg]
    - Fixed bugs in HiROM / LoROM memory mapping. Fixes countless games
    - Fixed major bugs in HDMA routine. Fixes ToP, Mortal Kombat and Genjuu Ryodan
    - Added out-of-order execution to CPU, APU synchronization for major speedup with no accuracy loss
    - IRQs are now delayed after H/DMA transfers. Fixes Wild Guns
    - HDMA transfers now kill active DMA channels that are on the same channel. Fixes Bugs Bunny and World Class Rugby. Special thanks to zones for researching this
    - CPU emulation mode accuracy was improved
    - Cleaned up port-specific code to ease porting
    - Created unified Makefile, used by all ports [Nach]
    - Created GTK+ port of bsnes (although input is currently broken)
    - WRAM is now initialized to 0x55, SRAM to 0xff. Fixes Power Drive, Death Brade and RPM Racing
    - Fixed extreme NMI / IRQ edge case. Fixes Chou Aniki
    - Adjusted PAL execution speed. Fixes Earthworm Jim 2 (E) sound effects
    - Fixed auto joypad polling bug. Fixes La Wares
    - Fixed H/DMA bug that was preventing saves from working in Secret of Evermore
    - bsnes low loads d3dx9_*.dll dynamically at runtime, it is no longer required
    - Added support for 239-line PAL mode rendering
    - As usual, there have been much more changes I've forgotten about since the last release
    - Two C4 bugs fixed. Mega Man X2 / X3 have no remaining known bugs [anomie, byuu]
2006-08-27 03:01:06 +00:00
src Update to bsnes v017 release. 2006-08-27 03:01:06 +00:00
cart.db Update to bsnes v016r44 release. 2006-08-08 02:02:38 +00:00
license.txt Update to bsnes v017 release. 2006-08-27 03:01:06 +00:00
readme.txt Update to bsnes v017 release. 2006-08-27 03:01:06 +00:00

readme.txt

bsnes
Version 0.017
Author: byuu


General
-------
bsnes is a Super Nintendo / Super Famicom emulator that began on
October 14th, 2004.

The latest version can be downloaded from:
http://byuu.org/

Please see license.txt for important licensing information.


Known Bug(s)
------------
Uniracers / Unirally
- 2-player mode sprite issues (mid-frame OAM writes not supported)


Known Limitations
-----------------
S-CPU
- Invalid DMA / HDMA transfers (eg WRAM<>WRAM) not fully emulated
- DMA / HDMA bus synchronization timing not supported
- Multiply / Divide register delays not implemented

S-SMP
- Cycle breakdown of opcodes is theoretical, but mostly correct

S-PPU
- Uses scanline-based renderer. This is very inaccurate, but very
  few games rely on mid-scanline writes to function correctly
- Does not support FirstSprite+Y priority
- OAM / CGRAM accesses during active display not supported correctly
- RTO flags are not calculated on frames that are skipped when frameskipping
  is enabled. This provides a major speedup, however it will cause in issues
  in games that test these flags, eg the SNES Test Program Electronics Test.
  Turning frameskipping off will allow RTO flag calculation on every frame

S-DSP
- Runs at 32khz. Hardware S-DSP likely runs at 1.024mhz to perform
  multiple reads / writes per sample. Sound is still output at 32khz,
  of course

Hardware Bugs
- CPUr1 HDMA crashing bug not emulated
- CPU<>APU communication bus conflicts not emulated


Unsupported Hardware
--------------------
SA-1
Coprocessor used in many popular games, including:
- Dragon Ball Z Hyper Dimension
- Kirby Super Star
- Kirby's Dreamland 3
- Marvelous
- SD Gundam G-NEXT
- Super Mario RPG

Super FX
Coprocessor used in many popular games, including:
- Doom
- Star Fox
- Star Fox 2 (unreleased beta)
- Super Mario World 2: Yoshi's Island

SPC7110
Coprocessor used only by the following games:
- Far East of Eden Zero
- Far East of Eden Zero: Shounen Jump no Shou
- Momotarou Densetsu Happy
- Super Power League 4

DSP-3
Coprocessor used only by SD Gundam GX

DSP-4
Coprocessor used only by Top Gear 3000

ST010 / ST011 / ST018
SETA coprocessors used by very few games

BS-X (Broadcast Satellite)
Add-on unit sold only in Japan that played specially-made games that
were downloaded via satellite

BS-X Flashcart
Flash cartridge used by BS-X, as well as some standalone games by
Asciisoft

Bandai Sufami Turbo
Special cartloader to play some Bandai games

Super Gameboy
Cartridge passthrough used for playing Gameboy games


Unsupported controllers
-----------------------
Mouse
Super Scope
Justifier
Multitap (4-port)
Multitap (5-port)