Jump to content

bsnes v0.028.01 source released


Robert

Recommended Posts

SNES emulator. This is for Linux and you must compile it yourself.

 

While v0.028's release went a lot better than expected, there was one significant problem: it appears that the Linux OpenGL renderer did not work correctly on any of the four ATI graphics card drivers. It seems to be related to partial implementations of GLX v1.3 (you know, the ten year old Xlib interface for OpenGL?)

 

Rather than continue fighting these drivers, I instead opted to backport the driver to use GLX v1.2 instead. This seems to work on the fglrx, ati and radeon drivers. I don't know much of the radeonhd drivers, but I believe they lack 3D acceleration anyway.

 

sinamas also came up with an ingenius trick to work around the X Visual problem: that is to say, a GLX rendering context requires a window with the same X Visual as itself. But it's not possible to change the Visual of the existing window that is passed to the GLX driver. sinamas suggested creating this new window as a child window, and embedding that within the rendering window. This worked wonderfully, and eliminates the need for enumerating all available GLX contexts, which is why I needed the GLX 1.3 API in the first place. bsnes now uses the GLX-recommended Visual, which also eliminates a color problem that existed on the fglrx driver when using the default X11 visual.

 

I also removed the glClear command inside refresh(), as it was redundant and caused flickering on non-buffered visuals. It might even give a slight speed increase on some cards.

 

Lastly, [vEX] pointed out that I should use the -D flag for the install command in the Makefile. This has been fixed.

 

I'm not updating the Windows binary to v0.028.01, as absolutely nothing has changed in the Windows port yet. I'll update again when the Debian repository is synced with the new version.

>> Get it HERE.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...