Will Bounce Metronome Ever Run on Intel Mac with Wine?

STOP PRESS :) Kick Starter for Intel Mac

 Mac musicians - you can now support my Kick starter to get Bounce Metronome running on an Intel Mac. (Sadly the method won't work for an iphone or iPad)

Original post

This is something I'm asked often, it's the most frequently asked question about Bounce Metronome. Will it run on a Mac / iPad / iPhone?

The short answer is, that it can't run on any of those right now. But it might be able to run on an Intel Mac with a bit of work. I can't see it running on an iPad / iPhone in near future, instead that probably requires me to write a new multi-platform app from scratch. To add yourself to a mailing list to be notified of any developments, please go to the Multi-Platform Contact form.

For iPad / iPhone

I can't see it running on an iPad / iPhone in the near future, because it is compiled into x86 code which can't run on an Arm processor. Same for Android - or at least if it did, it would need to be some version of Wine bundled with a CPU emulator to run the code - or if there is some way to compile a Windows program into Arm instructions. If anyone reading this has any techy ideas about how that might be possible do let me know!

For more about this, and to find a form you can use to add yourself to a mailing list for developments, see Mac, Mobile, and Other Multi-Platform FAQs

For Intel Mac

For the modern Intel Mac though the situation is far more promising. These use an Intel chip and run x86 code. So, on the face of it, looks as if it would be possible to run it using some version of Wine. It's just a matter of whether there are any detailed issues that prevent it running.

It already runs on a Linux computer using Wine. But I did have to do a fair bit of reprogramming to get that to work. Though Wine emulates Windows fairly well, they have no access to the Windows source code, or details of how Windows work outside of its documentation and what you can find out just by using it. They have to do it that way for legal reasons, that's why it's permitted to develop Wine under interoperability legislation in the US.

This means, there are always going to be minor, usually insignificant differences between Wine and Windows. Some programs run fine, some don't and some run but with some features not working. In case of Bounce then after some work reprogramming parts of it for Wine, it worked just fine except for the export of videos to .avi files which doesn't work, but few users need that feature.

There are sure to be other minor differences also for implementations of Wine on the Mac, because it has to translate the Windows dlls to native Mac code instead of native Linux codes, and emulate the layout of the Windows file system, dlls, midi devices, etc on a Mac instead of a Linux machine.

So there is no guarantee that it will work right away but just as for Linux I'm ready to do the work if anyone on a Mac is geeky and able to do the testing and bug reports. 

HOW TO RUN BOUNCE ON A MAC UNDER WINE FOR TESTING

There are several main projects under active development. All use Wine and all let you turn your Windows program into a package that looks to the Mac like a native Mac app - but to Bounce Metronome it would look as if it is running under Windows. They package the entirety of Wine into the app. This also means you can totally customize Windows, the version, any files and registry entries the app needs, and so on, just as it is needed for the app.

So, it needs someone to do that packaging - and then after that, you have what looks like a native Mac app for anyone to download and run.

First is Wine Bottler. From what I've read it may be the easier to use of the two. It's under active development, though by a single developer.

This shows the process of getting a program to install as a WineApp with Wine Bottler

It looks pretty straightforward. Run the installer. Unselect the option to make a desktop shortcut and don't let the program run after the install. Bounce is backwards compatible to Windows XP. It does need special dlls which it installs itself. Hopefully those will go in the right place, and still be accessible after the install, but if not, I can provide the dlls myself and tell you where to put them, should work fine to just put them into Bounce Metronome's own install folder.

Then there's WineSkin. It's a typical open source project. General impression I get of the site is, that they are friendly and helpful. It might be a bit geeky though, compared with Wine Bottler.

Again same as for Wine Bottler, they all work the same way, you end up with a native Mac App you can download and install pre-packaged with everything Bounce needs.

Then there's Cider. This is a program used by major game developers to port their games to the Mac. I don't know how it works, the site just says to contact them if I want to use their product to port my program to a Mac. Maybe it involves some kind of a licensing agreement?

All of these have the major advantage that once you've packaged Bounce, then you get a native Mac app that anyone can download and install, if I understand the process right. So - there is geeky work involved possibly, setting it up to work in the first place - but that only needs to be done once, and then everyone else can just use the resulting app on their Mac like any other app. That is if I understand rightly how it all works.

OTHER WAYS TO RUN IT ON A MAC

Then there's Cross Over - a commercial product, but with free trial available, and the totally free Play on Mac

These work differently, they let you run the Windows program on a Mac that has these installed. So is more like the way that Wine works on Linux.

Here is a short entry in Wikipedia on Windows gaming on a Mac using Wine, which is relevant.

TESTING ON A MAC MYSELF

I'm not yet earning enough from this business to buy a new Mac from the proceeds, at least not easily. But I may be able to get a second hand Mac if I can find one for under $200 say, perhaps later this year, depending how the business goes.

It might be possible to get it around that price on e-bay.  I could buy it right now for £90 for the Mac itself - no display but can use my PC external monitor, no keyboard or mouse though, and would have to buy those separately, not sure how much that would cost, seems they cost a fair bit for a Mac.

Or could get a second hand MacBook right away for £290. That's at a lower price than normal because slightly damaged and has a totally dead battery - but chances are that Macs in that condition and price turn up every so often on e-bay. That's about $490

I'd get that back as business income if I sell about 29 Pro licenses (on average I earned $17 per sale for the last year on Fastspring, not taking account of those who buy directly using paypal, which tend to be lower price). So far I've had over 60 people who have filled in the form on the website saying they want to be notified if I do a version for a Mac.

So, theoretically, if they all bought it, then I'd be able to cover the price of the MacBook twice over - chances are they wouldn't all buy it, but it's promising even so.

It's a bit hard to find even that just now, as there is no guarantee that it would work on a Mac, and no guarantee that everyone interested in it running would buy it. But it's an amount I'm able to find from time to time with my business, so hopefully soon.

Another idea is to try doing this as a KickStarter or other Crowd Funded project. If I need to get a modern Mac, new, you can get for instance the Intel Macbook Air for £712 currently, here in the UK, so that's about $1200. I think it would work better to do a kickstarter for a modern Mac than ask for funds to buy a second hand one also.

You'd think it wouldn't be that hard to raise that amount with a kickstarter. And that also might lead to more interest in buying it for a Mac. I could do free copies for the Mac as your bonus for the kick starter if you contribute above a certain amount, set to less than the normal price, for instance.

That again also would be a way of assessing interest amongst those who filled in the forms on the website. If everyone who expressed interest so far contributed $20 to the kickstarter, that by itself would be enough to buy a new Macbook air for testing.

The bundle could include licenses for Tune Smithy Complete (of interest to microtonal performers and comosers especially), Lissaous 3D also and Virtual Flower - if I get Bounce running on a Mac, then I'd also work on getting all my programs working.

So the $20 contribution to the kickstarter would get them at far lower than the price if you were to buy them directly - but of course with no guarantee that the project will succeed, just that I'll do my very best to get Bounce working on a Mac under Wine.

If that doesn't work, a second hand Mac Mini might be enough for this..

I might well give this a go later this year, when I finish the current work on making Bounce pen and touch compatible, and another project I need to finish urgently in near future, and assuming the business income supports it.

ARE YOU KEEN TO GET BOUNCE WORKING ON A MAC RIGHT AWAY

With Linux I had the aid of Aaron Wolf, a geeky linux musician. Plus also I could run Linux on my Windows PC using Virtual Box, because it's a free OS.

With the Mac, first, I can't run iOS on my computer for legal reasons, Apple do not permit that - though Windows do permit their operating system to run on a Mac - that's why you get virtual machines to run Windows on a Mac, like Parallels, but don't get virtual machines to run iOS on a Windows machine.

Still, possibly much of the work is already done with the Linux compatibility. There may be just a few minor bugs and issues to deal with. If so, then if I can find an enthusiastic geeky techy Mac musician like Aaron Wolf but for the Mac, perhaps I can debug it for the Intel Mac as well.

But - Mac musicians in general don't tend to be geeky in the same way Linux musicians are. Some though, including e.g. programmers for the Mac.

 

ARE YOU ALSO REASONABLY GEEKY / TECHY?

If anyone reading this wants to give these a go - you need to be reasonably techy I think, but not a programmer. Don't guarantee that any of these solutions won't mess up your computer, as I've not tested any of them myself.

But if you want to give it a go do let me know what happens, and if you give detailed bug reports of exactly what happens if Bounce runs - or if there are any errros when you try to run it or install it such as missing dlls, let me know and I can do what I can to try to fix them.

If not, well later this year hopefully, I'll see what I can do about getting a Mac myself for development.