How to Run macOS on Windows 10 in a Virtual Machine

macos-windows-10-hackintosh

Windows 10 is a great operating system. It has its quirks and annoyances, but which operating system doesn’t? Even if you’re beholden to Microsoft and Windows 10, you can still shop around.

What better way to do that than from the safe confines of your existing operating system with a virtual machine? This way, you can run macOS on Windows, which is perfect when you want to use Mac-only apps on Windows.

So, here’s how you install macOS in a virtual machine on Windows, making a virtual Hackintosh that lets you run Apple apps from your Windows machine.

What Files Do You Need to Create a macOS Virtual Machine on Windows 10?

Before delving into the “how-to,” you need to download and install the essential tools. The tutorial details how to create macOS virtual machines using both Oracle VirtualBox Manager (VirtualBox) and VMware Workstation Player (VMware Player).

Not sure which to use? Learn more about the differences between VirtualBox and VMware.

You need a copy of macOS, too. Catalina is the latest macOS version. You can find the download links for macOS Catalina in the next section.

This tutorial will focus on installing macOS Catalina in a virtual machine running on Intel hardware, using either VirtualBox or VMware Player.

Unfortunately, I do not have access to any AMD hardware, so I cannot provide a tutorial.

There is, however, the code snippet that anyone using an AMD system requires to boot a macOS Catalina using VMware on AMD hardware.

The process to launch the macOS Catalina virtual machine is the same as the Intel version but uses a slightly different code snippet. You can find the tutorial and the code snippet in the section below.

Furthermore, you will find links to several AMD macOS Catalina, Mojave, and High Sierra virtual machine tutorials, at the end of the article.

Download macOS Catalina Virtual Image

Use the following links to download macOS Catalina for both VirtualBox and VMware.

If the Google Drive reaches its download limit, right-click the file and select Copy to create a copy in your own Google Drive. You can then download the macOS Catalina virtual image from there.

Please note that these links may stop working from time to time. If that is the case, please leave a comment, and I’ll fix them as soon as possible.

After the virtual image finishes downloading, right-click, and extract the file using your favorite archive tool. For instance, right-click, then select 7-Zip > Extract to “macOS Catalina.”

How to Create a macOS Catalina Virtual Machine with VirtualBox

Before creating the macOS virtual machine, you need to install the VirtualBox Extension Pack. It includes fixes for USB 3.0 support, mouse and keyboard support, and other useful VirtualBox patches.

Download: VirtualBox Extension Pack for Windows (Free)

Scroll down, select All supported platforms to download, then double-click to install.

Create the macOS Catalina Virtual Machine

Open VirtualBox. Select New. Type macOS.

VirtualBox will detect the OS as you type and will default to Mac OS X. You can leave this as is.

Regarding the virtual machine name, make it something memorable yet easy to type. You’ll need to input this name in a series of commands, and it is frustrating to type a complicated name multiple times!

macos catalina virtualbox create

Next, set the amount of RAM the macOS virtual machine can use. I would suggest a minimum of 4GB, but the more you can give from the host system, the better your experience will be.

Remember, you cannot assign more RAM than your system has available, and you need to leave some memory available for the host operating system. Learn more about how much RAM does a system need?

Now, you need to assign a hard disk, which is the virtual image downloaded previously. Select Use an existing virtual hard disk file, then select the folder icon. Browse to the VMDK file, then select Create.

macos catalina virtualbox assign vmdk

Edit the macOS Catalina Virtual Machine Settings

Don’t try and start your macOS Catalina virtual machine yet. Before firing the virtual machine up, you need to make a few tweaks to the settings. Right-click your macOS virtual machine and select Settings.

Under System, remove Floppy from the boot order. Ensure the Chipset is set to ICH9.

macos virtual machine set RAM

Select the Processor tab. Assign two processors. If you have a CPU with power to spare (such as an Intel Core i7 or i9 with multiple extra cores), consider assigning more. However, this isn’t vital.

Make sure the Enable PAE/NX box is checked.

macos virtual machine set processors

Under Display, set Video Memory to 128MB.

macos virtual machine set video memory

Now, under Storage, check the box alongside Use Host I/O Cache.

Finally, head to the USB tab and select USB 3.0, then press OK.

Use Command Prompt to Add Custom Code to VirtualBox

It still isn’t quite time to fire up your macOS Catalina virtual machine. In its current configuration, VirtualBox doesn’t work with your macOS VMDK.

To get it up and running, you have to essentially patch VirtualBox before the macOS virtual machine will function. To do this, you need to enter some code using the Command Prompt. All the details are below.

Start by closing VirtualBox. The commands will not execute properly if VirtualBox or any of its associated processes are running.

Once closed, press Windows Key + X, then select Command Prompt (Admin) from the menu.

If your menu only shows the PowerShell option, type command into your Start menu search bar. Then right-click the Best Match, and select Run as Administrator.

The following code works for VirtualBox 5.x and 6.x.

Use the following command to locate the Oracle VirtualBox directory:

cd "C:\Program Files\Oracle\VirtualBox\"

Now, enter the following commands, one by one. Adjust the command to match the name of your virtual machine. For instance, my virtual machine name is “macoscat.” Here are the commands:

VBoxManage.exe modifyvm "macoscat" --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff VBoxManage setextradata "macoscat" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3" VBoxManage setextradata "macoscat" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "macoscat" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple" VBoxManage setextradata "macoscat" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "macoscat" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1

After the completion of the commands, and presuming you encountered no errors, close the Command Prompt.

macos catalina command prompt virtualbox

Boot Your macOS Mojave Virtual Machine

Reopen VirtualBox. Double-click your macOS virtual machine to start it. You will see a long stream of text, followed by a gray screen.

The gray screen can take a moment or two to clear, but don’t panic. Once the screen clears, macOS Catalina will begin installing. When it resolves, you will arrive at the macOS “Welcome” screen.

macos catalina virtualbox virtual machine

From here, you can set your macOS Mojave virtual machine up as you see fit.

Pro Tip: Take a snapshot of your virtual machine once it passes the gray screen. If anything goes wrong down the line, you can return to the Welcome screen setup and start the process again.

Once you complete the macOS setup, take another one so you can jump straight into your macOS installation. Head to Machine > Take Snapshot, give your snapshot a name, and wait for it to process.

How to Create a macOS Catalina Virtual Machine Using VMware Workstation Player

Prefer VMware over VirtualBox? You can create a macOS Catalina virtual machine using VMware that works exactly the same as VirtualBox. And, just as with VirtualBox, VMware also requires patching before the macOS Catalina virtual machine will work.

This part of the tutorial works for Intel and AMD systems. AMD users must use the second code snippet when editing the virtual machine VMX file. Read through the tutorial to see what this means exactly.

Patch VMware Workstation Player

In the “macOS Catalina Virtual Image” section is the VMware Player Patch Tool. Before commencing any further, download the patch tool.

Then, browse to the location you downloaded the patch tool to. Extract the contents of the archive. This process works best when the folders are on the same drive (e.g., the VMware root folder and extracted archive are both found on the C:\ drive).

Make sure VMware is completely closed. Now, in the patcher folder, right-click the win-install command script and select Run as Administrator. The script will open a Command Prompt window, and the patch-script will run.

Do pay attention. The script whizzes by, and you need to keep watch for any “File not Found” messages.

The most common reason for a “file not found” or a “system cannot find the file specified” message is installing VMware Workstation Player in a different location to the default folder, and executing the patch from a different directory.

Once the patch completes, you can open VMware.

Create the macOS Catalina Virtual Machine with VMware

Select Create a New Virtual Machine. Choose I will install the operating system later.

Now, select Apple Mac OS X, and change the Version to macOS 10.14. If you don’t see the macOS options, it is because the patch didn’t install correctly.

macos virtual machine vmware choose os

Next, you need to choose a name for your macOS Catalina virtual machine. Choose something easy to remember, then copy the file path to somewhere handy—you’re going to need it to make some edits in a moment.

On the next screen, stick with the suggested maximum hard disk size, then select Store virtual disk as a single file. Complete the virtual disk creation wizard, but do not start the virtual machine just yet.

Edit the macOS Mojave Virtual Machine Settings

Before you can boot the virtual machine, you must edit the hardware specifications. Plus, you need to tell VMware where to find the macOS VMDK.

From the main VMware screen, select your macOS Catalina virtual machine, then right-click, and select Settings.

Like VirtualBox, bump the virtual machine memory up to at least 4GB. You can allocate more if you have RAM to spare.

macos virtual machine vmware choose ram

Under Processors, edit the number of available cores to 2.

Now, under Hard Disk (SATA), you need to remove the hard disk created earlier. Select Remove and VMware will remove the disk automatically.

Now, select Add > Hard Disk > SATA (Recommended) > Use an existing disk. Browse to the location of the macOS VMDK and select it.

Edit the macOS Catalina VMX File for Intel Hardware

This section is for Intel users and it involves the final set of edits you need to make before switching your VMware macOS Catalina virtual machine on!

Close VMware. Head to the location you stored the macOS virtual machine. The default location is:

C:\Users\YOURNAME\Documents\Virtual Machines\YOUR MAC OS X FOLDER

Browse to macOS.vmx, right-click, and select Open with…, select Notepad (or your preferred text editor). Scroll to the bottom of the configuration file and add the following line:

smc.version = "0"

Save, then Exit.

You can now open VMware, select your macOS Mojave virtual machine, and fire it up!

Edit the macOS Catalina VMX File for AMD Hardware

This section is for AMD users. Like the above section, AMD users must also edit the VMX file before proceeding. The AMD edit involves a few more lines than the Intel version, but you can copy and paste the data into the file.

Close VMware. Head to the location you stored the macOS virtual machine. The default location is:

C:\Users\YOURNAME\Documents\Virtual Machines\YOUR MAC OS X FOLDER

Browse to macOS.vmx, right-click, and select Open with…, select Notepad (or your preferred text editor). Scroll to the bottom of the configuration file and add the following lines:

smc.version = "0" cpuid.0.eax = "0000:0000:0000:0000:0000:0000:0000:1011" cpuid.0.ebx = "0111:0101:0110:1110:0110:0101:0100:0111" cpuid.0.ecx = "0110:1100:0110:0101:0111:0100:0110:1110" cpuid.0.edx = "0100:1001:0110:0101:0110:1110:0110:1001" cpuid.1.eax = "0000:0000:0000:0001:0000:0110:0111:0001" cpuid.1.ebx = "0000:0010:0000:0001:0000:1000:0000:0000" cpuid.1.ecx = "1000:0010:1001:1000:0010:0010:0000:0011" cpuid.1.edx = "0000:1111:1010:1011:1111:1011:1111:1111"

Save, then Exit.

You can now open VMware, select your macOS Mojave virtual machine, and fire it up!

Install VMware Tools to Your macOS Catalina Virtual Machine

You now need to install VMware Tools, which is a set of utilities and extensions that improve mouse handling, video performance, and other useful things.

With the macOS virtual machine running, head to Player > Manage > Install VMware Tools.

The installation digavsc will appear on the macOS desktop. When the option appears, select Install VMware Tools, then allow it access to the removable volume. Follow the guided installer, which will require a restart on completion.

vmware player install vmware tools

Troubleshooting

There are a couple of things that can go wrong during the macOS virtual machine installation in VMware Player Workstation.

  1. If you cannot see “Apple Mac OS X” during the virtual machine creation wizard, then you need to revisit the patch process. Ensure every process associated with VMware Player is off.
  2. If you receive the message “Mac OS X is not supported with binary translation” when starting the virtual machine, there is a strong chance you need to activate virtualization in your BIOS/UEFI configuration.
  3. If you receive the message “VMware Player unrecoverable error: (vcpu-0)” when starting the virtual machine, you need to head back to the macOS.vmx configuration file to ensure you added the extra line and saved the edit.
  4. If you’re running AMD hardware and get stuck at the Apple logo, first power off the virtual machine. Now, head to Settings > Options > General. Change the Guest operating system to Microsoft Windows, and the Version to Windows 10 x64. Press OK, then attempt to power up the virtual machine again. Once the Apple logo passes, power down the virtual machine, then set the Guest operating system option back to Apple Mac OS X, selecting the correct version.

macOS Virtual Machines for AMD Hardware

Apple uses Intel hardware to power desktops and laptops. Configuring a macOS virtual machine using Intel hardware is easier because the hardware specifications are very similar.

With AMD, the opposite is true. Because Apple does not develop macOS on AMD hardware, creating a macOS virtual machine on an AMD system is trickier.

Adding to this, I don’t have an AMD system to test macOS virtual machines on, so I cannot give you a detailed tutorial. I can, however, point you in the direction of several macOS AMD virtual machine tutorials that do work, so long as you are patient and follow each step accordingly.

The AMD OS X forum is a great resource for macOS virtual machines. You can find many more forum threads regarding AMD macOS virtual machines, too.

macOS Catalina Virtual Machine Installation Complete

You have two options to choose from for your macOS Catalina virtual machine. Both options are great if you want to give macOS a try before making the switch from Windows and enjoy some of the best Apple apps on offer.

You can use a virtual machine to test other operating systems too. For instance, here’s how to install a Linux distro in a virtual machine.

Are you looking to learn more about virtual machines?

Check out our VirtualBox User’s Guide, which teaches everything you need to know, or our guide to creating a virtual machine using Windows 10 Hyper-V.

Read the full article: How to Run macOS on Windows 10 in a Virtual Machine

shares