Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.

Difference between revisions of "MacOS"

From PCGamingWiki, the wiki about fixing PC games
m (→‎macOS ((Mac) OS X): simplified header)
(36 intermediate revisions by 8 users not shown)
Line 1: Line 1:
 +
{{DISPLAYTITLE:macOS}}
 
{{Infobox non-game
 
{{Infobox non-game
|cover        = MacOS original logo.svg
+
|title        = macOS
 +
|cover        = MacOS Logo 2017.png
 
|developers  =  
 
|developers  =  
 
{{Infobox game/row/developer|Apple Inc.}}
 
{{Infobox game/row/developer|Apple Inc.}}
 
|release dates=  
 
|release dates=  
{{Infobox game/row/date|Mac OS|1984}}
+
{{Infobox game/row/date|Mac OS|January 24, 1984}}
 
{{Infobox game/row/date|OS X|March 24, 2001}}
 
{{Infobox game/row/date|OS X|March 24, 2001}}
 
|winehq      =  
 
|winehq      =  
Line 10: Line 12:
 
}}
 
}}
  
'''Key points'''
+
{{Introduction
{{--}} To this day, Mac OS X still uses OpenGL 4.0 from 2010 and is no longer updated in favour of Metal API. Which may result in a large lack of recently released games on this system.
+
|introduction      = '''''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 [[Wikipedia:OSx86|"Hackintoshing"]]) it is highly controversial due to violating Apple's end-user license agreement and being notoriously inconsistent in its results.
{{--}} There is no official support for Vulkan API. [https://moltengl.com/moltenvk/ MoltenVK], a commercial third-party program is required.
+
 
 +
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 [[Wikipedia:System 1|System 1]] and ending with [[Wikipedia:Mac OS 9|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 [[Wikipedia:Mac OS X|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 [[Wikipedia:NeXTSTEP|NeXTSTEP]] which itself is derived from [[Wikipedia:Unix|UNIX]]. This series of the operating system is also the basis for [[Wikipedia:IOS (Apple)|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.
 +
 
 +
|release history  = 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 [[Wikipedia:Apple I|Apple I]], [[Wikipedia:Apple II|Apple II]] and [[Wikipedia:Apple III|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 [[Wikipedia:Apple Lisa|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 [[Wikipedia:Motorola 68000 series|Motorola's 68k]] to [[Wikipedia:PowerPC|IBM's PowerPC]] in the mid 1990s, followed by a move to [[Wikipedia:Apple's transition to Intel processors|Intel]] in the mid 2000s, and a move to [[Wikipedia:Mac transition to Apple Silicon|ARM]] during the early 2020s.
 +
 
 +
|current state    = 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.<ref>{{Refurl|url=https://arstechnica.com/features/2018/09/macos-10-14-mojave-the-ars-technica-review/12/|title=Ars Technica - macOS 10.14 Mojave: The Ars Technica review|date=2020-10-22}}</ref> This move resulted in a large lack of recently released major games on the operating system.{{cn|date=2020-10-22|reason=This is quite the loose statement to make without providing any sources.}}
 +
 
 +
Modern versions of the operating system does not have support for the Vulkan graphics API, however developers can utilize [https://github.com/KhronosGroup/MoltenVK MoltenVK] in their games to translate Vulkan calls into Apple's Metal API.
 +
}}
 +
 
 +
'''General information'''
 +
{{ii}} 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.
 +
{{mm}} An open source clone of Apple's Cocoa API for other platforms is available in the form of [http://www.gnustep.org GNUStep]. Note however that unlike [[Wine]], apps still must be recompiled for the other OSes due to GNUStep not emulating the [[:Wikipedia:Mach-O|Mach-O]] binary format OS X uses.
 +
{{mm}} macOS' UNIX derived kernel, XNU/Darwin, is [https://opensource.apple.com open source] along with several core technologies of the OS.
  
 
'''Communities'''
 
'''Communities'''
 
{{mm}} [https://www.reddit.com/r/macgaming/ /r/macgaming]
 
{{mm}} [https://www.reddit.com/r/macgaming/ /r/macgaming]
 
{{mm}} [https://www.reddit.com/r/mac/ /r/mac]
 
{{mm}} [https://www.reddit.com/r/mac/ /r/mac]
'''Mac OS''' is a popular family of operating systems. It was one of the first systems to Pioneer the Graphical User Interface. It is also one of few platforms to have survived a move to a new processor architecture. It actually survived two; once from [https://en.wikipedia.org/wiki/Motorola_68000_series Motorola's 68k] to [https://en.wikipedia.org/wiki/PowerPC IBM's PowerPC], and again to [https://en.wikipedia.org/wiki/Apple%27s_transition_to_Intel_processors intel].
 
  
 
=="Classic" Mac OS==
 
=="Classic" Mac OS==
Line 28: Line 48:
 
{{--}} 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.
 
{{--}} 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 10==
+
==macOS==
macOS 10 (re-branded from "Mac OS X" in 2012 to "OS X", and later to "macOS") is the latest version of the Mac OS operating system (initially released in 2001), and is also the basis for [[Wikipedia:IOS (Apple)|iOS]]. It is instead based on [https://en.wikipedia.org/wiki/NeXTSTEP NeXTSTEP] (which it's self is derived from [https://en.wikipedia.org/wiki/Unix UNIX]).
+
{{ii}} 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===
 
===Useful Programs===
Line 35: Line 57:
 
====Wine====
 
====Wine====
 
[[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.
 
[[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.
 +
 +
====[https://www.codeweavers.com/ Crossover]====
 +
{{++}} Can run 32 bit Windows programs, including games, on macOS 10.15 Catalina since version 19.<ref>[https://www.codeweavers.com/about/blogs/jwhite/2019/12/10/celebrating-the-difficult-the-release-of-crossover-19 Celebrating the difficult; the release of Crossover 19]</ref>
 +
A paid commercial version of Wine which includes custom scripts, patches, GUI and third-party software.
 +
 +
====Mouse fixes====
 +
[http://triq.net/mac/mouse-acceleration Mouse Acceleration Preference Pane] allows you to adjust, or disable, [[Glossary:Mouse acceleration|mouse acceleration]] in macOS; something that's not normally tweakable.<br>
 +
<br>
 +
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 <i>AppleUpstreamUserClient.kext</i> via the terminal<ref>https://discussions.apple.com/thread/5652229?tstart=0</ref> <ref>https://cindori.org/fix-for-mouse-jumping-using-certain-gpus/</ref> <ref>http://www.insanelymac.com/forum/topic/245024-mouse-lag-graphicsenableryes/</ref>, i.e. <pre>cd /System/Library/Extensions/ && sudo mv AppleUpstreamUserClient.kext AppleUpstreamUserClient.kext.old</pre> A slightly more solid fix is available in the form of [http://smoothmouse.com 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====
 
====Boot Camp====
Boot Camp is an official piece of software included with OS X that assists users in installing and running [[Microsoft Windows]] in a partition on the hard drive. The most recent version only includes support for [[Microsoft Windows#Windows 7|Windows 7]] and [[Microsoft Windows#Windows 8|Windows 8]].
+
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 [[Microsoft Windows#Windows 10|Windows 10]], though earlier releases supported XP through 8.1.
  
 
====The Shell====
 
====The Shell====
The Unix Shell "bash" available on OS X is a very useful tool for doing system tasks. If you use OS X as your main operating system, then it is heavily recommended that you learn how to use it.
+
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.
 
 
 
[https://code.google.com/edu/tools101/linux/basics.html Google Code University] provides a good starting guide.
 
[https://code.google.com/edu/tools101/linux/basics.html Google Code University] provides a good starting guide.
  
 
====Rosetta====
 
====Rosetta====
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 [https://en.wikipedia.org/wiki/Universal_binary Universal Binary] update post 2005, such as [[Fallout]].
+
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 [https://en.wikipedia.org/wiki/Universal_binary Universal Binary] update post-2006, such as the Mac OS X release of [[Fallout]].
{{--}} removed in OS X 10.7 "Lion" and later.
+
{{--}} Removed in OS X 10.7 "Lion" and later.
{{--}} only emulates [https://en.wikipedia.org/wiki/PowerPC_7xx G3] and partial [https://en.wikipedia.org/wiki/PowerPC_G4 G4] instructions. PowerPC 64-bit and 32-bit [https://en.wikipedia.org/wiki/PowerPC_970 G5] applications are not supported.
+
{{--}} Only emulates [https://en.wikipedia.org/wiki/PowerPC_7xx G3] and most [https://en.wikipedia.org/wiki/PowerPC_G4 G4] instructions. PowerPC 64-bit and 32-bit [https://en.wikipedia.org/wiki/PowerPC_970 G5] applications are not supported.
 +
 
 +
====Rosetta 2====
 +
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====
 
====Classic Environment====
Similar to [https://en.wikipedia.org/wiki/Virtual_DOS_machine#Windows_NTVDM Microsoft's NTVDM] for DOS apps, the classic environment was a compatibly layer for OS X that allowed it to run classic apps at 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.
+
Similar to [https://en.wikipedia.org/wiki/Virtual_DOS_machine#Windows_NTVDM 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).
+
{{--}} 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}}
  
 
[[Category:Guide]]
 
[[Category:Guide]]

Revision as of 01:00, 31 October 2020

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

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

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

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

Wine

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

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

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

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

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

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

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

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