Help - Search - Members - Calendar
Full Version: SnowKitty running on VMware Workstation
InsanelyMac Forum > OSx86 Project > Multi Booting and Virtualisation
Pages: 1, 2
Zenith432
See attached image...

Clarification: The host is Workstation 6.5.3 with guestOS "freebsd-64" and same vmx settings I use for Leopard (no vusb, no ide).
radam
Wow! Nice work Zenith! You have done what we have all been wanting to do... Question is, how did you do it? smile.gif
cmccmccmc
Please Tell us how smile.gif
saivert
Latest e.x.p build of VMWare Workstation should have compatiblity for Snow Leopard.

you can use darwin10-64 as guestos type
radam
I don't think its e.x.p as there is no e.x.p words in the title bar. Though they could have changed that...
Donk
QUOTE (radam @ Oct 2 2009, 01:53 AM) *
I don't think its e.x.p as there is no e.x.p words in the title bar. Though they could have changed that...


Yes it works but keeping quiet as we should be under NDA if we have the beta! You will need a new darwin.iso with Netkas fakesmc extension. I will upload it and you can try it out. OK follow my instructions for Leopard in this thread http://www.insanelymac.com/forum/index.php?showtopic=172474 but before installing the package replace with the darwin.iso here http://drop.io/donk29a called vmware-darwin-snowy.zip. There are some things to watch out for with the new betas and I will document them later.
radam
QUOTE (Donk @ Oct 2 2009, 08:26 AM) *
Yes it works but keeping quiet as we should be under NDA if we have the beta! You will need a new darwin.iso with Netkas fakesmc extension. I will upload it and you can try it out. OK follow my instructions for Leopard in this thread http://www.insanelymac.com/forum/index.php?showtopic=172474 but before installing the package replace with the darwin.iso here http://drop.io/donk29a called vmware-darwin-snowy.zip. There are some things to watch out for with the new betas and I will document them later.


Hmm... Looks good, will try when i get a chance. So this will work on the latest version of workstation 6? or is workstation 7 required and if so what version?

Thanks Donk!
Donk
QUOTE (radam @ Oct 2 2009, 01:50 PM) *
Hmm... Looks good, will try when i get a chance. So this will work on the latest version of workstation 6? or is workstation 7 required and if so what version?

Thanks Donk!


SL is only Workstation 7 beta.
Zenith432
Sorry for the delay on this. One of the kexts was causing the boot process to hang for 5-10 minutes, and I had to spend a lot time figuring out which one (it was AppleProfileFamily.kext). Everything is working now, including update to 10.6.1. I've also got VMMouse, VMsvga2, and audio working. Tomorrow I'll upload a darwin10 kernel + instructions on how to set up SnowLeopard on Workstation 6.5.x.
Zenith432
Here's the guide I promised

Requirements:
Intel CPU with VT enabled in the BIOS
VMware Workstation 6.5.x
an existing virtual machine with Leopard installed
OS 10.6 retail install DVD

This method is based on this guide. It uses an existing installation of Leopard to install SnowLeopard "offline"
on a 2nd hard disk, prepare this disk, and then start the new disk.

[Note: the guide I linked to above is on i_H_a_c_k_i_n_t_o_s_h_._c_o_m, not insanelymac.com]

Start out by by a adding a new virtual scsi hard drive to an existing virtual machine with Leopard installed. Give it at least 16GB.
Boot your Leopard virtual machine. Run Disk Utility to partition the new drive with GUID partition table, and create an HFS+ partition. I'm going to assume the new volume's name is "Snow" for the rest of the guide, but you can use any name you want.
After creating the new volume, open a Terminal window and set the permissions on the new volume like this
CODE
sudo -s
vsdbutil -a /Volumes/Snow
chown -R 0:0 /Volumes/Snow

Now insert the SnowLeopard retail DVD, and start the installer like the guide I linked to above shows (from "/Volumes/Mac OS X Install DVD/System/Installation/Packages/OSInstall.mpkg"). When the installer asks for a destination volume, select the Snow volume. Let the installer run and complete. Don't reboot after installation (it shouldn't ask for reboot, because it's an offline install).

Now install netkas's pcefi 10.5 bootloader on the new disk. Its files are attached in pcefi.10.5.tar.gz. There's a README file on how to install it from a Terminal. You should replace rdisk0 with rdiskX where X is the number of the new disk (run the "mount" command to see on which disk /Volumes/Snow is). This is just so you can later boot the new disk. If you have Chameleon 2-RC3 or pcefi 10.x installed on your primary hard drive, you can use them to boot the new disk as well.

Now perform the following steps
  • Go to /Volumes/Snow and rename mach_kernel to mach_kernel.vanilla.
  • Go to /Volumes/Snow/System/Library/Extensions, and delete the following kexts
    • AppleProfileFamily.kext (this kext causes boot to last over 5 minutes)
    • AppleUpstreamUserClient.kext (a DRM kext that can cause problems)
    • AppleIntelCPUPowerManagement*.kext
    • AppleLSIFusionMPT.kext (see below) [Edit: not necessary on Workstation 7]
    You may copy these kexts to a backup location before deleting them. This is probably a good idea, especially for AppleLSIFusionMPT.kext.
  • go back to your home folder on Leopard, unpack vmsl.tar.gz. Now copy all the files under the folder vmsl to /Volumes/Snow. You should do this in a way to preserve root:wheel permissions, for example
    CODE
    sudo chown -R 0:0 vmsl
    sudo cp -pR vmsl/* /Volumes/Snow

    The vmsl folders contains the replacement kernel(s), all the necessary kexts, and an smbios.plist for injection.


Now you're all done. shutdown the virtual machine. Edit your vmx file to make the Snow drive your primary hard drive. If all went as planned, it should boot into the registration process. If you can boot the snow drive from your primary Leopard drive, go ahead and do that.

[Edit: If you get a KP in AppleRTC.kext during boot, see post #22 below]

Notes:
  • AppleLSIFusionMPT.kext is the lsilogic scsi driver. The version that comes with OS 10.6 uses scsi commands that crash the VMware backend on Workstation 6.5.x (!). So I replaced it with AppleLSIFusionMPT.kext from OS 10.5.8, which is included in vmsl. The older driver works in 32-bit mode. As a result of this, it's not possible to boot the 64-bit kernel (mach_kernel.x86_64), because it doens't have a scsi driver to access the hard disk. Edit: On Workstation 7, AppleLSIFusionMPT.kext from OS 10.6 works fine, and should not be replaced. It can be used to boot the 64-bit kernel.
  • I included the drivers neccessary for ps/2 keyboard & mouse support in vmsl, including VMMouse. If mouse.vusb and keyboard.vusb work for you under Leopard, you can probably use them instead. They don't work for me - I get erratic keyboard and mouse behavior.
  • SnowLeopard versions of the VMsvag2 driver set are also in vmsl. I haven't tested the 64-bit variants, but the 32-bit variants work with the 32-bit kernel. Don't use the VMsvga2 installer for Leopard, because the GA component from Leopard doesn't work on SL.
  • There's no audio driver. You can install EnsoniqAudioPCI with the Leopard installer. It works.
  • VMware Tools - darwin.iso tools from Fusion 2.0.5 can be installed and work ok. If you use a later variation of darwin.iso like the one uploaded by Donk, you'll lose the fit-guest function in VMsvga2, because VMware have changed the interface the driver uses for this function. If you don't care about fit-guest, use any version of darwin.iso you like.
  • Update to 10.6.1 should go ok. It doesn't overwrite the kernel, and only modifies a couple of unused kexts. Check to see that AppleProfileFamily.kext doesn't reappear in /System/Library/Extensions, and remove if it does.


I couldn't upload vmsl.tar.gz because it's too big. I uploaded it to rapidshare
vmsl.tar.gz

Edit: Attached patches made to XNU-1456.1.26 for the mach_kernel dated Oct 19.

Old Download Counts:
pcefi.10.3.tar.gz - 141 downloads
Donk
QUOTE (Zenith432 @ Oct 3 2009, 01:36 PM) *
  • VMware Tools - darwin.iso tools from Fusion 2.0.5 can be installed and work ok. If you use a later variation of darwin.iso like the one uploaded by Donk, you'll lose the fit-guest function in VMsvga2, because VMware have changed the interface the driver uses for this function. If you don't care about fit-guest, use any version of darwin.iso you like.



The iso I uploaded allows an install from a retail DVD, but this is another interesting way of doing it. BTW the tools on my iso will do auto-fit as internal API capabilities are now built into the VMware monitor. However Zentih432's driver does give additional features. Note also the USB keyboard and mouse support seem much more reliable, and I have stopped reverting to PS2.
TheGreatDeceiver
QUOTE (Donk @ Oct 3 2009, 03:21 PM) *
The iso I uploaded allows an install from a retail DVD, but this is another interesting way of doing it. BTW the tools on my iso will do auto-fit as internal API capabilities are now built into the VMware monitor. However Zentih432's driver does give additional features. Note also the USB keyboard and mouse support seem much more reliable, and I have stopped reverting to PS2.


holy crap, the geniuses did it again wink.gif

I followed Zenith's guide but when I booted into the new SL partition it KP'ed . Then I swapped the darwin iso with Donk's new one and voila, it boots fine now. screen-shot will follow in a minute. Thank you!!
a few odd things as expected, but probably not a big deal to fix later on. E.g. the cpu shows up as 4.3GHz or 30GHz (system profiler).
btw. this is running on an i7 920 with Windows 7 64bit as host.

edit1: screenshot
edit2: update to 10.6.1 flawless.
edit3: sound flawless with Zenith's latest kexts
Zenith432
QUOTE (Donk @ Oct 3 2009, 05:21 PM) *
The iso I uploaded allows an install from a retail DVD
Donk, I've analyzed the "snowy" darwin.iso that you've uploaded. VMware have made 2 changes to the daemon-driver interface they use for fit-guest:
  • changed their driver name from "VMwareIOFramebuffer" to "VMwareGfx".
  • Changed the function number from 3 to 0.
Both these changes can be easily patched. I'll prepare a patch of the snowy tools to work with VMsvga2.

Thanks a lot for uploading the "snowy" darwin.iso tools.

I've also made a patch for vmware-tools-guestd from Fusion 2.0.6 that was released a few days ago. I'll upload the patches together.

I'm also working on completing the migration of VMsvga2 to 64-bits. I'll make an installer for it and upload to sourceforge when that's done.

Porting the audio driver is a little more difficult. The Leopard version works under SnowLeopard 32-bit kernel. Creating a 64-bit version requires porting AppleAC97Audio to 64-bit, which requires some non-trivial work, so that'll take more time.

QUOTE (TheGreatDeceiver)
E.g. the cpu shows up as 4.3GHz or 30GHz (system profiler).
You can fake all these settings by changing them in /Extra/smbios.plist. It's a fake smbios injected by Chameleon/pcefi. If the CPU frequency isn't set in the file, it may be using the real number measured during boot, or just using some random number...

PS: Could you run the command "ioreg -p IODeviceTree -rn platform" from a Terminal and post the results? Those are the frequencies that Chameleon measures during boot. They're used for tsc_init by the kernel I built, and I'd like to see if they're correct for multi-core. Thanks.
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 4 2009, 08:50 PM) *
You can fake all these settings by changing them in /Extra/smbios.plist. It's a fake smbios injected by Chameleon/pcefi. If the CPU frequency isn't set in the file, it may be using the real number measured during boot, or just using some random number...

PS: Could you run the command "ioreg -p IODeviceTree -rn platform" from a Terminal and post the results? Those are the frequencies that Chameleon measures during boot. They're used for tsc_init by the kernel I built, and I'd like to see if they're correct for multi-core. Thanks.


I have the vm currently set to 1 cpu with 2 cores. this is the output:
CODE
+-o platform  <class IOService, id 0x100000102, !registered, !matched, active, $
    {
      "name" = <"platform">
      "FSBFrequency" = <6999770500000000>
    }


edit1: just realized that I changed this in the config.ini under C:\ProgramData\VMware\VMware Workstation for Leo to work.
CODE
.encoding = "windows-1252"
host.cpukHz = "2660000"
host.noTSC = "TRUE"
ptsc.noTSC = "TRUE"
prefvmx.useRecommendedLockedMemSize = "FALSE"
prefvmx.allVMMemoryLimit = "6000"


I guess this will interfere. I will remove the lines and see if that helps.

edit2: ok, has no effect. the config.ini is empty and the output and everything else is identical to before.
edit3: just copied the vm over to my notebook with a Core2Duo 2GHz, 4Gb ram. I am running the vm with one cpu with one core. It is recognized as Core 2 Solo (should be correct) with 4.3Ghz under about this and 30GHz under system profiler.
here is the output for your code:
CODE
+-o platform  <class IOService, id 0x100000102, !registered, !matched, active, $
    {
      "name" = <"platform">
      "FSBFrequency" = <acb1670500000000>
    }

Zenith432
QUOTE (TheGreatDeceiver @ Oct 5 2009, 12:21 AM) *
CODE
+-o platform  <class IOService, id 0x100000102, !registered, !matched, active, $
    {
      "name" = <"platform">
      "FSBFrequency" = <6999770500000000>
    }
Did you install the pcefi 10.3 bootloader? It sets 3 values. Here's what it looks like for me.
CODE
+-o platform  <class IOService, id 0x100000102, !registered, !matched, active, $
    {
      "TSCFrequency" = <dc3ccab200000000>
      "CPUFrequency" = <dc3ccab200000000>
      "name" = <"platform">
      "FSBFrequency" = <00e1f50500000000>
    }
The kernel I uploaded needs the "CPUFrequency" value.

Also, check /Extra/smbios.plist and see if has settings for "SMexternalclock" and "SMmaximalclock". If it does, post them.

Try installing pcefi 10.3 on the Snow drive and booting from it, then check if you have "CPUFrequency" in the table above. If you do and it still gives you 30GHz, I'll have to make changes in my tsc_init() for Nehalem CPUs.

Edit: I updated the kernels to better support Nehalem, and uploaded a new vmsl.tar.gz. The kernels still need the bootloader to set "CPUFrequency", so use a recent version of Chameleon/pcefi to boot them.
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 5 2009, 02:01 PM) *
Did you install the pcefi 10.3 bootloader? It sets 3 values. Here's what it looks like for me.
CODE
+-o platform  <class IOService, id 0x100000102, !registered, !matched, active, $
    {
      "TSCFrequency" = <dc3ccab200000000>
      "CPUFrequency" = <dc3ccab200000000>
      "name" = <"platform">
      "FSBFrequency" = <00e1f50500000000>
    }
The kernel I uploaded needs the "CPUFrequency" value.

Also, check /Extra/smbios.plist and see if has settings for "SMexternalclock" and "SMmaximalclock". If it does, post them.

Try installing pcefi 10.3 on the Snow drive and booting from it, then check if you have "CPUFrequency" in the table above. If you do and it still gives you 30GHz, I'll have to make changes in my tsc_init() for Nehalem CPUs.

Edit: I updated the kernels to better support Nehalem, and uploaded a new vmsl.tar.gz. The kernels still need the bootloader to set "CPUFrequency", so use a recent version of Chameleon/pcefi to boot them.


yeah, I did follow the step by step (did this many times before as well on notebook), but since the system didn't boot without Donk's new darwin.iso, I am afraid it didn't pick the pcefi bootloader. will do this again and report back.
thanks

edit1: these are the string values from smbios.plist
CODE
    <key>SMexternalclock</key>
    <string>333</string>
    <key>SMmaximalclock</key>
    <string>3000</string>


doesn't matter if I change that last string, it always reports 30GHz in system profiler.
also, this is what kextutility reports:
CODE
CPU Signature: Ox106A4 (67236)
CPU TYPE:      Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz
Core:          30000(30000) MHz x 1200.0(1200.0) Bus: 25 MHz FSB: 100 MHz
Cache L2:      0 Mb
RAM:           4096 Mb


edit2: ok, just to make sure I am installing the bootloader, I installed the latest chameleon 2 RC2 r640 package and replaced the boot with netkas' lastest bootloader (same thing I did for my notebook). I get the same results - nothing changed. Unless there is something in the darwin.iso that collides with the bootloader I am at loss. But just as you said, these are only cosmetic problems and no big deal.
thanks for your help
Donk
QUOTE (TheGreatDeceiver @ Oct 5 2009, 10:53 PM) *
Unless there is something in the darwin.iso that collides with the bootloader I am at loss. But just as you said, these are only cosmetic problems and no big deal.
thanks for your help


The boot loader on the darwin.iso loads the kernel, and so will not chain to anything on the hard drive.
Zenith432
QUOTE (TheGreatDeceiver @ Oct 5 2009, 11:53 PM) *
yeah, I did follow the step by step (did this many times before as well on notebook), but since the system didn't boot without Donk's new darwin.iso, I am afraid it didn't pick the pcefi bootloader.
The reason you got a KP with the mach_kernel in the original vmsl.tar.gz is because that kernel didn't support Nehalem CPUs, only Core 2. I've uploaded a new vmsl.tar.gz with a mach_kernel that should boot on Nehalem. I guess that darwin.iso boots a completely different mach_kernel, because otherwise I don't see how you got my first kernel working at all.

The mach_kernel I built expects the bootloader to set "CPUFrequency" in the EFI tree. dfe's original bootloader didn't do this. The kernel needs a recent-enough version of Chameleon or pcefi to boot - they measure and set the CPU frequency.

The mach_kernel I uploaded is a Darwin 10.0.0 variant. I'm not sure which version of Darwin is on darwin.iso.
CODE
uname -a
Darwin Snow.local 10.0.0 Darwin Kernel Version 10.0.0: Mon Oct  5 17:49:40 UTC 2009; zenith432:xnu-1456.1.26/BUILD/obj/RELEASE_I386 i386

Donk
QUOTE (Zenith432 @ Oct 6 2009, 01:57 PM) *
The reason you got a KP with the mach_kernel in the original vmsl.tar.gz is because that kernel didn't support Nehalem CPUs, only Core 2. I've uploaded a new vmsl.tar.gz with a mach_kernel that should boot on Nehalem. I guess that darwin.iso boots a completely different mach_kernel, because otherwise I don't see how you got my first kernel working at all.

The mach_kernel I built expects the bootloader to set "CPUFrequency" in the EFI tree. dfe's original bootloader didn't do this. The kernel needs a recent-enough version of Chameleon or pcefi to boot - they measure and set the CPU frequency.

The mach_kernel I uploaded is a Darwin 10.0.0 variant. I'm not sure which version of Darwin is on darwin.iso.
CODE
uname -a
Darwin Snow.local 10.0.0 Darwin Kernel Version 10.0.0: Mon Oct  5 17:49:40 UTC 2009; zenith432:xnu-1456.1.26/BUILD/obj/RELEASE_I386 i386


I did have a darwin.iso it just chains to first hard drive, if useful for testing. Also note that Workstation 7 also has an EFI BIOS which Fusion 3.0 uses, but I cannot get running on Workstation 7 yet.
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 6 2009, 01:57 PM) *
The reason you got a KP with the mach_kernel in the original vmsl.tar.gz is because that kernel didn't support Nehalem CPUs, only Core 2. I've uploaded a new vmsl.tar.gz with a mach_kernel that should boot on Nehalem. I guess that darwin.iso boots a completely different mach_kernel, because otherwise I don't see how you got my first kernel working at all.

The mach_kernel I built expects the bootloader to set "CPUFrequency" in the EFI tree. dfe's original bootloader didn't do this. The kernel needs a recent-enough version of Chameleon or pcefi to boot - they measure and set the CPU frequency.

The mach_kernel I uploaded is a Darwin 10.0.0 variant. I'm not sure which version of Darwin is on darwin.iso.
CODE
uname -a
Darwin Snow.local 10.0.0 Darwin Kernel Version 10.0.0: Mon Oct  5 17:49:40 UTC 2009; zenith432:xnu-1456.1.26/BUILD/obj/RELEASE_I386 i386

I got a build date of Oct 2 with your name in it. For some reason I must have been able to boot with your older kernel.
I re-installed chameleon again and latest boot file. I installed your updated kernel (confirmed with uname -a). The IODeviceTree output is still identical to above posts. But now the system reports 4.23 GHz in System Profiler with a Bus speed of 367MHz. At least now the CPU speed is the same as in About Mac (4.3GHz) - getting closer (true speed should read 2.67GHz for i7 920, although even under windows it often goes passed that, e.g. 2.9GHz). I see that the clock speeds in smbios.plist of your recent upload are blank.
any more guidance?
thank you!
Donk
QUOTE (Zenith432 @ Oct 1 2009, 09:01 PM) *
See attached image...

Clarification: The host is Workstation 6.5.3 with guestOS "freebsd-64" and same vmx settings I use for Leopard (no vusb, no ide).


Excellent work! I missed that this was Workstation 6.5. There is an ongoing issue with Nehalem processors, which you have fixed in your kernel. Can you share your pacthes as I think a good approach for Leopard and Snow Leopard using the built-in VMware support for Darwin XNU kernels could also benefit from it. I have looked at the source from 2 or 3 other kernels, but pinning down what makes Nehalem work is confusing especially when some claim support but it doesn't work.
Zenith432
QUOTE (TheGreatDeceiver @ Oct 7 2009, 02:58 AM) *
any more guidance?
You're still using darwin.iso to boot. You should try booting directly from the Snow hard disk. Edit your vmx file, comment out the virtual DVD drive that points to darwin.iso, and make sure the Snow vmdk is the first hard disk (scsi0:0). Then try booting it. You say you've installed Chameleon on it, so it should boot. If you don't get a KP, you're all set, and the CPU frequency reported should be close to the right number (within 0.1 GHz). If you still get a KP, see below...

I found there's another potential source of KP in my setup other than tsc_init(). It's AppleRTC.kext - it sometimes crashes after finding a malformed CMOS ram. I need time to analyze this. In the meantime you can work-around it as follows:
Start the Snow virtual machine, and press ESC in the first few seconds and then enter BIOS setup in the guest (you need quick fingers for this smile.gif ).
In the Main Menu, disable the floppy drive.
Go to Advanced->I/O Device Configuration and then disable the Floppy disk controller.
Go to the Exit menu, click "Exit Saving Changes" and reboot.

The system should boot now without KP in AppleRTC. Disabling the floppy is just one change that eliminates the problem. It looks as if making any change in the CMOS ram and saving it will fix it.

QUOTE (Donk @ Oct 7 2009, 02:59 PM) *
Can you share your pacthes
Attached below are the patches I made to xnu-1456.1.26 for the mach_kernel in vmsl.tar.gz dated Oct 5.
Edit: Attachment removed, see post #10.
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 7 2009, 03:20 PM) *
You're still using darwin.iso to boot. You should try booting directly from the Snow hard disk. Edit your vmx file, comment out the virtual DVD drive that points to darwin.iso, and make sure the Snow vmdk is the first hard disk (scsi0:0). Then try booting it. You say you've installed Chameleon on it, so it should boot. If you don't get a KP, you're all set, and the CPU frequency reported should be close to the right number (within 0.1 GHz). If you still get a KP, see below...

I found there's another potential source of KP in my setup other than tsc_init(). It's AppleRTC.kext - it sometimes crashes after finding a malformed CMOS ram. I need time to analyze this. In the meantime you can work-around it as follows:
Start the Snow virtual machine, and press ESC in the first few seconds and then enter BIOS setup in the guest (you need quick fingers for this smile.gif ).
In the Main Menu, disable the floppy drive.
Go to Advanced->I/O Device Configuration and then disable the Floppy disk controller.
Go to the Exit menu, click "Exit Saving Changes" and reboot.

The system should boot now without KP in AppleRTC. Disabling the floppy is just one change that eliminates the problem. It looks as if making any change in the CMOS ram and saving it will fix it.

Attached below are the patches I made to xnu-1456.1.26 for the mach_kernel in vmsl.tar.gz dated Oct 5.


Darn, forgot to change it to guestOS "freebsd-64" in the vmx. It was still looking for darwin-64 which I had still in there. It is working now. Frequency is detected correctly. I had some problems with the mouse not being picked up by the guestOS. I deleted all entries from the vmx file related to usb+mouse and got it to work after a while. I have it attached. I'd appreciate if you can tell me if there is anything else in there that may be a problem. Thank you. No more darwin.iso - very nice. Now the only thing left I need to fix is the guest autofit.

this is the output now:
CODE
+-o platform  <class IOService, id 0x100000102, !registered, !matched, active, $
    {
      "TSCFrequency" = <04b4859e00000000>
      "CPUFrequency" = <04b4859e00000000>
      "name" = <"platform">
      "FSBFrequency" = <00e1f50500000000>
    }

btw: "make sure Snow vmdk is the first hard disk (scsi0:0)" it didn't matter whether I had it on scsi0:0, 1 or 2, it worked either way and the partition always stayed disk0s2 in SL irrespective of this.

edit 1: installed vmware tools from fusion 2.05. two things: I am getting "no permission" to shared folders and guest autofit does not work either. Went back to darwin-snowy by Donk and get at least shared folders back.
naomilovesmac
QUOTE (Zenith432 @ Oct 3 2009, 01:36 PM) *
Here's the guide I promised

Requirements:
Intel CPU with VT enabled in the BIOS

Well, that sucks. I don't have VT, what would happen if I ran the installer with VT disabled?

oxelamp
QUOTE (naomilovesmac @ Oct 8 2009, 03:59 AM) *
Well, that sucks. I don't have VT, what would happen if I ran the installer with VT disabled?


it would run as slow as hell smile.gif
i had it disabled in bios and took me a while to locate the problem.
Zenith432
QUOTE (TheGreatDeceiver @ Oct 8 2009, 12:36 AM) *
I'd appreciate if you can tell me if there is anything else in there that may be a problem.
Your vmx file is fine and your frequency values are just right. If the Bus Speed of 100 MHz reported by System Profiler bothers you, you can set any value you want in /Extra/smbios.plist
CODE
<key>SMexternalclock</key>
<string>333</string>

Note that unlike the CPU frequency, the Bus Speed really is cosmetic. The CPU frequency is important because it's used by kernel timers.

Sorry I forgot to mention it in my guide, but the vmx settings should be like this
CODE
guestOS = "freebsd-64" # darwin variants require darwin.iso to boot
#mouse.vusb.enable = "TRUE"       - remove USB mouse & keyboard, because they don't work well under freebsd-64
#keyboard.vusb.enable = "TRUE"    - use ps/2 mouse & keyboard - drivers are in vmsl.

QUOTE
Thank you. No more darwin.iso - very nice. Now the only thing left I need to fix is the guest autofit.
edit 1: installed vmware tools from fusion 2.05. two things: I am getting "no permission" to shared folders and guest autofit does not work either. Went back to darwin-snowy by Donk and get at least shared folders back.
If you install Tools from Fusion 2.x, you need to make some patches. First, for the permissions, you need to modify services.sh. It's in Donk's guide and I also mentioned it in this thread (post #2). Second, to get fit-guest with Tools 2.x, you need to install a modified vmware-tools-guestd. Download the file Display/guestd_patches.tar.gz from the vmsvga2 file section, and follow the instructions in the readme file.
I don't have a patch to make darwin-snowy work with VMsvga2. I tried to patch it, but it doesn't work. I need more time to look into this. If you want fit-guest, use Tools 2.x and patch them.

Naomi: don't try this without VT unless you're a guru and you know how to recover after getting yourself into a hole. Also, it's only for Intel Core 2,i7 or i5.
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 8 2009, 01:52 PM) *
Your vmx file is fine and your frequency values are just right. If the Bus Speed of 100 MHz reported by System Profiler bothers you, you can set any value you want in /Extra/smbios.plist
CODE
<key>SMexternalclock</key>
<string>333</string>

Note that unlike the CPU frequency, the Bus Speed really is cosmetic. The CPU frequency is important because it's used by kernel timers.

Sorry I forgot to mention it in my guide, but the vmx settings should be like this
CODE
guestOS = "freebsd-64" # darwin variants require darwin.iso to boot
#mouse.vusb.enable = "TRUE"       - remove USB mouse & keyboard, because they don't work well under freebsd-64
#keyboard.vusb.enable = "TRUE"    - use ps/2 mouse & keyboard - drivers are in vmsl.

If you install Tools from Fusion 2.x, you need to make some patches. First, for the permissions, you need to modify services.sh. It's in Donk's guide and I also mentioned it in this thread (post #2). Second, to get fit-guest with Tools 2.x, you need to install a modified vmware-tools-guestd. Download the file Display/guestd_patches.tar.gz from the vmsvga2 file section, and follow the instructions in the readme file.
I don't have a patch to make darwin-snowy work with VMsvga2. I tried to patch it, but it doesn't work. I need more time to look into this. If you want fit-guest, use Tools 2.x and patch them.


excellent, everything is working now. thank you so much for helping me Zenith432! Every once in a while it stops booting right at "Starting Darwin X86" and stalls, CPU process shoots up but nothing happens. I also tried to change setting in the BIOS (you mentioned it sometimes helps), it didn't on mine. But the good thing is if I reboot a few times then it catches up again and works fine for a while. It's random, not reproducible. It behaves like it only catches on when the CPU frequency of the host has the correct value (just a wild guess here, I assume it has to do with syncing?. Any idea?
Also, the spinning wheel is always erratic in the first 3-5 seconds and then spins normal when it boots up.
cyberbuddhah
QUOTE (Zenith432 @ Oct 1 2009, 08:01 PM) *
See attached image...

Clarification: The host is Workstation 6.5.3 with guestOS "freebsd-64" and same vmx settings I use for Leopard (no vusb, no ide).



Dear Zenith432 and Donk

Thank you so much for your spectacular contributions.

Question: I got SnowLeo Server installed, runs well in Fusion. Tried to use you guides to run it under Workstation, but got Kp's. Of note, using the same guide, I ran Snow Leo without problem. Is there any fixes for Server yet?

Thanks



Zenith432
QUOTE (TheGreatDeceiver @ Oct 8 2009, 05:26 PM) *
Every once in a while it stops booting right at "Starting Darwin X86" and stalls, CPU process shoots up but nothing happens.
That's a different issue. It's a bug in recent versions of Chameleon (ever since 2.0) that causes it to lock up if you start the boot too fast. It wasn't present in Chameleon 1.0.12. It's the reason I stayed away from 2.0 until I had no choice. What I do is I wait for the time bar to go past the half-point, and then start the boot. It's really annoying because the time bar moves at a non-uniform pace as well. The problem has nothing to do with the kernel - it occurs on Leopard kernels too - definitely a problem with the bootloader.
Also don't worry about the speedy spinning wheel.
I think it might be possible to boot this kernel with Chameleon 1.0.12 even though it's darwin10, because it's a 32-bit kernel. I'll try it some time.


QUOTE (cyberbuddhah @ Oct 8 2009, 09:09 PM) *
Question: I got SnowLeo Server installed, runs well in Fusion. Tried to use you guides to run it under Workstation, but got Kp's. Of note, using the same guide, I ran Snow Leo without problem. Is there any fixes for Server yet?
You know, I'm not running a whole lab here. Just Windows XP, C2D, Workstation 6.5.3. Give us a break.
cyberbuddhah
QUOTE (Zenith432 @ Oct 8 2009, 09:52 PM) *
You know, I'm not running a whole lab here. Just Windows XP, C2D, Workstation 6.5.3. Give us a break.


Tried to pick your brain to see if you have more magic in your pocket. Best regards and admiration.
alch555
QUOTE (Zenith432 @ Oct 3 2009, 04:36 PM) *
Now insert the SnowLeopard retail DVD, and start the installer like the guide I linked to above shows (from "/Volumes/Mac OS X Install DVD/System/Installation/Packages/OSInstall.mpkg"). When the installer asks for a destination volume, select the Snow volume. Let the installer run and complete. Don't reboot after installation (it shouldn't ask for reboot, because it's an offline install).

I had some problem when I install SL. At the end of it in "Summary": Installation failed! Some components was not installed. Something wrong?

My configuration:
Intel CPU i7 920 with VT enabled in the BIOS
VMware Workstation 6.5.
Virtual machine with Leopard 10.5.5. installed (run on Win7 64-bit with OS type "FreeBSD").
alch555
QUOTE (TheGreatDeceiver @ Oct 9 2009, 11:44 AM) *
if you used Zenith's guide to install Leopard

I don`t understand. I use Zenith's guide to install SnowLeopard at new Vdisk.
TheGreatDeceiver
QUOTE (alch555 @ Oct 9 2009, 09:04 AM) *
I don`t understand. I use Zenith's guide to install SnowLeopard at new Vdisk.

sorry, got mislead by your configuration details and thought you tried to install 10.5.5
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 8 2009, 09:52 PM) *
That's a different issue. It's a bug in recent versions of Chameleon (ever since 2.0) that causes it to lock up if you start the boot too fast. It wasn't present in Chameleon 1.0.12. It's the reason I stayed away from 2.0 until I had no choice. What I do is I wait for the time bar to go past the half-point, and then start the boot. It's really annoying because the time bar moves at a non-uniform pace as well. The problem has nothing to do with the kernel - it occurs on Leopard kernels too - definitely a problem with the bootloader.
Also don't worry about the speedy spinning wheel.
I think it might be possible to boot this kernel with Chameleon 1.0.12 even though it's darwin10, because it's a 32-bit kernel. I'll try it some time.

cool, thanks for the explanation. I noticed that sometimes I can't get it to boot for 10-15min until I give up and try much later. good to have suspend, otherwise I'd go nuts.
also, I just noticed that if I boot into safe mode I have no problem. If I then reboot from within the OS it starts up fine (so far).
naomilovesmac
QUOTE (oxelamp @ Oct 8 2009, 02:24 PM) *
it would run as slow as hell smile.gif
i had it disabled in bios and took me a while to locate the problem.


unsure.gif
I'll do a bit of experimenting... biggrin.gif
saivert
Running Mac OS X Server 10.6 finally!

I'm using the latest Workstation 7.0 Release Candidate (no more e.x.p build).

I installed from Retail Snow Leopard server disc.
I booted using the snowy darwin.iso posted in this thread, kept pressing option(Alt) until I reached the boot select menu. then changed to the SL server .iso and installed from disc. Used Disk Utility to partition it with GUID Partition table.
when done power down vm, change back to snowy darwin.iso which has to be used each time when you want to boot into SL Server.



Using the following additions to .vmx:

CODE
monitor.virtual_exec = "hardware"
monitor.virtual_mmu = "software"
ich7m.present = "TRUE"
keyboard.vusb.enable = "TRUE"
mouse.vusb.enable = "TRUE"
guestOS = "darwin10-64"

smc.present = "FALSE"


Not sure if it's relevant but I created a VM with 1 CPU and 2 CPU cores (you can do this in Workstation 7) and 1024GB RAM.

Also the VMWare tools from the snowy darwin.iso works well. And the mouse also works without glitches (with the e.x.p build of Workstation and Leopard I had problems with the mouse in that I could not maintain a button press for very long. The mouse glitched out and lost the button press, so drag and drop operations would be difficult).

About performance:
On my Intel Core 2 Duo E6750 with 4GB ram and GeForce 8800GTS 320MB I can do basic tasks in OS X Server well. The graphics performance is poor due to it only being 2D and no accelerated graphics is available.
SCSI_2k
Awesome info. I will be trying this out! Thanks everyone!
cyberbuddhah
QUOTE (saivert @ Oct 10 2009, 11:11 AM) *
Running Mac OS X Server 10.6 finally!


Congrats! I tried but got KP's. Would you mind posting your entire vmx ?
Thanks

Never mind, I got it! Just change guest os to Darwin10-64
Zenith432
I finally managed to patch the snowy darwin tools (from Fusion 3.0 beta) to provide auto-fit guest for VMsvga2. I added the patch to the guestd_patches pack in the vmsvga2 files section. The Readme file shows which file has to be patched (it's a different one from Fusion 2.0.x darwin tools.)
saivert
thanks Zenith432 worked like a charm that new patch.

I do seem to have some weird redraw bugs with the VMsvgaII driver when I switch apps (when drawing the drop shadow around windows). It goes away but I see a flash of pure black.
OMGedDude
Can someone mirror the vmsl.tar.gz that Zenith uploaded to something like mediafire or megaupload? rapidshare.de doesn't seem to be working for me at the moment.
Thanks

EDIT: Thanks for the mediafire mirror om3g4
0m3gA
QUOTE (OMGedDude @ Oct 12 2009, 09:03 PM) *
Can someone mirror the vmsl.tar.gz that Zenith uploaded to something like mediafire or megaupload? rapidshare.de doesn't seem to be working for me at the moment.
Thanks


sure I guess that's ok to do
http://www.mediafire.com/?mhz2czx5jtz
0m3gA
Are the guestd_patches.tar.gz integrated into the current vmsl.tar.gz?

Is it possible to boot without darwin.iso? I installed pcefi.10.3, including boot1h to the EFI partition but I get "Operating System not found". Installed on a SCSI disk, GUID style, HFS+, guestOS = "darwin10-64".

According to "TheGreatDeceiver" in Post #12 he got sound from Zenith's kexts, I think he refers to vmsl but there is no audio driver in that package and I don't have audio.

Also I would note that the .i386 or .x86_64 extension should be removed after copying the replacement mach_kernel, otherwise you need to use F8 and specify the file name.
Zenith432
QUOTE (0m3gA @ Oct 13 2009, 06:17 PM) *
Are the guestd_patches.tar.gz integrated into the current vmsl.tar.gz?
No. guest_patches and the audio driver are here.

QUOTE
Is it possible to boot without darwin.iso? I installed pcefi.10.3, including boot1h to the EFI partition but I get "Operating System not found". Installed on a SCSI disk, GUID style, HFS+, guestOS = "darwin10-64".
The are two options
  • To boot with darwin.iso use guestOS="darwin10-64"
  • To boot with Chameleon/pcefi use guestOS="freebsd-64"

QUOTE
According to "TheGreatDeceiver" in Post #12 he got sound from Zenith's kexts, I think he refers to vmsl but there is no audio driver in that package and I don't have audio.
Actually, he didn't say that. The audio driver is in the link above.

QUOTE
Also I would note that the .i386 or .x86_64 extension should be removed after copying the replacement mach_kernel, otherwise you need to use F8 and specify the file name.
Sorry, that's a mistake. I forgot to rename mach_kernel.i386 to mach_kernel when packing vmsl. I've uploaded a new package to correct this. Could you please update the copy on mediafire? Thanks.
TheGreatDeceiver
QUOTE (Zenith432 @ Oct 13 2009, 06:57 PM) *
Sorry, that's a mistake. I forgot to rename mach_kernel.i386 to mach_kernel when packing vmsl. I've uploaded a new package to correct this. Could you please update the copy on mediafire? Thanks.

actually, I took it for granted users rename it or use a tool to install the kernel, e.g. OSX86Tools, it does everything for you, backs up old one renames new one and fixes permissions..... smile.gif

Zenith, new bootloader pc_efi10.4 by netkas is out. haven't tried yet, hopefully it fixes the boot problems.
picmax
Any chance this works with VMWare Player?

Thanks.
cyberbuddhah
QUOTE (picmax @ Oct 14 2009, 03:17 AM) *
Any chance this works with VMWare Player?

Thanks.


Yes. Once it runs on workstation it will run on Vmware Player. In my case. I copy the image to different machine aand just use player to run it.
0m3gA
So the advantage to using the vsml package over the vmware tools in darwin-snowy is one can boot with PC EFI and not need to use darwin.iso to boot every time? Or is there more to it?

Thanks for clarifying the driver info, I got audio working after installing EnsoniqAudioPCI_1.0.2.mpkg and choosing only the first check box.

[edit] I installed the files in vmsl but now the mouse and keyboard don't work right...

FYI these are the commands I used in Terminal
QUOTE
sudo fdisk -f Desktop/pcefi.10.3/boot0 -u -y /dev/rdisk0
sudo dd if=Desktop/pcefi.10.3/boot1h of=/dev/rdisk0s2
sudo cp Desktop/pcefi.10.3/boot /
sudo mv /mach_kernel /mach_kernel.vanilla
sudo mv /System/Library/Extensions/AppleProfileFamily.kext/ /
sudo mv /System/Library/Extensions/AppleUpstreamUserClient.kext/ /
sudo mv /System/Library/Extensions/AppleLSIFusionMPT.kext/ /
sudo chown -R 0:0 Desktop/vmsl/
sudo cp -pR Desktop/vmsl/* /
sudo mv /mach_kernel.i386 /mach_kernel


Using VMware Workstation 7.0.0 build-197124
Zenith432
QUOTE (0m3gA @ Oct 15 2009, 07:08 AM) *
So the advantage to using the vsml package over the vmware tools in darwin-snowy is one can boot with PC EFI and not need to use darwin.iso to boot every time? Or is there more to it?
The "advantage" to using vmsl is and always has been that it works on VMware Workstation 6.5.x. If you look at the dates you'll see that I started this thread before VMware published their [first] public RC for Workstation 7. The setup that uses snowy-darwin.iso for OS 10.6 with vanilla kernel only works on Workstation 7, which is still pre-release.

QUOTE
I installed the files in vmsl but now the mouse and keyboard don't work right...

If you boot with guestOS="freebsd-64" and pcefi, you should turn off USB mouse emulation
CODE
mouse.vusb.enable = "false"
keyboard.vusb.enable = "false"
vmsl includes ps/2 keyboard & mouse drivers, and they work for any guestOS setting.
picmax
I am using the "freebsd-64" route with VMWare player 2.5.3 build-185404.

It boots up fine but I got stuck at the Welcome screen without working mouse. I used the following config in my vmx file.
Any idea what I might be doing wrong? Do I actually need ps/2 keyboard and mouse on my host? Currently the mouse/keyboard hardware are USB on the host.

The "darwin10-64" route doesn't work because the VMWare Player does not support it yet.

Any help is appreciated.

Max

QUOTE
If you boot with guestOS="freebsd-64" and pcefi, you should turn off USB mouse emulation
CODE
mouse.vusb.enable = "false"
keyboard.vusb.enable = "false"
vmsl includes ps/2 keyboard & mouse drivers, and they work for any guestOS setting.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.