mirror of https://github.com/bsnes-emu/bsnes.git
![]() Ok, this is a very important WIP release. Note that this file is rather large, please mirror it if you must link to it elsewhere. http://byuu.cinnamonpirate.com/files/bsnes_v019_wip23.zip Included are two executables: bsnes_adsp.exe - This version uses anomie's S-DSP emulator, clocked at 32khz bsnes_bdsp.exe - This version uses blargg's S-DSP emulator, clocked at 1.024mhz Please note that blargg's code is experimental and in-progress. That said, I have been unable to find any errors with it so far. I hope I haven't missed anything blargg wanted me to do before release. Everyone, please give your thanks to blargg for creating this emulator and allowing me to use his code :) This day marks an important milestone, at least in bsnes, possibly in the SNES emulation scene: the addition of a subsample-accurate S-DSP emulator brings us one major step closer to the most faithful SNES emulation that will ever be possible. Excepting bugs, this now gives us bus-accurate S-CPU, S-SMP and S-DSP cores. It is not possible (nor desirable) in software to get more precise than bus-level accesses. The only core component remaining using an older, less faithful approach is the S-PPU[1/2], and is not so coincidentally the source of the only remaining bugs in bsnes. This will very likely be the biggest leap forward in accuracy that will ever be seen for S-DSP emulation from this date on. The old win32 interface is now completely broken, so I am forced to distribute using lui. As such, I've fixed the NTSC/PAL mode switches, and added software video filter selection to the UI. Any configuration changes that are not in the menu will have to be done via the config file for the time being. I have also added the log audio data option back to the misc menu. If you are not able to get 60fps in bsnes, or would like to analyze the audio output between adsp and bdsp in another program, you can use this option. Also, I'm aware of the lui- specific issues, such as audio repeating when entering menus. lui is still a work in progress. Please test all of the games you can, and look for subtle audio differences and the like. Bugs, improvements, whatever, would be very useful to know. Please keep in mind that every commercial game ever released was tested by both FitzRoy and tetsuo55, and there are currently zero known problems with anomie's S-DSP emulator. Also note that blargg's emulator will be slower, by nature of being more low- level. I'll leave the decision on which core to enable by default to you guys. Eventually, I'll have polymorphism fully functional, and this will be a runtime-selectable option, and not require two separate builds. But still, we unfortunately have to pick one to be the default setting, which I hope does not offend anyone :( I'm very appreciative and in debt to both anomie and blargg for their help with S-DSP emulation. They have both done a very large service to us all by creating these cores, so I thank both of them again for all their hard work, and for allowing me to use their work in bsnes. [No archive available] |
||
---|---|---|
src | ||
bsnes.exe | ||
cart.db | ||
license.txt | ||
readme.txt |
readme.txt
bsnes Version 0.019 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 Limitations ----------------- S-CPU - Invalid DMA / HDMA transfers (eg WRAM<>WRAM) not fully emulated - 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 Super Gameboy Cartridge passthrough used for playing Gameboy games Unsupported controllers ----------------------- Mouse Super Scope Justifier Multitap (4-port) Multitap (5-port)