Welcome, Guest
(1 viewing) (1) Guest

TOPIC: BizHawk

BizHawk 12 years, 1 month ago #3303

Hi all,

A couple weeks ago a released an alpha port of BizHawk to Mac OS X. I released a new build today, which looks more like a native application than it did before. Since I haven't gotten any feedback on their official forums, I thought I'd post it here as well:

BizHawk is an NES, Game Gear, Sega Master System, PC Engine (TG16) emulator written in C#. (Builds from SVN also have early support for Genesis, Atari 2600 and Gameboy, but these are disabled in official releases right now because compatibility sucks on those due to being work in progress.)

Does this interest anyone? If so, what do you think I should focus on for OS X releases? Feel free to post here, I will check.


Re: BizHawk 12 years, 1 month ago #3306

Focus on the GUI… Most Mac ports have poor GUIs…

Re: BizHawk 12 years, 1 month ago #3307

It's probably not going to get much better than it is now, aside from some improvements to what I've already done.

My original plan was to get a basic port of the Win32 UI running on Linux and OS X, just so there's always something you can run on every platform. Then I was going to do a completely native UI for OS X.

After working on a native UI for a short period of time, I realized it was a bad idea. The Win32 UI has a bunch of features, (including TAS recording, movie export, exporting video to animated gifs, cheat support, debuggers, palette viewers, etc.) and implementing everything that Windows has is way too much work for one person considering that I'm not interested in most of those features.

I think that the best option for me and for users was for me to wrapper around the existing Windows UI that replaces some of the windows stuff with native OS X components. Thus the main emulator window at least looks like an OS X app, and everything else can just use the existing code that Windows uses. This makes it easier to maintain, and everyone gets a bunch of extra features for free.

I'm not against a completely native OS X UI, I just don't want to write it at this time. With the current approach, I can relatively quickly bring changes over to the portable branch and usually have an OS X version ready less than a day after a Windows release.

I will be making some further improvements to the GUI (syncing over menu changes, adding file type filters to the open dialogs) but I'm not sure how much further than that I will go. It would be feasible for me to replace dialogs one by one with native ones, but even if they're ugly the current ones mostly work.

Re: BizHawk 11 years, 11 months ago #3384

Version 1.0.4 of BizHawk was released for Windows earlier today, and I posted a Mac build a few hours later.

I've made only minor changes to the OS X side of things in this release, (some improvements to the native file open dialogs) and dropped support for OS X 10.5 because I stopped using deprecated methods.

Binaries are now officially hosted on Google Code along with the windows ones. (But I marked them as hidden, because of the current experimental state of this port)

As of this release, BizHawk is now the most accurate NES emulator for any platform, according to this test matrix:

Re: BizHawk 11 years, 10 months ago #3424

I didn't bother updating this post when 1.0.4a and 1.0.4b were released, but you'll notice in the linked thread that I did post OS X builds for those as well as soon as they came out. No mac specific improvements were made, I just merged over the changes from the windows versions of those releases. From memory, I know that both releases had improvements to NES emulation. The first fixed a game that wasn't running properly, and the second fixed an optimization that could have caused desync's for Tool Assisted Speedruns. I believe support for some additional NES mappers was in there as well.

It appears that the NES matrix I linked was also updated, and BizHawk is no longer on top of that either. But it's still at #3 right now, which is better than FCEU is doing.

I will continue to keep releases in sync with the windows version for the near future, (1.0.4 and 1.0.4b were released the same day as windows) but I'm not sure if I will be making any more OS X specific changes for awhile. I've got a few other things I'm working on, and my interest in this kind of fluctuates.

Edit: Version 1.0.5 was released for Windows and OS X on August 3rd 2012.
Last Edit: 11 years, 10 months ago by Sappharad.

Re: BizHawk 11 years, 7 months ago #3522

I'm not sure if anyone is actually interested in this, or even uses it. Until this point, I've been doing a good job of keeping OS X releases in sync with the windows ones, same day or next.

Now that's starting to get more difficult though. 1.1.0 came out 2 weeks ago, and added SNES and Gameboy support on the Windows side. I had an OS X version out the same day, minus SNES and Gameboy support. 1.1.1 came out yesterday on windows, and 1.1.1a came out today. The changes are all in-sync up to 1.1.1a in the portable branch of BizHawk SVN, and you can build and run the current release on OS X, but it's unfortunately not ready for a public release yet for the same reasons SNES and Gameboy weren't enabled in the previous version.

BizHawk started as a Multi-System emulator with all of the emulation cores written entirely in C#. But in 1.1.0 they started moving towards adding new systems by adding existing emulation cores as external Windows DLL's. For example, SNES support works via libsnes.dll, which is based on BSNES. This makes sense, because BSNES is perfect and there's no reason to write a new SNES emulator. The problem of course, is that current versions of BSNES are difficult to build on OS X and I'd need to be able to build the DLL's as .dylibs, and this is something I don't have any experience with.

The reason I haven't released an OS X build of 1.1.1a yet is a similar problem. While the current build from SVN will work fine for GameGear/SMS/Genesis/PCE/TG16 games, NES is now broken because they started relying on an external windows DLL to do some sound processing to improve the sound quality. An equivalent .dylib actually ships with OS X (at least, my install of Mountain Lion has it) but it can't be used with the OS X version of BizHawk due to compatibility reasons. I need to write a replacement for that functionality before NES emulation can work again in the OS X builds.

I guess the reason I'm mentioning this is because I'm wondering if anyone is actually interested in this.
BizHawk 1.1.0 for OS X had only 7 downloads since it was released.

Should I continue trying to keep the OS X version up to date? Or is there no interest emulators that can record/playback TAS videos on OS X?

Keeping the C# specific code in sync with Windows releases is actually fairly simple, because I'm still using most of the windows UI. But I think as time goes on, it will be more and more difficult to keep this on par with the Windows version. It is possible to port almost all of it, but getting .dylibs built in place of the native Windows DLL's is a time consuming process that I'm not very good at yet.

Edit: BizHawk 1.1.1b was released for Windows today, 2012-10-08. The Mac OS X build was released about 4 hours later. Not bad. The problem I mentioned above with NES has been resolved with replacement code, so NES is still working on OS X.
Last Edit: 11 years, 7 months ago by Sappharad.

Re: BizHawk 11 years, 6 months ago #3591

Still not sure if anyone wants me to keep posting these updates here or not. 1.3.0 was released today on Windows and OS X.

Adds Famicom Disk System, and ColecoVision support. Both of these new systems are supported in the OS X version. I have not worked on trying to get SNES or the GB/GBC/SGB systems supported on OS X yet and probably won't get around to that for a long time.

Re: BizHawk 11 years, 6 months ago #3592

I haven't heard anything either way, but so long as you post updates here I'll keep including them in the News Roundups. (If you stop posting here, I'll probably forget to check.)

Re: BizHawk 10 years, 7 months ago #3811

Version 1.5.2 was released on Windows and OS X today.

I'm continuing to bring changes from the Windows version over, but no OS X specific changes have been made in about a year now, so it's still kind of poor when it comes to UI experience. (And for some users, I guess it's unstable) It looks like the only 1.5.2 changes applicable to OS X port are support for more FDS BIOS files, and the additions for TI-83 calculator.

I never posted about 1.5.1, 1.5.0, 1.4.1, and 1.4.0 here, so that's interesting.

They've start re-organizing the code to make it easier to add native UI's for other platforms, (it was pretty easy before to use the emulation cores with another UI, but not any other features like Savestates, Videos, Cheats) so maybe that will lead to a better UI on OS X if that ever gets built. It would be a massive undertaking, because the emulator has a lot of features.

Re: BizHawk 10 years, 3 months ago #3894

BizHawk 1.6.0 is now available for OS X. I'm a few days behind the Windows release this time, but it was worth it because the improvements in this release were good.

- Adds Genesis and Sega CD Support!

- Video output is now hardware accelerated OpenGL, for smoother, faster display.
- The Audio Throttle option works correctly now, so systems where the audio would crackle won't have that problem if you use this instead of VSync or Clock Sync.
- NES games open more quickly now. I'm not sure why this is, I don't remember doing anything to fix it.
- I've solved all of the stability problems that I'm aware of, it is much more stable now.

Random thing I noticed when testing: If you don't configure the Sega CD BIOS in Firmwares first, you'll get a random exception when you try to run a Sega CD game. The Windows version does this too, I'll have to see if I can remember to throw a proper error in there.

Although I managed to add Genesis and Sega CD in sync with the windows version, some of the other cores (N64, SNES, etc.) that were not supported before still are not supported now. They're still on my list of things I might look at some day, but hope someone else will one day be interested in getting those to compile.

If anyone uses this, please enjoy the new release. With the Audio throttle enabled, it's very good for gaming. (Or just playing back TAS videos)

Here is the download link:
Last Edit: 10 years, 3 months ago by Sappharad. Reason: Forgot to actually link to the download

Re: BizHawk 9 years, 11 months ago #3950

In case anyone's interested, BizHawk 1.7.0 was released today. (Same day as Windows this time)

Some highlights from this release:
- Adds a new NES core, QuickNES, which is faster than the previous NES core but less compatible. Both cores are manually selectable, but the emulator automatically detects the mapper of the game you open and picks QuickNES if it knows the game will work. Even though the existing NES core ran full speed already, this new one is about twice as fast so if you're doing something that requires you to be able to run a NES game at over 200fps, I guess that's good.
- Adds support for the Wonderswan and Wonderswan color systems, in sync with Windows 1.7.0
- Adds support for Gameboy, Gameboy Color. Windows has had these for awhile now, but they're finally supported in the OSX version.

In summary, the following systems are currently supported on the OS X port:
NES, Famicom Disk System, Sega Master System, Game Gear, PC Engine/TurboGrafix16, Atari 2600, Atari 7800, ColecoVision, Genesis/MegaDrive, Sega CD, Gameboy, Gameboy Color, Wonderswan, Wonderswan Color.

That leaves only a few systems that the Windows version supports but not OS X. I hope to close the gap further in future releases.

Edit: Version 1.7.1 is out:
Although there are changes, I'm not sure if any are notable. Mostly bug fixes.
Last Edit: 9 years, 11 months ago by Sappharad. Reason: Link to 1.7.1, a minor release.

Re: BizHawk 9 years, 9 months ago #3960

BizHawk 1.8.0 was released today. Once again, I've got the OS X port ready only a few hours later. Here's a link to the download on sourceforge:
(I'd normally post my own direct link, but I'm running the Yosemite 10.10 beta and the FTP client I use isn't compatible yet.)

New in this release is Gameboy Advance support. This requires a GBA BIOS to be configured.

To recap, here are the systems currently supported by the OS X port:
NES, FDS, SMS, Game Gear, PCE/TG16 games, Atari 2600, Atari 7800, ColecoVision, Genesis/MegaDrive, Sega CD, Gameboy, Gameboy Color, Gameboy Advance, TI-83 graphing calculator, Wonderswan (and Wonderswan Color).

Edit: 1.8.1 was released. Nothing significant, just some bug fixes.
Last Edit: 9 years, 9 months ago by Sappharad. Reason: Link to 1.8.1

Re: BizHawk 9 years, 9 months ago #3962

I love these emulators that can emulate so many types of systems, it makes it so easy, rather than have many emulators to many systems. I thank you who make these possible on the Mac, you are awesome!
The following user(s) said Thank You: Sappharad

Re: BizHawk 9 years, 6 months ago #4000

1.9.0 was released, and then 1.9.1. 1.9.0 added support for Atari Lynx.


As someone brought up on the BizHawk forum, there are a bunch of known issues with the Mac version of BizHawk. The very first time you run it, you have to wait about a minute for it to start (fine afterwards), menu items don't update, the UI is laggy, etc.
I want to write a new UI instead of continuing to wrap around the Windows one, but I haven't found a good approach yet that would allow me to re-use the Windows OpenGL code.

Overall it's a pretty good emulator for running stuff though, once you configure the controls and know how to work around the UI problems. No estimates as to when I'll have built a new UI to a useable state, I spent about a month off and on trying different things and scrapping them because it wouldn't be able to re-use the existing UI with them. Maybe next year. Would love if someone else would help contribute, but oh well.

Re: BizHawk 8 years, 10 months ago #4078

I haven't posted any updates here in a while, so here is one.

1.11.0 was released a few days back, it adds PSX support. They're using the most accurate PSX core that exists right now, even beating Sony's emulator on PS3 used for PSOne classics. Everything should work the same in the OS X port as it does in Windows.

I attempted to finally get the SNES core ported over for this release, but it looks like that won't be possible in the near future. I've got an Xcode project that builds it just fine, but the method they use to communicate with it is different from other cores and not supported on Linux and OS X. So I had to scrap the attempt for the moment. They're going to be adding an alternative SNES core at some point, so I'll probably be able to port that one instead when it happens. (BizHawk has multiple cores for other systems as well. NES has 2 cores, and so does GBA. Both of those systems offer both cores on OS X. The difference is usually performance vs accuracy, to cater to people who want to play games versus those who speed run them and need everything to be closer to real hardware.)

I started a new UI a few months ago. This new UI will have significantly less features than the current UI which is just a wrapper around the Windows UI. The new UI will be fully native on OS X. It will be several months before it is ready, progress on it is slow. In the meantime, releases will still use the old UI.

Re: BizHawk 6 years, 2 months ago #4418

Can I still download this somewhere? Looks like they moved to GitHub. I can no longer find evidence of a Mac port...

Re: BizHawk 6 years, 2 months ago #4419

Time to create page: 0.23 seconds