mirror of https://github.com/bsnes-emu/bsnes.git
Update to bsnes v025r03? release.
New WIP up, and this one is _not_ for playing games on. I replaced the memory mapper entirely with a new system that should be infinitely easier to remap dynamically. This is a necessary step for BS-X MMIO register emulation. It should also speed up S-DD1 emulation by eliminating the need for a special address conversion routine to simulate its memory mapper. However, the new bus memory mapper is anything but complete. Right now, it only loads really, really basic LoROM games. Stick to Super Mario World and Zelda 3. Some good news is that it's ~1-2% faster with MinGW4, but the bad news is that it's ~10% slower with Visual C++, and MS' compiler is stupidly storing my 128kb array directly into the EXE, making the file size bigger. And yet the ZIP of the whole thing is smaller! >_< Bah. I think I can fine tune most of the performance lost back out of Visual C++ with some forced inlining, and I'll make that WRAM array allocate at runtime. Surprised I was able to get any games playable in less than three hours, replacing the entire memory mapping system like that. Lucky me. > -O8 -mtune=prescott -ffloat-store -fforce-addr -finline-functions > -fexpensive-optimizations -funroll-all-loops -ffast-math -fomit- > frame-pointer I didn't realize you could go above -O3 ... interesting. If you want, try building with profile guided optimizations for another ~15% speed boost. It's pretty unstable like that, though. Maybe you'll have better luck than me. The warning message is in src/cart/cart_file.cpp at the top. [No archive available]
This commit is contained in:
parent
c58e3af1b5
commit
42d3f2a37f