Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

th0masp

macrumors 6502a
Original poster
Hi everyone,

My Trashcan Mac Pro just bit the dust and I'm looking at an urgent replacement, possibly a Mini. Pretty straight forward move - if it weren't for that one application I'd really like to keep that is 32-bits only (abandonware). Is there any way to run that on a M-series Mac with the current OS releases?

The binary is available as 32-bits Windows and (Intel-) Mac builds. Emulation, virtual machine running Mojave or Windows or Wine, ... are there any options at all?

Thanks!
 
Rosetta 2 doesn't permit running 32-bit Intel Mac apps, only 64-bit.

Windows-on-Arm has an x86 emulation layer similar to Rosetta, but does support 32-bit apps, so you can run Arm Windows inside a VM (Parallels or VMWare Fusion), then run the 32-bit Windows binary inside the VM.

Wine might also be an option, skipping the full VM.
 
Windows-on-Arm has an x86 emulation layer similar to Rosetta, but does support 32-bit apps, so you can run Arm Windows inside a VM (Parallels or VMWare Fusion), then run the 32-bit Windows binary inside the VM.
Oh wow - what's that like for performance though? Not that my app would require a ton and I realize the M4 of the Mini would be running rings around my old Trashcan's Xeon but that solution kinda sounds like a slide show. 😀

When you say Wine (Winebottler or Crossover...?) - would that allow 32 bits x86 binaries without going the Windows Arm route?
 
Performance of an app that doesn't need much should be fine either way. And yes, I'm referring to things like Winebottler or Crossover for the second option. Crossover is a commercially packaged Wine with some extra things; Crossover's employees are probably the #1 current source of work on the open source Wine project. This means that some stuff works best in Crossover, but there's a chance it works fine in plain open-source Wine (which is what Winebottler looks like).

32 bit Intel binaries work in Arm Macintosh Wine, thanks to some interesting work both inside and out of Apple. The inside-Apple work is that Rosetta actually does support 32-bit x86 instructions, even though it can't run 32-bit Mac applications. (The apps require 32-bit Mac system libraries, and Apple hasn't shipped those since macOS Catalina, which cannot run on Apple Silicon Macs.) The outside-Apple work was done by Crossover - they figured out how to take that ability of Rosetta to run 32-bit Intel instructions and apply it to Wine, which IIRC was not simple to pull off. Net result: Wine can run 32- and 64-bit Intel Windows binaries on Arm Macintosh through Rosetta.
 
  • Wow
Reactions: Z-4195 and th0masp
If the performance requirements are not too high you could also use UTM/Qemu to emulate a 32bit x86 system and install 32bit Windows and your legacy application. This approach is slower than virtualization, but you can emulate a bunch of different processors.
 
  • Like
Reactions: th0masp
I'm running Windows XP via UTM for this kind of use case since my 2020 Intel MBP bit the dust. The configuration I need doesn't work on ARM Windows, and anything newer than XP is too slow to be usable, even on an M4. So performance-wise it should be doable. I don't know how feasible it is to run a 32-bit OS X version through emulation, though, but here are some configuration files that might get you started: https://github.com/adespoton/utmconfigs
 
  • Love
Reactions: th0masp
I'd recommend giving Crossover a try if there is a Windows version available. I had a legacy app that the kids really like (Lego Digital Designer) that doesn't run on AS, but the Windows version ran fine via Crossover.
 
  • Like
Reactions: th0masp
Just wanted to report back with how it all went.

I fumbled and struggled with some solutions and various hiccups along the way and finally settled on Crossover.

It made installing the Windows build of my app a breeze and the performance is ... outstanding. I'd say easily 2+ times faster than the native Intel-Mac build on the Mac Pro was, perhaps better. Some of that surely down to the Mac build being a bit of an afterthought for its developer at the time.

However this app when run in emulation through Crossover seems to have serious trouble with the host system going through sleep/wake-cycles and every time corrupts a database it's working with so it turns out a no-go in my case and I'll have to find an alternative solution. Performance though would have been amazing and if I ever have doubts again about the feasibility of getting Windows stuff to work on AS I'll keep this solution in mind.

Thanks all for the help!
 
I've never had that issue, and I've been using Crossover since June.
Note that I'm not talking about Crossover corrupting some database it uses. It's the app installed within a bottle that runs its own database inside that bottle that corrupts itself when the host system wakes up.
 
Note that I'm not talking about Crossover corrupting some database it uses. It's the app installed within a bottle that runs its own database inside that bottle that corrupts itself when the host system wakes up.
I did a bit more googling, asking chatgpt, while my initial query did not come up with anything, my second attempt has: This is a known and fairly common issue with CrossOver on macOS, especially on Apple-silicon Macs, and it usually shows up after waking from sleep, the CrossOver app or a running Windows app becomes corrupted, visually broken, frozen, or unstable.

The options to resolve this seem to be disabling sleep, but also you can try changing the graphics setting from D3DMetal to DXVK

It also seems more likely to occur for full screen, so changing your app to windowed may help
 
  • Like
Reactions: th0masp
I did a bit more googling, asking chatgpt, while my initial query did not come up with anything, my second attempt has: This is a known and fairly common issue with CrossOver on macOS, especially on Apple-silicon Macs, and it usually shows up after waking from sleep, the CrossOver app or a running Windows app becomes corrupted, visually broken, frozen, or unstable.

The options to resolve this seem to be disabling sleep, but also you can try changing the graphics setting from D3DMetal to DXVK

It also seems more likely to occur for full screen, so changing your app to windowed may help

Thanks - I just did this change for the graphics setting, seems to help with the situation so far but I'll give it a couple days of testing before handing any prize to ChatGPT. 🙂
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.