bsnes - bsnes v0.0.004

Latest News:

The latest news on the development of bsnes can be found here. Please bear in mind that the updates are generally very technical in nature.

Licensing agreement:

You are free to redistribute this software, and its source code; provided there is no charge for the software, nor any charge for the medium used to distribute the software. You are also free to use and modify the source code as you desire. Any derivative works of this source code will require the entire modified source code to be distributed with the derived binaries. I ask that credit is given if snippets of my source code is used, but this is not mandatory. You must also abide by the terms of any additional source code licenses contained within my code. At present, this only includes the mode7 renderer, which was derived from the snes9x mode7 renderer.

Download:

bsnes v0.0.004, with source code

Development Status:

cpu (65816): 100% completed
Master-cycle accurate timing
Varying memory access timing
SlowROM/FastROM

apu (spc700): 80% completed
No CPU<->APU cycle syncing
No CPU<->APU bridge
No DSP

ppu: 50% completed
Line-based rendering
Modes 0-7
Interlacing in all modes
Overscan in all modes
Color add/sub effects
Dual-logic windows and color windows
Mosaic
Scrolling support in all modes
Sprites - 8x8 to 64x64 (all sizes)
Interlaced sprites

misc.
SRAM (all sizes)
Joypad 1
8-channel DMA/HDMA
LoROM/HiROM memory mapping (max. 32mbit)
Primitive debugging interface with memory breakpoints

Known Compatibility:

The Legend of Zelda 3 - A Link to the Past: Fully playable
Super Mario World: Fully playable
Dai Kaijuu Monogatari: Fully playable
Super Valis IV: Fully playable
Super Adventure Island: Fully playable
Gemfire: Fully playable
Romance of the Three Kingdoms IV: Fully playable
Der Langrisser: Fully playable*
Lufia / Estpolis Denki: Fully playable*
Tekkaman Blade: Fully playable*
Bahamut Lagoon: Playable to first battle scenario

* - Game will play only after manually disabling the spc700 communication. This is far outside of the scope of most emulation users, please wait for spc700 support if you are unable to do this.

About:

bsnes is an emulator that began development on 10/14/2004. The purpose of the emulator is a bit different from other emulators: it focuses on accuracy, development (debugging tools), and clean code. Given this is a rather new project, it doesn't really achieve its goals very well yet.

The emulator does not focus on things that would hinder the accuracy area. This includes speed and compatibility. The minimum system requirements for bsnes are quite high, and the compatibility is roughly about 10-20% at present. Most of this is due to the missing spc700 apu, the rest are due to errors in the cpu emulation core.

To facilitate the clean code aspect, all development directly to the source code is done by me personally. Everyone has their own style of programming, and mixing these can quickly make code much harder to manage.

© 2004 byuu - archive.is/h7RGj