Guide: Running OSX Tiger on VMWare with very modern CPU

Discuss OS X and OS X Server.
Post Reply
MegaBoyEXE
Posts: 25
Joined: Sun Nov 24, 2013 8:14 pm

Guide: Running OSX Tiger on VMWare with very modern CPU

Post by MegaBoyEXE »

Sometime ago I tried to virtualize OSX Tiger 10.4.9 with install DVD from my MacBookPro 2007.
However, as soon as I powered on the virtual machine, at the grey Apple logo, I got a VMWare error:

"The CPU has been disabled by the guest operating system. You will need to power off or reset the virtual machine at this point."

Altough I was able to virtualize all later OSX (from 10.5 to 10.9), no luck with Tiger.

Upon investigating and searching, I found a topic in InsanelyMac about this error occurring when people tried to install SnowLeopard on modern CPUs as Core i7, as the OS does not recognize modern CPU it was not designed for.
http://www.insanelymac.com/forum/topic/ ... cpu-error/

The solution they found was to mask the CPUID as an earlier processor by adding a line to the .vmx file, and faking the processor as reporting to be another one.

I followed this line of solution, and retrieved the information about my MacBookPro processor, and then added the CPUID information to the .vmx
It worked flawlessly, and blazing fast! I was able to install, and use Tiger normally, as all later versions of virtualized OSX!

So, I would like to share the solution with you, who might get this issue too:

By adding the following line to your .vmx file, your processor will fake reporting as being an "Intel Core 2 Duo T7700"

Code: Select all

cpuid.1.eax = "0000:0000:0000:0000:0000:0110:1111:1010"
My host CPU is an "Intel Core 2 Quad Q9400", so it's not so far modern compared to T7700.
You might get different results when using i5, i7 processors, but historically Intel processors were backward compatibles, so this fix is worth trying if you have this issue!

Darkstar
User avatar
Donator
Posts: 1212
Joined: Fri May 14, 2010 1:29 pm
Location: Southern Germany

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Darkstar »

Did you try the MacOS X Unlocker? I think it should work as well (or does it only work for 10.5 upwards?)
I upload stuff to archive.org from time to time. See here for everything that doesn't fit BA

MegaBoyEXE
Posts: 25
Joined: Sun Nov 24, 2013 8:14 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by MegaBoyEXE »

Darkstar wrote:Did you try the MacOS X Unlocker? I think it should work as well (or does it only work for 10.5 upwards?)
Yes, I used the "Guest Unlocker", then configured a OSX 10.5 VM (32 bits).

When virtualizing Tiger, there are 3 problems you need to fix:

1- Use the "Guest Unlocker" to allow Workstation to create and power on OSX VMs (in case of Fusion, it enables to power on client versions of OSX);
2- Tiger was designed for 1st generation Intel Core 2 processors, so it halts during boot if it does not recognize the host CPU (the error and solution I described in this topic);
3- Tiger Install DVDs are locked to specific Apple machines (in my case a MacBookPro3,1), otherwise, during the Installer, you will get a warning that it cannot be installed in that machine, and install cannot proceed. The Installer script must be modified to allow it to install to any hardware non-PowerPC.


I was already aware of issues 1 and 3, and already fixed both by using the "Guest Enabler" and modifying the Installer script before creating the ISO.
Issue 1 does not even allow you to power on the VM, it's a VMWare restriction, that is fixed by patching it with the "Guest Unlocker".
Issue 2 is a hardware issue, that occurs when you just power on the machine, and it stops suddenly without finishing the boot sequence by having a more modern host CPU than the ones recognized by Tiger.
Issue 3 occurs after you were already inside the Installer application, interacting with buttons and dialogs, so it's a software restriction.

My topic covers the solution of issue 2, as issue 1 and 3 the solutions are known and very widespread already.

Darkstar
User avatar
Donator
Posts: 1212
Joined: Fri May 14, 2010 1:29 pm
Location: Southern Germany

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Darkstar »

Oh, okay. I didn't really bother with such an old OSX version, and since 10.5 (I think) the unlocker is all you need. Good to know that 10.4 can also be run in a VM
I upload stuff to archive.org from time to time. See here for everything that doesn't fit BA

ebones5
Posts: 12
Joined: Wed Jan 08, 2014 2:14 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by ebones5 »

It depends on what version of Tiger you are using, are you using the PPC or Intel version? VBox only emulates Intel systems.

d3vi1
Posts: 46
Joined: Wed Apr 13, 2011 6:22 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by d3vi1 »

I ran into the same problem. My solution was to create a VM with two optical drives one with a 10.4.7 Server image and another one with an unlocked 10.4.5 Mac Mini image:
1) Boot from the 10.4.7 Server VM which has a kernel that is able to boot on most modern CPUs (except Haswell in my experience, but I'm sure that we can also find a workaround for that).
2) Open the Terminal
3) Start the previously hardware unlocked installer from the other virtual CDROM for OS X client 10.4.something.
4) Once the installer finishes start (from an attached USB stick for example) the update to 10.4.11 (which also supports pre-haswell CPUs).

From what I can tell, builds older than 10.4.7 do not work on modern CPUs

Post-install, you can also switch to SATA in VMWare Fusion, as long as you delete the kernel caches and let the boot loader rebuild them. Same applies to Leopard AHCI.
I personally have VMs of all client operating systems running without issues on VMWare Fusion 6.0.2

Tiger has absolutely no video drivers. I've tried everything and only the EFI frame buffer drivers work. On Leopard and newer both the VMWare tools included drivers and the open source VMSvga2 work, with the latter also including GL Acceleration but also being bit buggy.

ExplicitNuM5
User avatar
Posts: 478
Joined: Mon Oct 14, 2013 2:13 am
Location: Los Angeles, CA

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by ExplicitNuM5 »

Why don't you simply install the Tiger on the MBP 2007?

You can't use the computer-specific disks on any other computers, including Virtual "PC"s.
Otherwise, you shouldn't mess around with the OSes.
XDA-Developers: mr_verystock
Facebook: ___ ___ng
Skype: hellohellohello148
Google +: okcn .aline
Tom's Hardware : okcnaline
OSBetaArchive: ExplicitNuM5

MegaBoyEXE
Posts: 25
Joined: Sun Nov 24, 2013 8:14 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by MegaBoyEXE »

Because it was stolen by burglars in 2011.

I didn't modified the OS in any circustances. I modified the java script from the installer app.
Instead of returning 'false' if does not find the MBP3,1, it will always return 'true', allowing ANY Intel machine (that is able to boot the disc) to install Tiger. This includes VMWare virtualization.

ExplicitNuM5
User avatar
Posts: 478
Joined: Mon Oct 14, 2013 2:13 am
Location: Los Angeles, CA

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by ExplicitNuM5 »

If you edited the installer, you need to edit the install image, too.
You also need a full Intel processor, not some questionable sources. For that, go to QEMU.

And what do you mean by stolen by burglars? That you can't install Mac OS X 10.4 on there?
XDA-Developers: mr_verystock
Facebook: ___ ___ng
Skype: hellohellohello148
Google +: okcn .aline
Tom's Hardware : okcnaline
OSBetaArchive: ExplicitNuM5

MegaBoyEXE
Posts: 25
Joined: Sun Nov 24, 2013 8:14 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by MegaBoyEXE »

The MBP was stolen. Only the manuals and installation medias were left behind. Obviously I can't install on something that I don't have physically anymore.

Without modifying the installer, the DVDs are useless if you don't have the machine to install.

Also, this is a guide to help people virtualize Tiger.
If this is not your case, please move forward and have a nice day.

Mustafa Can
Posts: 15
Joined: Tue Jun 19, 2012 6:55 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Mustafa Can »

Which Vmware version are you using?

Use something like Snow Leopard, Tiger is not for Vmware, even if you run it, It's out of support now.

Echoes89
Posts: 26
Joined: Sun Jun 27, 2010 2:33 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Echoes89 »

Thanks for the solution!

d3vi1
Posts: 46
Joined: Wed Apr 13, 2011 6:22 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by d3vi1 »

I've finally managed to port Zenith's VMsvga2 1.2.3 Tiger. It's only the framebuffer of the last leopard version, but I'm making strides to advance to 1.2.5 and make that one also compatible with Leo/Tiger.

TeoIzAwezome
Posts: 15
Joined: Sun Aug 23, 2015 2:04 am

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by TeoIzAwezome »

I know that this is a bit off topic, but VirtualBox has an OS X virtualization option that works great on my MacBook Air 2013 (1.7GHz Dual Core HT i7, Built in GPU, 8GB DDR3).

Arths
Posts: 342
Joined: Sun Jul 20, 2008 7:18 pm
Location: France

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Arths »

Mhm, sorry to bump the thread but I'm currently trying to install 10.4.4 from an iMac Restore DVD.
It doesn't work on VMware Fusion 7 on my MacBook running 10.11. After patching kernel for CPUID it throws : Unable to find driver for this platform: "ACPI".
Any help ?

Edit: Nevermind, gonna install Leopard, 10.4.4 might be too old.
-- Arths

d3vi1
Posts: 46
Joined: Wed Apr 13, 2011 6:22 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by d3vi1 »

For Haswell and newer CPUs you need to correct the TLB buffers:
cpuid.2.eax="00000101101100001011000100000001"
cpuid.2.ebx="00000000010101100101011111110000"
cpuid.2.ecx="00000000000000000000000000000000"
cpuid.2.edx="00101100101101000011000001001000"
I've tried reproducing all the cpuid flags from a core 2 duo cpu and saw that it works. After trimming them to the bare minimal it seems that cpuid(eax=2) is the one crashing the VM.
It's worth pointing out that AHCI is supported from 10.4.11 and that the Server build from Apple's website is able to boot from any hardware and you should update from that one. If you want to install a client it's complicated. You need to boot the server and install the client and the 10.4.11 update from the server boot.

Echoes89
Posts: 26
Joined: Sun Jun 27, 2010 2:33 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Echoes89 »

What really worked for me was this page: http://landonf.org/2013/12/index.html

d3vi1: great job with the driver! Could you upload it somewhere?

AJ2ZX
Posts: 17
Joined: Sat Mar 26, 2016 6:54 am

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by AJ2ZX »

My question like those above, why in the world are you using 10.4 tiger? It is obsolete and pretty much out of place in todays standards. I remember running tiger on my iMac 20" Mid 2007, which ironically still supports OS X updates. I was about to install GTA Vice City for Mac, I partially did but then the computer shut down. Once I rebooted, I could not install it due to needing a new version of OS X which I went and bought 10.6 Snow Leopard and it worked. Couple of months later the hard drive was toast and the computer was regarded as a doorstop. Long story to short, Tiger is obsolete for many modern programs and struggling to install it in vmware would not be a wise choice.
Kind Regards,
AJ2ZX

Echoes89
Posts: 26
Joined: Sun Jun 27, 2010 2:33 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Echoes89 »

So, you're favourite OS (as your profile says) is Windows 98SE? Why in the world would you use Windows 98SE when there is Windows 10? ;)

We are virtualizing Tiger to run legacy applications, to test if apps we develop are compatible with old systems, or just to play with an old OS and maybe see how things used to work back then, and how far (or how near) we went in few years.

I'm curious, what do you think is the point of BetaArchive?

sparcdr
User avatar
Posts: 138
Joined: Tue Jul 05, 2016 6:57 am

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by sparcdr »

Landon Fuller's blog contains a patch for xnu that deals with the TLB issue that is caused when moving from 10.4.8 to 10.4.11 which causes the halt. You would have to start with a base 10.4.5 (10.4.8 existed, but hard to track down) and then patch xnu using his patch (It's in c) before rebooting, removing offending kexts that are added back to the system which deal with acpi and thermal/power management. Afaik smc wasn't a big hassle with 10.4.x. I haven't gotten x.11 to work, but it's worth a try. As Fusion is just an unlocked vmware-vmx (Officially supported) presumably based on binary diff work/hacks, the same fix would apply.

http://landonf.bikemonkey.org/
Mac OS X 10.4 under VMware Fusion on Modern CPUs

Echoes89
Posts: 26
Joined: Sun Jun 27, 2010 2:33 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by Echoes89 »

I can confirm that it also works with 10.4.11

Image

macbootissues22
Posts: 1
Joined: Wed Jul 27, 2016 3:36 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by macbootissues22 »

d3vi1 wrote:For Haswell and newer CPUs you need to correct the TLB buffers:
cpuid.2.eax="00000101101100001011000100000001"
cpuid.2.ebx="00000000010101100101011111110000"
cpuid.2.ecx="00000000000000000000000000000000"
cpuid.2.edx="00101100101101000011000001001000"
I've tried reproducing all the cpuid flags from a core 2 duo cpu and saw that it works. After trimming them to the bare minimal it seems that cpuid(eax=2) is the one crashing the VM.
It's worth pointing out that AHCI is supported from 10.4.11 and that the Server build from Apple's website is able to boot from any hardware and you should update from that one. If you want to install a client it's complicated. You need to boot the server and install the client and the 10.4.11 update from the server boot.
I can confirm I have MAC OS X working on ESXi 6.0 update 2 using the unlocker tool and these CPUIDs, D3vi1 I'd really like a copy of the gfx driver, you offered it me on IM forums, but you never went back on.

Also for anyone use MAC OS X with CPUIDs on ESXi, if you storage vMotion or clone the VM, you will lose the CPUID changes in the VMX file, this is by design of ESXi, as for both operations a new VMX file is generated, hence the CPUIDs are not carried across, as they are a non standard lines in the code.

d3vi1
Posts: 46
Joined: Wed Apr 13, 2011 6:22 pm

Re: Guide: Running OSX Tiger on VMWare with very modern CPU

Post by d3vi1 »

Links on another thread. Sorry for the delay.

Post Reply