TonyCr's Blog

Snow Leopard 10.6.4 on Packard Bell iMax X6760

Abstract

This is a ‘vanilla’ installation of Snow Leopard 10.6.4, x64 on a cheap stock-off machine which has costed me < $500 (excluding the monitor’s price) ! So, it just might be interesting for many people with budget restrictions (the majority i gather ūüôā ) and that would like to play around with the mac-hack world.

HW Basics
CPU:         Core2 Quad Q8300, @2.5GHz
GPU:         nVidia GeForce GT 120/1GB
ChipSet:   nVidia GeForce7050/nForce 630i
Audio:      Realtek ALC 888S
LAN:         Realtek RTL8201N 100M Ethernet Controller

Requirements
1. Some hacking experience else a lot of free time + googling will be needed;
2. The ‘Mac OsX Install DVD’ (MOID) Snow Leopard 10.6¬† (the $29 one);
3. A previously formatted (GUID Partition Table) disk with at least one partition of type ‘Mac OsX Extended Journaled’¬† with a size > 20GB.
Whenever possible use another SATA disk.

Steps outline

Use Boot132 CD to boot the SL 10.6 installer

1. Place the ‘PBellX6760_Boot132’¬† CD in the DVD tray.¬† Press F8 for the BIOS boot-menu, select “PO-PIONEER BD-R” (or whatever CD/DVD drive you might have) and boot up from the CD. Chameleon bootloader will start-up and load a DSDT.aml¬† + some kexts from the ramdisk device (preboot.dmg) and will prompt you with a menu listing the available disk partitions.

2. Switch CD/DVD and place your MOID on the DVD tray. Wait a while until the drive speeds up (mine is rather slow to spin up).

3. Press F5 to rescan and select the MOID partition.

4. Type ‘-v’ (verbose) and press ‘enter’ to proceed with the installation. If all goes well, depending on the type of disk (internal/external) you’re using,¬† it may take 40/60 minutes. Go take a cup of coffee. The installation should terminate with a “Installation Succeeded” screen. Restart the machine.

At this moment some problem crops up. Apparently, Mac’s installer has changed something in the BIOS’s CMOS. Press F2 and restore the BIOS defaults values. I know, it’s annoying but in future it won’t happen again.

5. Again switch DVD’s and reboot with the Boot132CD. This time do not press F5, simply select the partition where you have installed MacOsX, type ‘-v’ and boot. We get the ‘splash’ screen but without sound. You’ll be asked to enter some config details, including the keyboard layout selection (eg. for ISO keyboards).

Yes, the installation is not yet ready. Read on.

6. This process should boot you up in 64-bit ‘normal mode’ but we ‘ll need to fix:
1. Graphics card  is not yet recognized
2. The sound driver is not yet installed
3.¬† LAN internet access OTB? Yes using the native wired ‘nvenet.kext’ driver (more on this later).

Note: At this stage we are still using the kexts loaded in memory from the ramdisk! we’ll need to replace that after CML2 installation on the OsX-target-partition

7. Post-install

Note:¬† <Boot132CD> = “/Volumes/PBellX6760 Boot132”

Navigate to:   <Boot132CD>/Post-Install/Apps/

7.1 Install bootloader using  Chameleon 2.0 RC4.pkg

Unfortunately here we need to verify if the CML2 installation was successful. Check if your OsX partition has been marked active. You can verify it with the fdisk utility: “fdisk -e /dev/disk0′ + ‘p’ will tell you which partition is active, the one prefixed with a star. Eject the Boot132CD and reboot. You should be able to select the ‘OsX’ partition. Now, (as it happened to me) the CML2_RC4 installer might fail installing the first stage bootloader ‘boot0′ into the disk MBR. In this situation, you won’t see the partitions’ menu. So, we’ll need to reboot via the BootC132CD again as done in point 5 and try a manual method to install the missing ‘boot0’ (see note at the end). For the moment let’s assume the CML2 installation went ok.

7.2 Copy the utility ‘Kext Helper b7’ to your desktop. Will be required to install kexts in S/L/E.

7.3 Enable the root account (to make it easier. Of course, you can use ‘sudo’ stuff but I personally do not like it!). This is somewhat hidden. Navigate to ‘/System/Library/CoreServices’ and execute ‘Directory Utility’.¬† Unlock to make changes. Edit->Enable Root user’. Ok, you need to enter passwd’s etc.

7.4 Copy boot + DSDT +¬† Extra-dir to the ‘root’ of your OsX partition.

Open a Terminal and navigate to: <Boot132CD>/Post-Install/ .
Login as root (su + passwd) and ‘cd /’.

1. Replace ‘boot’ (written by the CML2_RC4 installer) with the ‘boot’ from CML2_RC5 :
rm ‘boot’
cp -p <drag&drop the new boot> .           (mind the dot at the end !)

2. Copy the file ‘DSDT.aml’
cp -p <drag&drop the DSDT.aml file> .

3. Replace the ‘Extra’ dir (written by the CML2_RC4 installer) with the one from CD.
rm -Rf  Extra
cp -Rp <drag&drop the Extra folder> .

7.5 Install the sound driver in S/L/E
Navigate to: <Boot132CD>/Post-Install/KExts_SLE
Execute the utility ‘Kext Helper b7’¬† and drag+drop on top of the utility the ‘kext’: VoodooHDA64.kext¬† (GPL audio driver – is a 64-bit only! )
Enter Passwd + click ‘EASY INSTALL’.

This is the only kext being installed in SLE, for the time being. Now it’s time to watch the first version of your Snow Leopard 10.6¬† machine in action.

Reboot and you should have:

1. Graphics with QE/CI  and native resolution
2. Sound output and mic support (not of a great quality but good enough for most purposes)
3. Native LAN support (via nvenet.kext) and internet access (you’ll need an ethernet RJ45 cable +¬† a router ).

If not, then something went wrong and you should carefully review all the previous steps. Assuming things went as expected, let’s proceed bringing the system up to date.

7.6  Upgrade to 10.6.4

You need to have access to the update files in a USB disk or another DVD! Because you might have internet access, you could also consider downloading them, but it will take quite some time (yes they are huge!). If this is your first install then you have no choice but to download them from Apple’s site.
Install the¬† ComboUpdate 10.6.2 (required!) followed by the ComboUpdate10.6.4. You’ll be asked to reboot after each update. Do it.

That’s it! Enjoy your new mac.

7.7  Improving our LAN connection

The ‘nVidia driver’- ‘nvenet.kext’¬† a PlugIn of IONetworkingFamily.kext,¬† works to access the internet when directly connected to a router. Unfortunately it has a LOT of problems, when trying to connect to other devices in your lan network (if you have one). A simple connection to a wireless printer will break your connection. Surprised? not me. Also it won’t allow other lan computers to access shares in your brand new Mac (Bonjour protocol is not properly supported). In short, we really need to have it replaced by a much better alternative! The ‘star’ is the GPL ‘NForceLAN.kext’ that also supports our ethernet chip.
But, there’s a catch. For the new driver (mForceLAN.kext) not to clash with the existing ‘nvenet.kext’, we need to disable the nVidia driver else we’ll get a KP! This is a little cumbersome, because after each major Apple update (the one that touches the drivers) we’ll need to re-disable the restored ‘nvenet.kext’. Just take note of it and you’ll be just fine.

7.7.1 Disabling ‘nvenet.kext’ can be done either manually or via a script:

a. Manually:¬† Navigate to : /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/ and rename ‘nvenet.kext’ to ‘nvenet.kext.noload’.
b. Script:¬† execute the provided script ‘RenameNvenet’

7.7.2 Installing the ‘nForceLAN.kext’ is similar to the sound driver installation, see previous point 7.5 .
The GPL LAN driver that supports ‘Bonjour’ and doesn’t break the connections is:¬† ‘nForceLAN_0.64.5_SL64.kext’.

Conclusions

If all goes well, you should have:

PROS:

1. nVidia GPU recognized + QE/Ci + monitor native resolution ¬†¬† ¬†¬†¬† ¬†(CML2 RC5’s boot + GraphicsEnabler)
2. Sound output + internal mic input                                                        (VoodooHDA64 )
3. Keyboard+Mouse                                                                                       (OTB)
4. LAN support                                                                                                (nForceLAN )
5. SDHC card support                                                                                    (OTB)
6. Power Management (SpeedStep)                                                            (P-States Рsupported by the hacked DSDT)

Extras:

7. Airport             (needs a compatible pci-e card, eg: Dell DW1397 mini pci-e card + adapter pci-e 1x  < $30 on eBay )
8. WebCamera    (needs a compatible usb webcam, eg1: Logitech QuickCam Vision Pro for Mac  < $100  Рgood but very hot!
eg2: X360 Live Vision Camera ~$14!! said to work just fine)

CONS:

1. Sleep doesn’t seem to work properly. Don’t know how to wake it up!
Please, do disable ‘Sleep’ in ‘Energy Saver’ preferences panel.
2. Power management: idle-states (c-states) are not supported .

For me these are really minor issues on a desktop. This distro is already very good as a MacPro clone.
It runs most, if not all, Mac applications. It has costed me around 375‚ā¨ ($472).

Hope you succeed with this little help,
TonyCr, 8July10, v0.2

Download the Boot132CD for this machine. It contains a copy of this document.

Have a look at a small screencast (use 720p):

PS1: Solving CML2_RC4 installer failure (‘boot0’ missing)

Open a Terminal and type:

1. >     cd  <Boot132CD>/Post-Install/Apps/boot_cml2_rc4
2. >    diskutil list                                                       (figure out your disk number)
3. >    ./fdisk -f boot0 -u -y /dev/rdisk0               (assuming your disk is named disk0)

The last step manually installs the 1st stage bootloader (‘boot0’) to the MBR of the disk.
This is the step that sometimes (?) fails when using the CML2_RC4.pkg installer.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: