devinacker / bsnes-plus

debug-oriented fork of bsnes
http://bsnes.revenant1.net
327 stars 94 forks source link

Issues on OSX #22

Open CarterLi opened 9 years ago

CarterLi commented 9 years ago
  1. Bad image shown in the main window screenshot 2015-06-01_13-08-19
  2. Unusable native file dialog 1) Make sure Use Native OS File Dialogs is checked 2) Click Menu => System => Load Cartridge... The native OS file dialog is opened, then gets closed immediately.
  3. Game lags even on 60 fps I got notable lags when playing games with default settings. The audio sounds good though, only video lags ( the status bar says that I'm playing on 60 fps ). I tried to use Qt-Raster video driver, but it lags more ( the status bar says I'm playing on 30 fps ). After reverted my change of video driver, I tried to uncheck Sync Audio, the game played very fast as expected. Then I tried to check Sync Video, the video seems good, but I got some shock-wave noise.

Sorry for my bad English:)

devinacker commented 9 years ago

There are also some issues with native file dialogs on Windows (namely that the main emulator window continues receiving keystrokes even when the file dialog has focus, which is annoying). I'll be looking into this at some point, so I will probably see what would be causing your issue with it at the same time.

That's probably the only thing I can address myself for the time being. Are you able to compare the rendering/performance issues against newer versions of bsnes/higan?

CarterLi commented 9 years ago

Well, I don't have a build of the original bsnes/higan on OSX, but I get some new findings. It seems the lags are related to Audio Frequency. The video lags disappear if I choose 96000hz; it lags badly if I choose 32000hz..

Optiroc commented 9 years ago

Bad image shown in the main window

Hmm, that's odd. Never saw that on my system.

Unusable native file dialog

True, after invoking the native dialog a second time, it hangs bsnes. I may check into that.

Game lags even on 60 fps

Also true. Since bsnes+ is mainly for debugging it hasn't bothered me much, but it's certainly not ideal. Maybe there's something awful with how the main runloop is set up regarding video updates (the behavior when fiddling around with audio settings point to that)? I'll investigate this.

Optiroc commented 9 years ago

Btw, I saw on the snesdev forum that you'd like someone to handle OS X binaries, which I'll happily do.

I'm tinkering a bit with the install script for OS X, to have the plug-in dylibs live inside the app bundle. I haven't gotten nall/dl to find them at that location though.. But I'm on it. (I can't include CoreFoundation to use the CFBundle* system calls since there's some namespace clashes, and using QApplication's counterpart didn't work at a first try either since the libraries are loaded before the QApplication is initialized.. But there's surely some workaround.)

Regarding dist builds, is it fine with only 64-bit support?

CarterLi commented 9 years ago

I'm tinkering a bit with the install script for OS X, to have the plug-in dylibs live inside the app bundle.

That should be much better. We can move it into /Applications then. It seems that bsnes+ can only find those dylibs in /usr/local/lib, which makes brew doctor unhappy. Putting plugins at the same path of bsnes+.app doesn't work.

is it fine with only 64-bit support?

Certainly

Optiroc commented 9 years ago

Submitted a pull request that adds the app bundle (Content/Frameworks) as path for plugin loading. Also the "make all" and "make install" builds the plugins and copies the app bundle to /Applications, respectively.

bazz1tv commented 9 years ago

I want to add that I use OS X Yosemite, and bsnes plus shows the image fine, I don't recall any lag, but Native File Dialogs hangs the emulator (no NFD pops up), and finally, an issue nobody else mentioned: I found myself having to click "X" on the windows at least twice to close them.. it's really annoying.