MacOS emulators: Difference between revisions

From Emulation General Wiki
Jump to navigation Jump to search
m Simplify macOS on Hyper-V
Ahayri (talk | contribs)
Line 160: Line 160:
==Proxy projects for retro web browsing==
==Proxy projects for retro web browsing==
{{Main|Preservation projects#Proxy projects for retro web browsing}}
{{Main|Preservation projects#Proxy projects for retro web browsing}}
==Emulation issues==
===PowerPC===
Currently, no 3rd-party Macintosh emulators support hardware graphics acceleration, due to [https://www.emaculation.com/forum/viewtopic.php?t=8396 certain CPU instructions left unimplemented in their upstream PPC softcores]. This means no GLIDE, RAVE, or OpenGL. Fortunately, though as was generally the case in every platform of the period significant visual and feature differences exist between the two, the majority of Mac-exclusive software using these APIs also included software fallback renderers. It is however possible to pass through a real GPU to a PowerPC Mac being emulated by QEMU provided you have one that's compatible with OpenFirmware
===x86===
Despite an x86-based Mac is very similar to a general non-Apple PC in hardware architecture (which makes [[wikipedia:/Boot_Camp_(software)|Boot Camp]] and [[wikipedia:Hackintosh|Hackintosh]] possible), it still contains Apple proprietary hardware such as closed-source EFI BootROM, System Management Controller (SMC) and later T1/T2 security chip that either requires bypassing or emulation in order to run macOS. macOS also contains countermeasures that prevent it from being run on a non-Apple PC such as the infamous [https://www.tonymacx86.com/threads/dont-steal-mac-os-x-kext.51175/ Don't Steal Mac OS X.kext].
Another big hurdle is that macOS only contains drivers for hardware components used in actual Mac computers, which means a large portion of PC users who use different hardware combinations than actual Mac computers need to bypass, patch, or port drivers for their hardware in order to boot macOS and promote it to a usable state, and might still with crippled functionalities due to no or imperfect solutions to drive some of the hardware.
===ARM===
Hurdles in emulating ARM-based Mac are basically the same as emulating iOS devices: Apple's proprietary M1/M2 SoC which has little to no documentation, and hardened security measures inherited from iOS devices. However if Apple discontinues support for x86 in XCode, there will be no way to code modern iOS apps on other platforms or use macOS apps in general. If an ARM macOS emulator is sucessful, modern iOS emulation will be "cracked" too (apart from Corellium though).


{{Apple}}
{{Apple}}
[[Category:macOS| ]]
[[Category:macOS| ]]

Revision as of 14:15, 10 July 2026

macOS
Developer Apple
Initial release March 24, 2001
Latest release 26.6.2 / August 17, 2026
Preceded by Classic Mac OS, NeXTSTEP
Emulated ~
This page is about software that emulates macOS on other hardware.
For emulators that emulates Classic Mac OS systems, see Macintosh line.
For emulators that run on macOS, see Emulators on macOS.
For emulators that run on Classic Mac OS, see Emulators on Classic Mac OS.

This page covers Apple's Darwin-based operating system, formerly known as Mac OS X (pronounced as "ten", not as "Ex"), used on Macs from 1999 (Mac OS X Server 1.0) up to the present day (macOS 26 Tahoe).

PowerPC

Name Platform(s) Latest version License Active Recommended
x86
Rosetta macOS Mac OS X 10.6 "Snow Leopard" (Intel) Proprietary
QEMU Windows Linux macOS 11.1.0 GPLv2 (Copyleft) ~*
PearPC Windows Linux macOS 0.6.0 GPLv2 (Copyleft)
DingusPPC Windows Linux macOS git GPLv3 (Copyleft) WIP
PowerPC
MacOnLinux Linux Original Website
Source
GPLv2 (Copyleft)
ARM
UTM macOS iOS 4.7.5
Config files
Apache 2.0 (Permissive) ?
PearPC
This emulator had been developed since 2004, and is capable of booting OS X 10.1-10.4, but not prior Mac OSs, nor OS X's Classic environment. It once had lots of developer momentum, but activity and interest declined significantly following Apple's 2005 transition to Intel processors. It was the subject of controversy when a closed-source emulator, CherryOS, was revealed to have used code stolen from PearPC. PearPC lacks a GUI (even the "Change CD" button is removed in the most recent builds), so using a frontend may be necessary. Sound is not emulated unless you use a buggy and now outdated fork.
QEMU
Best known for its use as an x86 hypervisor, QEMU also emulates a wide range of CPU architectures. In 2015, a Google Summer of Code event brought PowerPC Macintosh support from a curiosity to a possibility and it now supports a specific range of versions as of 2017. Like PearPC, QEMU is run from a shell.
Rosetta
Apple's official PowerPC compatibility layer for x86-based Macs included in Tiger (10.4.4). Though it wasn't included in by default on Snow Leopard users can optionally reinstall it from the Snow Leopard DVD or chose to install it with the OS when preforming a fresh install. It was removed entirely in OS X Lion. Rosetta uses QuickTransit technology licensed from Transitive Corporation, and works transparently from the end-user, leading Apple to market it as "the most amazing software you'll never see." as it, unlike most emulators, does not have a user interface. Rosetta works best on software that isn't system-intensive, such as office applications; games and other software applications which rely on kexts, libraries or certain instructions may not work properly if at all. A compatibility list is available here.
DingusPPC
Experimental emulator early in development.
Mac-on-Linux
Virtualizer made exclusively for PowerPC Linux, allows to natively install several MacOS versions.

x86

Note: installing macOS on non-Apple x86 hardware, the practice known as Hackintosh, is a more common and feasible way of running macOS programs on a regular PC rather than trying to emulate or virtualize actual Mac hardware.
Name Platform(s) Latest version License Active Recommended
x86
OSX-KVM Linux git ?
macOS On Hyper-V Windows git ? ~ ~
ARM
Rosetta 2 macOS Bundled with latest macOS (Apple Silicon) Proprietary
Rosetta 2
Rosetta 2 is a compatibility layer on Apple silicon Macs allowing x86-64 apps to run on ARM-based Macs. Note that Rosetta 2 is not strictly limited to MacOS apps as software such as Crossover is able to call it to emulate x86 code in Windows binaries.

ARM

THERE ARE CURRENTLY NO EMULATORS FOR THIS DEVICE OR PLATFORM. ANY CLAIMS TO OFFER THEM ARE SCAMS!

Name Platform(s) Latest version License Active Recommended
ARM
UTM macOS [N 1] 4.7.5 Apache 2.0 (Permissive) ~
VirtualBuddy macOS [N 2] 2.1 BSD-2-Clause (Permissive)
  1. Requires Mac with Apple Silicon (ARM) processor and macOS 12 Monterey or higher.
  2. Requires Mac with Apple Silicon (ARM) processor and macOS 13 Ventura or higher. Uses Apple's hypervisor framework to virtualise macOS 12 Monterey and higher.

Enhancements

Name Rosetta QEMU PearPC DingusPPC

Hardware and peripherals

Name Rosetta QEMU PearPC DingusPPC
Power light ~[lower-alpha 1] ~[lower-alpha 1]
  1. 1.0 1.1 Only from a modified version on Infinite Mac.

Proxy projects for retro web browsing

Main article: Preservation projects#Proxy projects for retro web browsing

Apple(edit)