macOS

From PCGamingWiki, the wiki about fixing PC games
macOS
macOS cover
Developers
Apple Inc.
Release dates
Mac OS (Classic) January 24, 1984
macOS (OS X) March 24, 2001
MacOS at Wikipedia

macOS is a family of operating systems developed by Apple and exclusively available to Apple's own family of personal computers known as Macintosh (or Mac for short). Although there are certain "regular" PCs that can run the operating system (know as "Hackintoshing") it is highly controversial due to violating Apple's end-user license agreement and being notoriously inconsistent in its results.

The family is separated into two distinct series:

  • The Classic Mac OS (System Software) series that consists of operating systems released between 1984 to 2001, starting with System 1 and ending with Mac OS 9.
  • The modern macOS (previously Mac OS X and later OS X) series that consists of operating systems released between 2001 and today, starting with the release of Mac OS X 10.0 and continuing with a new 10.x release every couple of years. Instead of being based on the Classic Mac OS, the series traces its roots back to NeXTSTEP which itself is derived from UNIX. This series of the operating system is also the basis for iOS as well as its other siblings in Apple's product lineup. The series was rebranded from Mac OS X to OS X in 2012 and to its modern name macOS in 2016.

The original Macintosh was released in January 1984, and was one of the first systems to pioneer the graphical user interface (GUI). Prior to its release, Apple had three series of command-line driven terminal computers known as the Apple I, Apple II and Apple III. These systems were not compatible with the Macintosh and should not be mistaken with it. Apple additionally had another graphical driven system prior to the Macintosh called the LISA; again also not compatible.

The family of operating systems are one of few platforms to have survived moves to new processor architectures, with a move from Motorola's 68k to IBM's PowerPC in the mid 1990s, followed by a move to Intel in the mid 2000s, and a move to ARM during the early 2020s.

Newer versions of the operating system still makes use of OpenGL 4.1 from 2010 and with the release of macOS 10.14 in 2018 Apple officially deprecated support for the standard in favor of their own Metal API.[1] This move resulted in a large lack of recently released major games on the operating system.[citation needed]

Modern versions of the operating system does not have support for the Vulkan graphics API, however developers can utilize MoltenVK in their games to translate Vulkan calls into Apple's Metal API.

General information

Terminology for macOS differs heavily compared to standard x86 PCs, e.g. Wi-fi is "Airport", V-Sync is "Beam Sync", memory compression is "Extended Memory", etc.
An open source clone of Apple's Cocoa API for other platforms is available in the form of GNUStep. Note however that unlike Wine, apps still must be recompiled for the other OSes due to GNUStep not emulating the Mach-O binary format OS X uses.
macOS' UNIX derived kernel, XNU/Darwin, is open source along with several core technologies of the OS.

Communities

/r/macgaming
/r/mac

"Classic" Mac OS[edit]

The "classic" Mac OS is characterised by its lack of the command line, and encompasses the different Mac OS' from 1984 to 2001. It lacks primitive multitasking and protected memory and is composed largely on 68k assembly code.

Emulation[edit]

Unfortunately due to its age, in order to run apps from the old "Classic" System you need an emulator. You can effectively think of the following as the Macintosh equivalent to DOSBox. Three option are available: Sheep Shaver, Basilisk, and Mini vMac. To categorize them in the simplest way possible, Mini vMac is for black and white 16/24-bit 68000 based Macs, Basilisk is for color 32-bit (020, 030 & 040) 68k Macs, Sheep Shaver is for classic PowerPC Macs.

Unlike DOSBox, these Mac emulators require official Apple Mac Operating Systems and firmware/boot ROMs. Unfortunately, these are illegal to distribute (with exception to System 7.5.1 to 7.5.5 which was released as freeware and Mac ROMs found in official classic updates).
They do not emulate 3D hardware acceleration for video nor audio. They also do not emulate the MMU and, in Sheep Shaver's case, FPU.

macOS[edit]

Previously Mac OS X and later OS X.
Since the release of 10.15, also known as "Catalina" in October 2019; the only programs (or in this platform, apps) that function are ones that are coded for 64-bit Intel (or after 2020, ARM) processors. Many earlier apps prior to circa 2012 are affected. So far, your only hope to get these older apps work is to either wait for the software publisher to update the app for supporting 64-bit or ARM processors; or install an earlier version of the OS (10.14, aka "Mojave" and earlier) that supports 32-bit apps - which is not possible on newer Macs released after 10.15's release.
ARM-based Macs may not support 64-bit Intel apps beyond a certain version.

Useful Programs[edit]

Wine[edit]

Wine is one of the easiest and most popular way for Linux users to run programs written for Microsoft Windows. The Wine team has created a port for OS X that is well maintained and in a usable state.

Crossover[edit]

Can run 32 bit Windows programs, including games, on macOS 10.15 Catalina since version 19.[2]

A paid commercial version of Wine which includes custom scripts, patches, GUI and third-party software.

Mouse fixes[edit]

Mouse Acceleration Preference Pane allows you to adjust, or disable, mouse acceleration in macOS; something that's not normally tweakable.

Additionally macOS once had a bug that induced mouse lag, going as far back as 10.4 (Tiger). For the longest time the solution was to remove or disable Apple's AppleUpstreamUserClient.kext via the terminal[3] [4] [5], i.e.

cd /System/Library/Extensions/ && sudo mv AppleUpstreamUserClient.kext AppleUpstreamUserClient.kext.old

A slightly more solid fix is available in the form of SmoothMouse. Note that it requires 10.8 (Mt. Lion) or later to function, though some earlier betas for 10.6 were available. OS X 10.12 (Sierra) and later do not have mouse lag issues.

Similar programs existed for the Classic Mac OS as well.

Boot Camp[edit]

Boot Camp is an official piece of software included with macOS that assists users in installing and running Microsoft Windows in a partition on the hard drive. The most recent version only includes support for Windows 10, though earlier releases supported XP through 8.1.

The Shell[edit]

The Unix shells "bash" and "zsh" (the former being the default on every release until 10.14 ("Mojave"), the latter being the default since 10.15 ("Catalina"); though both are available as options) available on macOS are very useful tools for doing system tasks. If you use macOS as your main operating system, then it is highly recommended that you learn how to use them. Google Code University provides a good starting guide.

Rosetta[edit]

Rosetta is a software emulator for Intel Macs that enables them to run older (OS X native) PowerPC apps. This can be useful for running games that didn't receive a Universal Binary update post-2006, such as the Mac OS X release of Fallout.

Removed in OS X 10.7 "Lion" and later.
Only emulates G3 and most G4 instructions. PowerPC 64-bit and 32-bit G5 applications are not supported.

Rosetta 2[edit]

Rosetta 2 is a software emulator for ARM Macs that enables them to run older (macOS native) Intel apps.

May be removed at some point in the future and probably will not support all apps.

Classic Environment[edit]

Similar to Microsoft's NTVDM for DOS apps, the classic environment was a compatibility layer for OS X that allowed it to run classic apps at roughly native speeds. Note that the Classic environment is NOT an emulator, and as the classic OS is based entirely on PowerPC (and/or 68k) code, it does not function on Intel Macs.

Removed in 10.5 "Leopard" (both Intel and PowerPC).
Apps that require direct hardware access crash under Classic.
Some applications that draw on the screen are glitched starting in 10.3 "Panther", due to the Classic Environment switching to a double-buffered window.

References