Language…
4 users online:  BeeKaay, E623, Guido_Keller, krizeth - Guests: 239 - Bots: 343
Users: 64,795 (2,377 active)
Latest user: mathew

bsnes v068

  • Pages:
  • 1
  • 2
Yeah, there have been a few releases here and there of bsnes. The last version with the debugger build included was v065, though you can build it from the source or just copy the executable. However, I felt this release was rather noteworthy.

http://byuu.org/

Essentially, this version allows you to switch between three different cores, which are Accuracy, Compatibility, and Performance (Compatibility by default). Accuracy uses the cycle-based PPU core, which renders the screen per pixel rather than per scanline, but the computer requirements become quite great to simply run at full speed. The Compatibility core is the same bsnes that the previous versions have been, but with some improvements. Finally, the Performance profile has been optimized for speed, trading minor accuracy losses for large speed gains, while still being far more accurate than other emulators. Would work wonders for those who couldn't previously run bsnes adequately on their computers.

Originally posted by byuu's homepage
This release officially introduces the accuracy and performance cores, alongside the previously-existing compatibility core. The accuracy core allows the most accurate SNES emulation ever seen, with every last processor running at the lowest possible clock synchronization level. The performance core allows slower computers the chance to finally use bsnes. It is capable of attaining 60fps in standard games even on an entry-level Intel Atom processor, commonly found in netbooks.

The accuracy core is absolutely not meant for casual gaming at all. It is meant solely for getting as close to 100% perfection as possible, no matter the cost to speed. It should only be used for testing, development or debugging.

The compatibility core is identical to bsnes v067 and earlier, but is now roughly 10% faster. This is the default and recommended core for casual gaming.

The performance core contains an entirely new S-CPU core, with range-tested IRQs; and uses blargg's heavily-optimized S-DSP core directly. Although there are very minor accuracy tradeoffs to increase speed, I am confident that the performance core is still more accurate and compatible than any other SNES emulator. The S-CPU, S-SMP, S-DSP, SuperFX and SA-1 processors are all clock-based, just as in the accuracy and compatibility cores; and as always, there are zero game-specific hacks. Its compatibility is still well above 99%, running even the most challenging games flawlessly.

If you have held off from using bsnes in the past due to its system requirements, please give the performance core a try. I think you will be impressed. I'm also not finished: I believe performance can be increased even further.

I would also strongly suggest Windows Vista and Windows 7 users to take advantage of the new XAudio2 driver by OV2. Not only does it give you a performance boost, it also lowers latency and provides better sound by way of skipping an API emulation layer.

Changelog:
  • Split core into three profiles: accuracy, compatibility and performance
  • Accuracy core now takes advantage of variable-bitlength integers (eg uint24_t)
  • Performance core uses a new S-CPU core, written from scratch for speed
  • Performance core uses blargg's snes_dsp library for S-DSP emulation
  • Binaries are now compiled using GCC 4.5
  • Added a workaround in the SA-1 core for a bug in GCC 4.5+
  • The clock-based S-PPU renderer has greatly improved OAM emulation; fixing Winter Gold and Megalomania rendering issues
  • Corrected pseudo-hires color math in the clock-based S-PPU renderer; fixing Super Buster Bros backgrounds
  • Fixed a clamping bug in the Cx4 16-bit triangle operation [Jonas Quinn]; fixing Mega Man X2 "gained weapon" star background effect
  • Updated video renderer to properly handle mixed-resolution screens with interlace enabled; fixing Air Strike Patrol level briefing screen
  • Added mightymo's 2010-08-19 cheat code pack
  • Windows port: added XAudio2 output support [OV2]
  • Source: major code restructuring; virtual base classes for processor cores removed, build system heavily modified, etc.



[ Download ] • [ Discuss ]
Nice, they finally made a new version of Bsnes. Maybe I will get to run Bsnes at full speed with my computer instead of having to use my bro's to use it.
I can't believe that I still remember this place.
Awesome. That was a good idea to have the three different core types. But did they improve the keyboard shortcuts (savestates etc.) and/or add a frame skip? Because if not, I'm still going to stick to ZSNES.

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
I'm pretty sure all the keyboard shortcuts (including savestates and fast-forward) can be redefined via the Configuration panel.

Honestly, with this latest release, the only thing ZSNES has that bsnes doesn't is an outdated emulation core. While both ZSNES and Snes9x rely on internal game-specific hacks to work around emulation bugs, bsnes runs virtually every SNES game ever released without taking any shortcuts. Anything that works on the real console will work in bsnes and vice-versa, barring a few incredibly obscure hardware quirks (and even then, the accuracy core will eventually cover those, too). Even the super-optimized Performance core will only require a few hacks to make a very small number of games work.

ZSNES and Snes9x are relics of the NESticle era of console emulation, and it's time to move on to something better. If you've got a CPU made sometime during the last decade, you can probably run bsnes.
There's dozens of keyboard shortcuts. Go to Settings->Configuration->Input->User Interface. There's a States subsection that lets you do all kinds of neat things.

Decrement and Load State + Save and Increment State, for instance, is a neat way to implement a controllable rewind. And of course there's the standard automatic rewind as well.

Frame skipping is not there for a reason: there are a handful of games and tests that require RTO (sprite overflow) flags to be calculated. If you skip the frame, you can't calculate them, and these games will glitch. My personal feeling is that if someone can't get 60fps without frame-skipping, they'd just use a faster emulator instead.

And given you can now get 60fps on an Atom that sells for $3 per chip ... you should really upgrade if things are still too slow.

But if you have a compelling reason for me to add it, I will consider adding it to the performance core.
Decrement and load? That doesn't seem like a very good idea to me...oh well. And not all games glitch up with frame skip...I suppose just changing the speed temporarily could work, but I don't seem to be having much luck with that.

Anyway, though, this looks like a worthy addition. Maybe I will even use it for casual gameplay this time. I still have to use one of the older versions for the debugger, though, which is a bummer.

*downloads*

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
The last debugger was in v065. Haven't posted a new one because no features there have changed, and each profile adds another 1MB onto the download size. I may post v068-debugger separately though later on.

Decrement and load is so that it works like a chain. Map Save+Increment to + key, and Decrement+Load to - key. Now press + to make a new point, and you can keep hitting - to rewind. Alternatively, throw in more keys that only load, or only decrement, and you have full control. Was just an example, there's like 15 different hotkeys to do various things with save states :)
Originally posted by byuu
throw in more keys that only load, or only decrement, and you have full control.


Exactly the problem. Except for quick states, I don't see any keys for those. How many savestates can you have, anyway? As for the debugger, well, the 0.65 debugger takes half a minute to load on my computer and freezes up if I so much as blow on it (exaggeration, but not by much), which is why I decided to switch over to the SNES9X one, even though once I actually get it running, I like the BSNES one better. (For one thing, it doesn't remove the ROM header. Jeez, that's irritating.)

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
The latest Snes9x debugger actually has that "feature" removed. :P
Wow... i can run this in accuracy mode... I never knew my laptop was a supercomputer cooled by NL2 #w{=3}
Quote
Except for quick states, I don't see any keys for those


Huh? We are only talking about quick states, right? I have keys for all types of quick state actions. Which specific hotkeys would you like to have that are missing? I'm open to adding more :)

Quote
How many savestates can you have, anyway?


Max quick states are ten, I don't go to a hundred because I think that defeats the purpose of QUICK states. Who here can really keep track of 100 different states with no names or descriptions?

Max state manager states are 32. These let you input descriptions and keep them sorted. It acts like a long-term state archive. Eg you could have a list like this:
01. Level 1-1
02. Level 1-2
03. Level 1-3 (boss)
04. Level 2-1
etc.

You can have infinite if you modify the source, I just wanted to keep the scrollbar reasonable.

Quote
For one thing, it doesn't remove the ROM header. Jeez, that's irritating.


You are directing your disdain in the wrong direction. It is FuSoYa who forces you to keep around ancient 1990's floppy disk based copier headers on your ROMs to use Lunar Magic that is the real problem.

Copier headers are worthless. They make IPS patches fail 50% of the time, less than 1% of people even own these old copiers, and even when they do ... there are over twenty copier header formats, so you have 5-10% odds that your copier can even use the header on a given ROM, and even THEN you still have to split it up for floppy disks anyway.

Quote
Wow... i can run this in accuracy mode... I never knew my laptop was a supercomputer cooled by LN2


That was a bit of humor, but it's pretty intense overall, and you'll rarely notice any difference. I definitely recommend testing ROM hacks on it, though.
@byuu I have infact i went on MKT moved to the world two fortress. It made an unholy sound then crashed #w{:<}. I also tried the recomended mode and it was laggy like hell, accuracy run faster and smother at 60 i dont think recomended got to 30 #w{O.O}.
It is a very unfortunate fact that a lot of the custom music available for SMW hacks crashes in accurate emulators, but ended up flourishing in large amounts because most people used ZSNES or Snes9x, so the issue was never discovered until recently.

http://www.smwcentral.net/?p=viewthread&t=27103

World Community Grid: Thread | Team
 
Man, the people with the "I'll just stick with ZSNES v151 forever" posts ... really make me wonder why I bother sometimes.

And then I remember, it's for those of you who do care. Thank you for that.

Also, I hear DNF is ahead of ZSNESv2 in terms of overall development :P
With the new more acurate emulators, does that mean tighter restrictions as i know the music section was tightened down on echo a month ago, course if someone could expand the ARAM...
(oh by the way when i said 60 and 30 i ment fps)
Quote
expand the ARAM

If you found a way to get past hardware limits like this one, you'll get more fame than you ever wanted.

Translation: Impossible on emulators, and you're not going to get it to work on hardware either unless you're a pro at electronical engineering.

tldr: Impossible.
<blm> zsnes users are the flatearthers of emulation
Originally posted by byuu
Man, the people with the "I'll just stick with ZSNES v151 forever" posts ... really make me wonder why I bother sometimes.

And then I remember, it's for those of you who do care. Thank you for that.

Also, I hear DNF is ahead of ZSNESv2 in terms of overall development :P

Hey, there are plenty of people here who choose to stick with ZSNES v1.42. Ahahaha...

But hey, if people want convincing...

World Community Grid: Thread | Team
 
Originally posted by byuu
You are directing your disdain in the wrong direction. It is FuSoYa who forces you to keep around ancient 1990's floppy disk based copier headers on your ROMs to use Lunar Magic that is the real problem.


True. But I've noticed that Lunar Magic doesn't seem to be the only tool that insists upon having a headered ROM...Sprite Tool assumes it, so if you try to use it on an unheadered ROM, it screws things up. At least GEMS won't have that problem. It is, or will be, compatible with headered and unheadered ROMs.

And...the latest SNES9X debugger doesn't remove the header? Where can I download it?

Originally posted by byuu
Which specific hotkeys would you like to have that are missing? I'm open to adding more :)


Well, I just think it might be nice to have ones that change the (non-quick) savestate number without saving or loading anything, kind of like the F3 key in ZSNES. Not all savestates I make are supposed to be used one after the other. (Graphics ripping is one example...I'll bet BSNES savestates don't work with edit1754's ripper, but maybe I should try to convince him to add that feature.) Then again, I guess I could do the same thing by just using the mouse instead. I have to say, though, it is a good idea to make it possible to name the savestates. And...32? The only instance I can think of where that might not be enough for casual gameplay would be in the case of ROMs that contain multiple games, such as Super Mario All-Stars. Barring anything like that and assuming one doesn't use the savestates for purposes other than just playing through the game, 32 savestates should be plenty.

Hm...wait a minute...what about dumping SPCs? I already know that ZSNES does it fine and SNES9X fails at it, but I don't recall even seeing an option to do it in BSNES. That could be a factor for people who are sitting on the fence about using BSNES.

(Also, after the new rule about music came out, I made sure not to break it even in music that I don't release.)

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
Quote
Translation: Impossible on emulators, and you're not going to get it to work on hardware either unless you're a pro at electronical engineering.


If you really want to cheat, you could use MSU1: 4GB data storage, CD-quality streaming audio, and fullscreen video @ 30fps. It's quite likely real hardware will be available for it, too.

Quote
Well, I just think it might be nice to have ones that change the (non-quick) savestate number without saving or loading anything, kind of like the F3 key in ZSNES.


Ah I see, it has those. "Decrement (and Increment) Active Quick State Slot". It doesn't have a menu popup where you can pick which active slot you want, but it does have save and load to specific slot keys.

Quote
Hm...wait a minute...what about dumping SPCs?


I'm not a fan of SPC or SNSF file formats, myself. I have a superior idea where you take the SPC and log all $f4-f7 reads. Cut it off of games that don't need it. Now you can even play back the vocal intro to Tales of Phantasia, and it compresses to 20KB.

SPCs have accuracy problems with cycle-based cores, it requires a pretty ugly kludge hack to detect KON writes, and lastly I figure any dumpable SPC has already been dumped through ZSNES alraedy.

If you still want it, kode54 has posted a few builds with SPC dumping support.
How would your MSU thingy allow more powerful echo?
...Using the spc700 for sound effects only?
<blm> zsnes users are the flatearthers of emulation
  • Pages:
  • 1
  • 2