You are on page 1of 3

SilverZero’s S10 Multi-Boot Upgrade Guide

Updates, extensions, drivers, tweaks, and mods


Version 05.31.09 – OS X

Following on the heels of my original multi-boot guide, this guide will walk you through
several upgrades to polish your S10(e) multi-boot setup. Here’s a summary of the things we’ll
be upgrading:

OS X updates and fixes


1. Install OS X 10.5.7 update
2. Make a more “standard” Extensions folder
3. Enable Speedstep
4. Enable proper power management (sleep/shutdown/restart)
5. Enable audio
6. Fix the time-sync issue between the OS X clock and the system clock

This guide should carry you step-by-step through the entire process. Please post any questions
to the forum topic here: http://www.s10lenovo.com/viewtopic.php?f=15&t=2639

Directions are in black, terminal commands, keystrokes, and file/folder names are in red, some
notes are in blue. When you’re typing in commands to a terminal or command prompt, be
careful to get all of the dots, asterisks, and spaces correct.

1. 10.5.7 update: Download either the delta update (for 10.5.6 users) or the combo update
(for 10.5.x users) from the Apple support website. It should be around 442mb-448mb.
Install it normally and let the system reboot.
a. On reboot, you will probably have a problem with the system hanging or having
a corrupted graphic login screen. Allow a minute or two for the hard drive to
stop doing its thing, then force a shutdown by holding the power button for 4-5
seconds.
b. Power back on, but this time, make sure you boot using the -x flag for safe boot
mode. This should load a standard VESA graphics kext and let you see what
you’re doing.
c. Run the DellEFI program and select (only) to install the Mini 9 extensions.
Reboot again, and you should be back in to OS X normally with version 10.5.7.
2. Rename the Mini9Ext folder: We don’t have a Dell Mini 9, so our patched extensions
directory should be more fitting. This is purely aesthetic and optional, but if you want
your kexts to be in /Extra/Extensions/ instead of /Extra/Mini9Ext/ this is your hack. I
think you can rename this to whatever you want.
a. Fire up a Terminal window. Type in

sudo mv /Extra/Mini9Ext /Extra/Extensions (Renames the folder)


sudo chmod –R 755 /Extra/Extensions (Sets permissions for kexts)
sudo chown –R root:wheel /Extra/Extensions (Sets ownership correctly)
sudo touch /Extra/Extensions (Causes the cache to rebuild next time)
sudo kextcache –a i386 –m /Extra/Extensions.mkext /Extra/Extensions
The last command rebuilds the Extensions.mkext cache file. We’ll be using this
exact command a lot, every time we do anything to the /Extra/Extensions
folder. This may make the touch command unnecessary, but it doesn’t hurt to
include it.
b. Reboot and make sure your graphics, trackpad, etc. work as before.
3. Install some “recommended” kexts: This step will require you to do your own
homework to decide which kexts you want or need. On my S10, I have installed the
VoodooPowerMini kext, which enables Speedstepping CPU throttling;
VoodooUSBEHCI, which enables sleep (but has some caveats – see end notes);
VoodooHDA, for audio; and meklort’s ApplePS2Controller and PrefPane, to give me
two-finger/edge scrolling.
a. For the VoodooPowerMini and VoodooUSBEHCI kexts (and any other kext
unless otherwise indicated by me or the programmers), we start by just dragging
and dropping the (unzipped) kexts into our /Extra/Extensions folder. This will
require us to authenticate the action with our password.
i. To enable sleep, type the following into Terminal (all on one line):

sudo pico /System/Library/Extensions/IOUSBFamily.kext/Contents/


Plugins/AppleUSBEHCI.kext/Contents/Info.plist

ii. In the text editor that opens, find the line that reads:

<key>CFBundleVersion</key>
<string>3.1.5</string> (This entry may be different, like “3.4.5”)

and add the following lines right under them:

<key>OSBundleCompatibleVersion</key>
<string>1.0</string>

iii. Hit Cmd-X (Ctrl-X or Alt-X, depending on your modifier keys), then Y to
save, and Enter to save the file and exit.
iv. To confirm that the VoodooPowerMini kext is controlling Speedstep
properly, use the CPU-X program (Google can find it for you).
b. For the VoodooHDA kext, there are several issues with dependencies that make
it a bit difficult to install to the /Extra/Extensions folder, so we’ll just install it to
the default directory. Drag the kext to /System/Library/Extensions/ and
authenticate the change. Then delete the Extensions.mkext file in
/System/Library/ (right click, Move to Trash, authenticate). The cache will
rebuild on the next reboot. There are other ways to do this as well.
c. To install meklort’s touchpad driver, download the three files from his post at
MyDellMini: http://www.mydellmini.com/forum/mac-os-x/5340-touchpad-
drivers.html#post44560
d. Unzip the files, then follow these directions (from chazzek at MDM):
To install the preference pane, type into a Terminal window:

cd ~/Downloads (or wherever your downloaded, unzipped files are)


sudo cp -rf PS2PreferencePane.prefPane /System/Library/PreferencePanes/
sudo chmod +x /System/Library/PreferencePanes/
PS2PreferencePane.prefPane/Contents/Resources/PS2PreferenceSetter
sudo cp -f com.meklort.ps2.helper.plist /Library/LaunchAgents/

Note that each separate line starts with sudo.


To install the driver, type:

sudo cp -rf /Extra/Extensions/ApplePS2Controller.kext


/Extra/ApplePS2Controller.kext.bak
sudo cp -rf ApplePS2Controller.kext /Extra/Extensions/

Again, there are two commands here, and each separate line starts with sudo.

4. Fix the time-sync issue: You may not have noticed it because of online time updates in
all of your OSes, but dual booting often causes a problem where OSX writes your local
time (whatever is set on your clock) to the system CMOS clock. Then, in Windows, the
clock is read from the CMOS, and THEN changed for local time, like -5 hours for Eastern
time. To fix this, simply download this package developed by Zephyroth:
http://www.one4house.com/iamges/Zephyroth_Dual_Boot_Time_Fix.pkg.tgz
a. Un-archive the package and install it, and then set your local time in the BIOS to
fix the time sync issue.

Notes:
1. Installing kexts properly is sometimes dependent on having other kexts (dependencies)
installed. This is usually no problem if the kexts are installed to the default
/System/Library/Extensions directory, but when we start adding extensions anywhere
else, like in the /Extra folder, we sometimes run into the problem. But the /Extra folder
is how we keep our modified kexts update-proof, and was part of the magic of the
whole boot-132/Chameleon movement. If you find that a certain kext just isn’t loading
or working correctly, try to find out what its dependencies are. Sometimes, you can copy
these to the /Extra/Extensions folder, but sometimes (as with VoodooHDA), it’s just
easier to install to the /S/L/E directory. Keep a copy of all of your kexts and patches
somewhere, just in case you need to reinstall some of them after a future update.
2. Renaming the Mini9Ext folder to a different name will make the UpdateExtra app
useless. Whenever you want to install a new kext or otherwise “fix” the
/Extra/Extensions folder, you’ll need to run the chmod, chown, touch (maybe), and
kextcache commands as written in the steps above. This will fix permissions and
ownership, and rebuild the Extensions.mkext cache.

You might also like