5. Post-configuration part II
So... we've got our own DSDT, let's use some of its potential and delete
NullCPUPowerManagement from our
Extra finally.
In the main directory of Extra (where
smbios.plist is) paste
compiled DSDT with
.aml extension. Then we put my audio fix -
LegacyHDA_ALC662-v.1 and
AnyCardReader to Extra/KextStore.
The next step is replacing 3 files in
System/Library/Extensions (one of them is a cosmetic fix - after updating to 10.6.8, our controller is no longer identified as
MCP79 AHCI even though the part regarding
MCP79 is exactly the same in
AppleAHCIPort 10.6.7 and
10.6.8 (our dev id is still there...), I wasn't able to find any other way to fix the issue than replacing new
AppleAHCIPort to the one from Mac OS X 10.6.7... well... I am not a real fan of rollbacks but when there is no alternative and the system isn't going to be updated anymore...):
AppleAHCIPort, AppleHDA, IOAudioFamily
Why do we have to replace
AppleHDA? Unfortunately, after waking up from sleep - our audio was broken... patched
IOAudioFamily fixes the problem but it isn't developed since
Mac OS X 10.6.2 and it doesn't work not only with Mac OS X
10.6.8 (what is obvious since
AppleHDA has got a new structure) but also with
10.6.7. I am not able to create an update to this kext so we have to use older
AppleHDA until I learn how to do this or someone else creates one.
Finally, we can make our bootloader look nicer. Paste my
Themes folder to
Extra and use
Kext Wizard to rebuild cache, fix permissions etc. (in general - check all options). Be patient - it takes a while!
Reboot with
-v flag to know if something goes wrong - it's the last time you have to see this ugly screen, I promise
6. Fixing "Your device or computer could not be verified. Contact support for assistance" error while logging into App Store
It occurs when your
WLAN in on
en0 instead of
LAN. To fix this we have to delete
NetworkInterfaces.plist from:
/Library/Preferences/SystemConfiguration
Then we have to reboot, go to network preferences and delete both inferfaces. Re-add them in this order:
- Ethernet
- AirPort
7. Fixing a problem with webcam
As you've probably observed - our webcam is working OOTB but the video is upside down.
iGlasses provides an easy fix to this. After installing, simply turn on
PhotoBooth and use
"Rotate" option to set the video into proper position, then click on
"Default" to load this setting automatically.
This app works with most applications I know, for example:
Skype, Messenger for Mac or PhotoBooth.
8. Creating shortcuts without Fn
Unfortunately, we can't use Fn keys on Mac OS X. Thanks to
ControllerMate we are able to create our own shortcuts to system functions. I am going to show you how to create such on example of volume control:
After first run, we will see a window like the one below:
Check
"Start Page", then in
"Palette" windows, on the right side of the screen, find
"Apple Keyboard":
Double click on its icon, you will see a list like this:
After we press any key on our keyboard, a "diode" near this key on the list is going to blink. In this example we are going to set our volume control keys this way:
F9 - mute
F10 - volume down
F11 - volume up
Before we do so, we have to make sure that none of the keys is being used by system (for example -
F12 is a default shortcut for ejecting CD/DVD, that's why I had to leave it, even though on our keyboard, it's a part of Fn for volume control).
We can check it in
"System preferences->Keyboard->Shortcuts". Uncheck all shortcuts connected with
F9, F10 and F11:
Then, go back to
ControllerMate and drag every key (F9, F10 and F11) from
"Palette to the main window of the app.
The next step is to choose
"Windows->Keystrokes Palette". From this window, drag all three icons representing volume control to the main window of
ControllerMate.
All that is left is to create the shortcuts finally. We do so by dragging
OFF icon from key to its function. Final effect of my work with this app is visible below:
Choose
"File->Save" and quit the application - shortcuts should be working now

(
ControllerMate doesn't have to work all the time, it has its own helper app that runs in background)