Difference between revisions of "Macintosh line"

From Emulation General Wiki
Jump to navigation Jump to search
(Typo)
(x86 and ARM hurdles)
(25 intermediate revisions by 13 users not shown)
Line 1: Line 1:
 
{{Infobox console
 
{{Infobox console
 
|title = Apple Macintosh
 
|title = Apple Macintosh
|logo =  
+
|logo = Macintosh.jpeg
|developer = Apple Computer, Inc.
+
|developer = [[Apple Inc.|Apple Computer, Inc.]]
|type = [[:Category:Computers|Home computer]]
+
|type = [[:Category:Computers|Computers]]
 
|release = 1984
 
|release = 1984
 
|discontinued =  
 
|discontinued =  
|predecessor = [[Apple II Line|Apple ][]], [[Lisa]]
+
|predecessor = [[Apple Lisa emulators|Lisa]], [[Apple II Line|Apple ][]]
 
|successor =  
 
|successor =  
 
|emulated = {{✓}}
 
|emulated = {{✓}}
Line 14: Line 14:
 
Throughout its history the Macintosh has spanned four CPU instruction set architectures that represent the four commonly known generations. From its launch in 1984 up until 1996, Apple sold Macintoshes with the Motorola 68k family of CPUs. In the early 90s, Apple partnered with Motorola and IBM to combine IBM's POWER with Motorola's 88k to produce the PowerPC (PPC) architecture they used in Macs from 1994-2007, naming some of them accordingly as Power Macintosh. They switched to x86 in 2007, justifying it with the explanation that PPC failed to be competitive with Intel's Pentium M series. And in 2020 have started a transition from x86 to ARM, further integrating with its more popular iOS mobile spinoff.
 
Throughout its history the Macintosh has spanned four CPU instruction set architectures that represent the four commonly known generations. From its launch in 1984 up until 1996, Apple sold Macintoshes with the Motorola 68k family of CPUs. In the early 90s, Apple partnered with Motorola and IBM to combine IBM's POWER with Motorola's 88k to produce the PowerPC (PPC) architecture they used in Macs from 1994-2007, naming some of them accordingly as Power Macintosh. They switched to x86 in 2007, justifying it with the explanation that PPC failed to be competitive with Intel's Pentium M series. And in 2020 have started a transition from x86 to ARM, further integrating with its more popular iOS mobile spinoff.
  
Macintosh computers have always included a platform-exclusive operating system that never had a consistent name.<ref group=N> It used to be called System or System Software until version 7.6, when it was renamed Mac OS in 1997. Version 10 was named Mac OS X in 2000, and when version 10.8 was released in 2012, it was shortened to OS X and then macOS when version 10.12 was released in 2016. Don't try to make sense of this.</ref> An important divide relevant for Mac emulation is "Old World" vs. "New World" motherboard ROMs, with Old World used for System 1-7 on 68k/PPC targets, and New World generally used for Mac OS 8-10 PPC targets. A quick way to distinguish an Old World from a New World Mac is that all New World Macs have onboard USB ports, while no Old World Macs do. New World ROMs are required for OS 8.5, thus also dropping support for 68k. Mac OS X, which has UNIX underpinnings different from its predecessor, was introduced in 1999 requiring a PowerPC G3 at minimum,<ref group=N>With the exception of one orphaned early G3 laptop. Though that didn't stop some users from programming OS X bootloaders for most PCI-based Macs, especially those with G3/G4 upgrades.</ref> and ported to x86 in 2006. With version 11 in 2020, macOS is now being ported to ARM (like its mobile cousin [[iOS emulators|iOS]]).
+
Macintosh computers have always included a platform-exclusive operating system that never had a consistent name.<ref group=N> It used to be called System or System Software until version 7.6, when it was renamed Mac OS in 1997. Version 10 was named Mac OS X in 2000, and when version 10.8 was released in 2012, it was shortened to OS X and then macOS when version 10.12 was released in 2016. Don't try to make sense of this.</ref> An important divide relevant for Mac emulation is "Old World" vs. "New World" motherboard ROMs, with Old World used for System 1-7 on 68k/PPC targets, and New World generally used for Mac OS 8-10 PPC targets, since New World ROMs were stored with the OS, they are available legally from Apple for free online in OS updates. A quick way to distinguish an Old World from a New World Mac is that all New World Macs have onboard USB ports, while no Old World Macs do. Mac OS 8.5 dropped support for 68k CPUs. Mac OS X, which has UNIX underpinnings different from its predecessor, was introduced in 1999 requiring a PowerPC G3 at minimum,<ref group=N>With the exception of one orphaned early G3 laptop. Though that didn't stop some users from programming OS X bootloaders for most PCI-based Macs, especially those with G3/G4 upgrades.</ref> and ported to x86 in 2006. With version 11 in 2020, macOS is now being ported to ARM (like its mobile cousin [[iOS emulators|iOS]]).
  
 
A ton of Macintosh emulators have appeared over the years, some early in the system's release (mostly for competing m68k microcomputers) and others as late as a few years ago. As a PC platform in its own right with its own userbase and varying degrees of unique software and hardware features, most major emulators of other platforms maintain a macOS port, or are ported to macOS by external collaborators, in addition to a number of emulators originating on the Mac over the years. It should be noted that we do not aim to be the last word on Mac emulation; there's a community called E-Maculation that covers this more thoroughly, as they offer builds for many of the emulators shown here on their forums. We'll either be further ahead or severely behind.
 
A ton of Macintosh emulators have appeared over the years, some early in the system's release (mostly for competing m68k microcomputers) and others as late as a few years ago. As a PC platform in its own right with its own userbase and varying degrees of unique software and hardware features, most major emulators of other platforms maintain a macOS port, or are ported to macOS by external collaborators, in addition to a number of emulators originating on the Mac over the years. It should be noted that we do not aim to be the last word on Mac emulation; there's a community called E-Maculation that covers this more thoroughly, as they offer builds for many of the emulators shown here on their forums. We'll either be further ahead or severely behind.
Line 25: Line 25:
 
! scope="col"|Platform(s)
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|Latest Version
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
|-
!colspan="5"|PC / x86
+
!colspan="6"|PC / x86
 +
|-
 +
|Basilisk II
 +
|align=left|{{Icon|Windows|Linux|macOS}}
 +
|[https://github.com/kanjitalk755/macemu/ 1.0 R5]
 +
|{{✓}} ||{{✓}} ||{{✓}}
 
|-
 
|-
 
|Mini vMac
 
|Mini vMac
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://www.gryphel.com/c/minivmac/download.html 36.04]
 
|[https://www.gryphel.com/c/minivmac/download.html 36.04]
|{{✓}} ||{{✓}}
+
|{{✓}} ||{{✓}} ||{{✓}}
|-
 
|Basilisk II
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/cebix/macemu 1.0 R5]
 
|{{✓}} ||{{✓}}
 
|-
 
|vMac
 
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 
|[http://www.vmac.org/ 0.19]
 
|{{✗}} ||{{✗}}
 
 
|-
 
|-
 
|[[MAME]]
 
|[[MAME]]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://www.mamedev.org/release.html {{MAMEVer}}]
 
|[https://www.mamedev.org/release.html {{MAMEVer}}]
|{{✓}} ||{{}}
+
|{{✓}} ||{{✓}} ||{{TBD}}
 +
|-
 +
|[[Clock Signal]]
 +
|align=left|{{Icon|Linux|macOS|FreeBSD}}
 +
|[https://github.com/TomHarte/CLK/releases {{clkVer}}]
 +
|{{✓}} ||{{✓}} ||{{TBD}}
 
|-
 
|-
 
|<abbr title="PC Emulator">PCE</abbr>
 
|<abbr title="PC Emulator">PCE</abbr>
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[http://www.hampa.ch/pce/download.html 0.2.2]
 
|[http://www.hampa.ch/pce/download.html 0.2.2]
|{{~}} ||{{TBD}}
+
|{{}} ||{{}} ||{{TBD}}
|-
 
|[[Clock Signal]]
 
|align=left|{{Icon|Linux|macOS|FreeBSD}}
 
|[https://github.com/TomHarte/CLK/releases {{clkver}}]
 
|{{✓}} ||{{TBD}}
 
 
|-
 
|-
 
|[[Ardi Executor]]
 
|[[Ardi Executor]]
 
|align=left|{{Icon|DOS|Linux|NextStep|Windows}}
 
|align=left|{{Icon|DOS|Linux|NextStep|Windows}}
 
|[https://www.emaculation.com/doku.php/executor 2.1.17]
 
|[https://www.emaculation.com/doku.php/executor 2.1.17]
|{{✗}} ||{{✗}}
+
|{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
|vMac
 +
|align=left|{{Icon|Windows|Linux|macOS|FreeBSD}}
 +
|[http://www.vmac.org/ 0.19]
 +
|{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
!colspan="6"|Consoles
 +
|-
 +
|Mini vMac
 +
|align=left|{{Icon|Pyra}}
 +
|[https://pyra-handheld.com/repo/apps/33 36.04]
 +
|{{✓}} ||{{✓}} ||{{✓}}
 +
|-
 +
!colspan="6"|Consoles
 +
|-
 +
|Basilisk II
 +
|align=left|{{Icon|PSP}}
 +
|[https://github.com/PSP-Archive/Basilisk-II-PSP/releases git]
 +
|{{✓}} ||{{✗}} ||{{~}}
 
|}
 
|}
  
Line 73: Line 88:
  
 
;[[MAME]]
 
;[[MAME]]
:To say it's a multi-system emulator would be an understatement. It covers a wide range of electronic history, with its namesake being arcade machines. Just typing in "Macintosh" will list basically everything Mac-related like the original Macintosh 128K (unfortunately labelled as Not Working) and the Macintosh II (which is OK). [https://github.com/mamedev/mame/blob/0f028a8bd2afcb32ccdab0291eb3a798a98a1afc/src/mame/machine/mac.cpp#L14 See the full list here.]
+
:To say it's a multi-system emulator would be an understatement. It covers a wide range of electronic history, with its namesake being arcade machines. Just typing in "Macintosh" will list basically everything Mac-related like the original Macintosh 128K (labelled as Working) and the Macintosh II (which is OK). [https://github.com/mamedev/mame/blob/0f028a8bd2afcb32ccdab0291eb3a798a98a1afc/src/mame/machine/mac.cpp#L14 See the full list here.]
 +
 
 +
;Clock Signal
 +
:A multi-system emulator with full-hardware [[Emulation Accuracy#Cycle accuracy|cycle-accurate]] emulation of the Macintosh Plus.
  
 
;PCE <small>(PC Emulator)</small>
 
;PCE <small>(PC Emulator)</small>
 
:A multi-system emulator. Computers it targets include the Macintosh Plus, SE and Classic. Stables used to release every two years but stopped in 2013. A snapshot exists for December 2018 however, which suggests that the project isn't completely dead.
 
:A multi-system emulator. Computers it targets include the Macintosh Plus, SE and Classic. Stables used to release every two years but stopped in 2013. A snapshot exists for December 2018 however, which suggests that the project isn't completely dead.
 
;Clock Signal
 
:A multi-system emulator with full-hardware [[Emulation Accuracy#Cycle accuracy|cycle-accurate]] emulation of the Macintosh Plus.
 
  
 
;[[Ardi Executor]]
 
;[[Ardi Executor]]
Line 90: Line 105:
 
! scope="col"|Platform(s)
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|Latest Version
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
|-
!colspan="5"|PC / x86
+
!colspan="6"|PC / x86
 
|-
 
|-
 
|SheepShaver
 
|SheepShaver
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|align=left|{{Icon|Windows|Linux|macOS}}
|[https://github.com/cebix/macemu 2.4]
+
|[https://github.com/kanjitalk755/macemu/ 2.4]
|{{✓}} ||{{✓}}
+
|{{✓}} ||{{✓}} ||{{}}
|-
 
|PearPC
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/sebastianbiallas/pearpc 0.6.0]
 
|{{✗}} ||{{✗}}
 
 
|-
 
|-
 
|Classic Environment
 
|Classic Environment
 
|align=left|{{Icon|macOS}} (PPC)
 
|align=left|{{Icon|macOS}} (PPC)
 
|Mac OS X v10.4 "Tiger"
 
|Mac OS X v10.4 "Tiger"
|{{✗}} ||{{✓}}
+
|{{✗}} ||{{✗}} ||{{✓}}
 +
|-
 +
|Rosetta
 +
|align=left|{{Icon|macOS}}
 +
|Mac OS X 10.6 "Snow Leopard" (Intel)
 +
|{{✗}} ||{{✗}} ||{{✓}}
 
|-
 
|-
 
|[[QEMU]]
 
|[[QEMU]]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|align=left|{{Icon|Windows|Linux|macOS}}
|4.0.0
+
|{{QEMUVer}}
|{{✓}} ||{{TBD}}
+
|{{✓}} ||{{✓}} ||{{TBD}}
 
|-
 
|-
|Rosetta
+
|PearPC
|align=left|{{Icon|macOS}}
+
|align=left|{{Icon|Windows|Linux|macOS}}
|Mac OS X 10.6 "Snow Leopard" (Intel)
+
|[https://github.com/sebastianbiallas/pearpc 0.6.0]
|{{✗}} ||{{✓}}
+
|{{✓}} ||{{✗}} ||{{✗}}
 +
|-
 +
|[[DingusPPC]]
 +
|align=left|{{Icon|Windows|Linux|macOS}}
 +
|[https://github.com/dingusdev/dingusppc git]
 +
|{{✓}} ||{{✓}} ||{{✗}}
 
|-
 
|-
 
|}
 
|}
Line 133: Line 154:
 
;Rosetta
 
;Rosetta
 
:Apple's official PowerPC emulator for x86-based Macs included in Tiger (10.4.4). Though it wasn't included in Snow Leopard, it was still possible to transfer it from a previous Leopard 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 [https://web.archive.org/web/20060208152806/http://guides.macrumors.com/Rosetta_incompatibilities here].
 
:Apple's official PowerPC emulator for x86-based Macs included in Tiger (10.4.4). Though it wasn't included in Snow Leopard, it was still possible to transfer it from a previous Leopard 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 [https://web.archive.org/web/20060208152806/http://guides.macrumors.com/Rosetta_incompatibilities here].
 +
 +
;DingusPPC
 +
:Experimental emulator early in development.
  
 
===x86===
 
===x86===
 +
:''Note: installing macOS on non-Apple x86 hardware, the practice known as [[wikipedia:Hackintosh|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.''
  
 
{| class="wikitable" style="text-align:center;"
 
{| class="wikitable" style="text-align:center;"
Line 141: Line 166:
 
! scope="col"|Platform(s)
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|Latest Version
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 
! scope="col"|Active
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
|-
!colspan="5"|PC / x86
+
!colspan="6"|PC / x86
 
|-
 
|-
 
|Rosetta 2
 
|Rosetta 2
 
|align=left|{{Icon|macOS}}
 
|align=left|{{Icon|macOS}}
|macOS 11 “Big Sur” (Apple Silicon) (Upcoming)
+
|macOS 11 “Big Sur” (Apple Silicon)
|{{✓}} ||{{✓}}
+
|{{✗}} ||{{✓}} ||{{✓}}
 
|-
 
|-
 
|}
 
|}
 +
 +
===ARM===
 +
{{no current emulators|SYSTEM VARIANT}}
  
 
==Emulation issues==
 
==Emulation issues==
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, nor 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.
+
===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.
 +
 
 +
===x86===
 +
Despite an x86-based Mac is very similar to a general non-Apple PC in hardware architecture (which makes [https://en.wikipedia.org/wiki/Boot_Camp_(software) Boot Camp] and [https://en.wikipedia.org/wiki/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.
  
 
==Resources==
 
==Resources==

Revision as of 08:57, 30 June 2022

Apple Macintosh
Macintosh.jpeg
Developer Apple Computer, Inc.
Type Computers
Release date 1984
Predecessor Lisa, Apple ][
Emulated

The Macintosh is a family of personal computers designed, manufactured, and sold by Apple Inc. since January 1984. The original Macintosh was the first mass-market personal computer that featured a graphical user interface, built-in screen, and mouse, eschewing the command-line interface and/or BASIC interpreter that had been the mainstay for home computers since the late '70s. Apple offered the Macintosh alongside its popular Apple II family of computers for almost ten years before those were discontinued in 1993.

Throughout its history the Macintosh has spanned four CPU instruction set architectures that represent the four commonly known generations. From its launch in 1984 up until 1996, Apple sold Macintoshes with the Motorola 68k family of CPUs. In the early 90s, Apple partnered with Motorola and IBM to combine IBM's POWER with Motorola's 88k to produce the PowerPC (PPC) architecture they used in Macs from 1994-2007, naming some of them accordingly as Power Macintosh. They switched to x86 in 2007, justifying it with the explanation that PPC failed to be competitive with Intel's Pentium M series. And in 2020 have started a transition from x86 to ARM, further integrating with its more popular iOS mobile spinoff.

Macintosh computers have always included a platform-exclusive operating system that never had a consistent name.[N 1] An important divide relevant for Mac emulation is "Old World" vs. "New World" motherboard ROMs, with Old World used for System 1-7 on 68k/PPC targets, and New World generally used for Mac OS 8-10 PPC targets, since New World ROMs were stored with the OS, they are available legally from Apple for free online in OS updates. A quick way to distinguish an Old World from a New World Mac is that all New World Macs have onboard USB ports, while no Old World Macs do. Mac OS 8.5 dropped support for 68k CPUs. Mac OS X, which has UNIX underpinnings different from its predecessor, was introduced in 1999 requiring a PowerPC G3 at minimum,[N 2] and ported to x86 in 2006. With version 11 in 2020, macOS is now being ported to ARM (like its mobile cousin iOS).

A ton of Macintosh emulators have appeared over the years, some early in the system's release (mostly for competing m68k microcomputers) and others as late as a few years ago. As a PC platform in its own right with its own userbase and varying degrees of unique software and hardware features, most major emulators of other platforms maintain a macOS port, or are ported to macOS by external collaborators, in addition to a number of emulators originating on the Mac over the years. It should be noted that we do not aim to be the last word on Mac emulation; there's a community called E-Maculation that covers this more thoroughly, as they offer builds for many of the emulators shown here on their forums. We'll either be further ahead or severely behind.

Emulators

68k

Name Platform(s) Latest Version FLOSS Active Recommended
PC / x86
Basilisk II Windows Linux macOS 1.0 R5
Mini vMac Windows Linux macOS 36.04
MAME Windows Linux macOS 0.264 TBD
Clock Signal Linux macOS FreeBSD 2024-01-22 TBD
PCE Windows Linux macOS 0.2.2 TBD
Ardi Executor MS-DOS Linux Windows 2.1.17
vMac Windows Linux macOS FreeBSD 0.19
Consoles
Mini vMac Dragonbox Pyra 36.04
Consoles
Basilisk II PSP git ~
Basilisk II
An emulator targeting the "Mac Classic" and "Mac II" lines, capable of booting System 6.0.7 to OS 8.1 depending on ROM. The successor to Basilisk, a similar emulator for Linux and BeOS, it works by providing replacement drivers for components that would normally be hardware (a sort of HLE approach). Aside from the usual Windows, macOS, and Linux ports, Basilisk II also received an acclaimed (homebrew) PSP port.
Mini vMac
The successor to vMac, an older emulator. Targets the Macintosh Plus (capable of booting Systems 3 to 7.5.5), but can be built targeting other models (128K, 512Ke, SE, SE FDHD, Classic, or [buggy] II).
MAME
To say it's a multi-system emulator would be an understatement. It covers a wide range of electronic history, with its namesake being arcade machines. Just typing in "Macintosh" will list basically everything Mac-related like the original Macintosh 128K (labelled as Working) and the Macintosh II (which is OK). See the full list here.
Clock Signal
A multi-system emulator with full-hardware cycle-accurate emulation of the Macintosh Plus.
PCE (PC Emulator)
A multi-system emulator. Computers it targets include the Macintosh Plus, SE and Classic. Stables used to release every two years but stopped in 2013. A snapshot exists for December 2018 however, which suggests that the project isn't completely dead.
Ardi Executor
A formerly payware compatibility layer targeting System 1 to 6. Requires no ROM images or other copyrighted Apple code, as it instead translates Macintosh API calls into equivalent Win32 or POSIX API calls similarly to Wine. Compatibility is limited however, and as such some games and applications which depend on Mac System Extensions may not work properly.

PowerPC

Name Platform(s) Latest Version FLOSS Active Recommended
PC / x86
SheepShaver Windows Linux macOS 2.4
Classic Environment macOS (PPC) Mac OS X v10.4 "Tiger"
Rosetta macOS Mac OS X 10.6 "Snow Leopard" (Intel)
QEMU Windows Linux macOS 8.2.0 TBD
PearPC Windows Linux macOS 0.6.0
DingusPPC Windows Linux macOS git
SheepShaver
An open-source "run-time environment" that includes a PowerPC emulator for non-PowerPC host systems. Originally commercial software named ShapeShifter, it is the companion app of the 68k Mac emulator Basilisk II. It boots System 7.5.2 through (due to a lack of MMU emulation) OS 9.0.4, runs most Mac applications at full speed on any modern PC, and can interface with and copy files to and from host hardware. It hasn't seen significant development in a while, not to mention that it is riddled with hacks and workarounds, which accounts for why some applications such as the default bundled Internet Explorer flat-out crash. Like Basilisk and vMac, it needs a firmware image from a working Mac.
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 was the subject of controversy when a closed-source emulator, CherryOS, was revealed to have used code stolen from PearPC. PearPC lacks a GUI (all that's available is the "Change CD" button), so using a frontend may be necessary.
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 emulator for x86-based Macs included in Tiger (10.4.4). Though it wasn't included in Snow Leopard, it was still possible to transfer it from a previous Leopard 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.

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 FLOSS Active Recommended
PC / x86
Rosetta 2 macOS macOS 11 “Big Sur” (Apple Silicon)

ARM

THERE ARE CURRENTLY NO EMULATORS FOR THIS SYSTEM VARIANT. ANY YOUTUBE VIDEOS CLAIMING TO OFFER THEM ARE SCAMS!

Emulation issues

PowerPC

Currently, no 3rd-party Macintosh emulators support hardware graphics acceleration, due to 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.

x86

Despite an x86-based Mac is very similar to a general non-Apple PC in hardware architecture (which makes Boot Camp and 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 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.

Resources

  • E-Maculation - This links to their wiki, but they also have a forum that's "super busy." They provide setup guides and builds when the emulators themselves don't.
  • Macintosh Garden (They feature many abandonware games. This page shows guides with links to installing any of the three covered emulators, two for the 68K line called Basilisk II & Mini vMac; and one for the PowerPC called SheepShaver.)
  • Pathways into Emulators - A Guide to Pre-Halo Bungie Games (www.bungie.net forums. Mar 17 2011. Includes guide links for running Basilisk II on Windows, mac OS and Linux.)

Notes

  1. It used to be called System or System Software until version 7.6, when it was renamed Mac OS in 1997. Version 10 was named Mac OS X in 2000, and when version 10.8 was released in 2012, it was shortened to OS X and then macOS when version 10.12 was released in 2016. Don't try to make sense of this.
  2. With the exception of one orphaned early G3 laptop. Though that didn't stop some users from programming OS X bootloaders for most PCI-based Macs, especially those with G3/G4 upgrades.
Apple Inc.
Apple Computer (1998).jpg
Desktop: Apple IApple II Line (Apple IIGS) • Apple III lineLisaMacintosh lineMacOS
Mobile: iPodiOS
Consoles: Pippin