Root/
Source at commit 196 created 13 years 10 months ago. By mozodojo, Fixed memory deallocation error while adding SSDTs into RSDT/XSDT. Fixed improper DSDT parsing algorithm in acpi_find_cpu_names. Improvements in memory detection algo, thank to Azimutz. Using my own algo for CPU type injections (need testing and testers, especially with newer i7, i5, i3 cpus, show me chameleon log). | |
---|---|
1 | ␊ |
2 | Chameleon Boot Loader␊ |
3 | =====================␊ |
4 | ␊ |
5 | What is it?␊ |
6 | -----------␊ |
7 | ␊ |
8 | Chameleon is combination of various boot loader components. It is based␊ |
9 | on David Elliott's fake EFI implementation added to Apple's boot-132␊ |
10 | project. Chameleon is extended with the following key features:␊ |
11 | ␊ |
12 | ␊ |
13 | Features␊ |
14 | --------␊ |
15 | ␊ |
16 | - Device Property Injection via device-properties string in com.apple.Boot.plist␊ |
17 | - hybrid boot0+boot1h loaders for both MBR and GPT partitioned disks.␊ |
18 | - automatic FSB detection code even for recent AMD CPUs.␊ |
19 | - Apple Software RAID support.␊ |
20 | - stage2 loader (boot) can be placed as a regular file in the boot␊ |
21 | partition's root folder. It has precedence over the embedded␊ |
22 | startupfile.␊ |
23 | ␊ |
24 | ␊ |
25 | Installation␊ |
26 | ============␊ |
27 | ␊ |
28 | Normal Install (non-RAID):␊ |
29 | --------------------------␊ |
30 | ␊ |
31 | Suppose that your installation is on /dev/disk0s2␊ |
32 | ␊ |
33 | - Install boot0 to the MBR:␊ |
34 | ␉␉sudo fdisk -f boot0 -u -y /dev/rdisk0␊ |
35 | ␊ |
36 | - Install boot1h to the partition's bootsector:␊ |
37 | ␉␉sudo dd if=boot1h of=/dev/rdisk0s2␊ |
38 | ␊ |
39 | - Install boot to the partition's root directory:␊ |
40 | ␉␉sudo cp boot /␊ |
41 | ␊ |
42 | No need to use startupfiletool anymore!␊ |
43 | ␊ |
44 | ␊ |
45 | RAID Install:␊ |
46 | -------------␊ |
47 | ␊ |
48 | Suppose that your installation is on /dev/disk3, which is either a mirror- or a␊ |
49 | stripeset consisting of /dev/disk0 and /dev/disk1␊ |
50 | ␊ |
51 | Mac OS X creates a small helper partition at the end of each RAID member disk,␊ |
52 | namely /dev/disk0s3 and /dev/disk1s3␊ |
53 | ␊ |
54 | - Install boot0 to the MBR of both disks:␊ |
55 | ␉␉sudo fdisk -f boot0 -u -y /dev/rdisk0␊ |
56 | ␉␉sudo fdisk -f boot0 -u -y /dev/rdisk1␊ |
57 | ␊ |
58 | - Install boot1h to the bootsector of each boot partition:␊ |
59 | ␉␉sudo dd if=boot1h of=/dev/rdisk0s3␊ |
60 | ␉␉sudo dd if=boot1h of=/dev/rdisk1s3␊ |
61 | ␊ |
62 | - Install boot to both helper partition's root directories.␊ |
63 | ␉␉diskutil mount disk0s3␊ |
64 | ␉␉cp boot /Volumes/Boot\ OSX␊ |
65 | ␉␉diskutil unmount disk0s3␊ |
66 | ␉␉diskutil mount disk1s3␊ |
67 | ␉␉cp boot /Volumes/Boot\ OSX␊ |
68 | ␉␉diskutil unmount disk1s3␊ |
69 | ␊ |
70 | - Add "rd=uuid boot-uuid=506D8F03-0596-32D8-BE0B-E3A4E7D5C72A" to your kernel flags␊ |
71 | (replace with your root volume's UUID; find out using "Disk Utility.app", right␊ |
72 | ␉ click on your root volume, then Get Info"):␊ |
73 | ␉␉nano /Library/Preferences/SystemConfiguration/com.apple.Boot.plist␊ |
74 | ␉␉touch /System/Library/Extensions␊ |
75 | ␊ |
76 | ␊ |
77 | Support:␊ |
78 | --------␊ |
79 | ␊ |
80 | If you have any questions, issues etc. feel free to join us␊ |
81 | at irc.voodooprojects.org #chameleon␊ |
82 | ␊ |
83 | ␊ |
84 | Source Code␊ |
85 | -----------␊ |
86 | ␊ |
87 | For downloading the source code please visit the project page at␊ |
88 | http://chameleon.osx86.hu␊ |
89 | ␊ |
90 | ␊ |
91 | Licensing␊ |
92 | ---------␊ |
93 | ␊ |
94 | Chameleon is released under the terms and conditions of␊ |
95 | Apple Public Source License (see APPLE_LICENSE).␊ |
96 | To use "Chameleon" for commercial purposes please contact us at:␊ |
97 | http://chameleon.osx86.hu/contact␊ |
98 |