Chameleon

Chameleon Svn Source Tree

Root/branches/cparm/doc/README

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.
22
23
24 Installation
25 ============
26
27 Normal Install (non-RAID):
28 --------------------------
29
30 Suppose that your installation is on /dev/disk0s2
31
32 - Install boot0 to the MBR:
33 sudo ./fdisk440 -f boot0 -u -y /dev/rdisk0
34
35 - Install boot1h to the partition's bootsector:
36 sudo dd if=boot1h of=/dev/rdisk0s2
37
38 - Install boot to the partition's root directory:
39 sudo cp boot /
40
41 - Install Symbols and modules to the partition's root directory or the partition's booter (if needed):
42* Symbols.dylib is absolutely needed if you plan to use any other module,
43* otherwise Symbols.dylib is useless, assume that /Extra is already created (if you need special permissions, use sudo)
44
45mkdir /Extra/modules
46cp Symbols.dylib /Extra/modules
47cp "Any other module wanted".dylib /Extra/modules
48
49 No need to use startupfiletool anymore!
50
51IMPORTANT NOTE ABOUT THE MODULES: PLEASE NOTE THAT ALL MODULES ARE NOT NECESSARILY NEEDED TO BE INSTALLED, YOU JUST HAVE TO INSTALL WHAT YOU NEED,
52FOR EXEMPLE:
53 - IF YOU DON'T PLAN TO USE A RAMDISK (PREBBOT.DMG OR POSTBOOT.IMG), YOU WILL SURELY NOT NEED TO INSTALL THE RAMDISKLOADER MODULE,
54 - IF YOU DON'T PLAN TO BOOT FROM AN HIBERNATE IMAGE YOU WILL SURELY NOT NEED TO INSTALL THE HIBERNATEENABLER MODULE,
55 - IF YOUR MACHINE IS NOT A NETBOOK, YOU WILL SURELY NOT NEED TO INSTALL THE NETBOOKINSTALLER MODULE,
56 - IF YOU DON'T NEED TO PATCH THE KERNEL ON THE FLY, PLEASE DO NOT INSTALL THE KERNELPATCHER MODULE,
57
58
59PLEASE DO NOT USE ACPIPATCHER AND ACPICODEC TOGETHER, THEY DO THE SAME THING BUT IN A DIFFERENT WAY, YOU HAVE TO CHOOSE ONE OF THEM (ACPICODEC IS RECOMMENDED), THIS ISSUE WILL BE FIXED WITH THE BUNDLED MODULE VERSION
60PLEASE DO NOT USE SMBIOSGETTERS AND SMBIOSPATCHER TOGETHER, THEY DO THE SAME THING BUT IN A DIFFERENT WAY, YOU HAVE TO CHOOSE ONE OF THEM (SMBIOSGETTERS IS RECOMMENDED), THIS ISSUE WILL BE FIXED WITH THE BUNDLED MODULE VERSION
61
62HERE IS ONE OF THE MOST COMMON USAGE:
63
64- ACPICODEC (FOR ACPI FIXES, AND IF YOU DON'T HAVE A ALREADY PATCHED BIOS)
65- GRAPGHICENABLER (IF YOU HAVE NOT FIXED THIS BY THE DSDT, THIS MODULE CAN ADD THE EFI STING FOR YOUR GRAPHIC CARD)
66- GUI (IF YOU WANT A GUI)
67- KEYMAPPER (IF YOU WANT TO REMAP YOUR KEYBOARD (AN AZERTY PRESET IS AVAILABLE), SEE MODULEHELP.TXT FOR USAGE)
68- SMBIOSGETTERS (FOR SMBIOS FIXES, AND IF YOU DON'T HAVE A ALREADY PATCHED BIOS)
69- MEMORY (FOR RAM DETECTION, THIS MODULE IS ACTUALLY A PLUGIN FOR SMBIOSGETTERS OR SMBIOSPATCHER, AND IT WILL NOT WORK WITHOUT ONE OF THEM, IT WILL BE MORE CLEAR WITH THE BUNDLED MODULES)
70- SYMBOLS IS ABSOLUTELY NEEDED IF YOU USE AT LEAST ONE OTHER MODULE
71
72LAST THING, PLEASE NOTE THAT ALL MODULES ARE ENABLED BY DEFAULT ONCE THEY ARE INSTALLED, THERE IS NO NEED TO ENABLE THEM BY AN OPTION BUT OF COURSE YOU CAN DISABLE A MODULE EVEN IF THE MODULE IS INSTALLED
73
74
75 RAID Install:
76 -------------
77
78 Suppose that your installation is on /dev/disk3, which is either a mirror- or a
79 stripeset consisting of /dev/disk0 and /dev/disk1
80
81 Mac OS X creates a small helper partition at the end of each RAID member disk,
82 namely /dev/disk0s3 and /dev/disk1s3
83
84 - Install boot0 to the MBR of both disks:
85 sudo ./fdisk440 -f boot0 -u -y /dev/rdisk0
86 sudo ./fdisk440 -f boot0 -u -y /dev/rdisk1
87
88 - Install boot1h to the bootsector of each boot partition:
89 sudo dd if=boot1h of=/dev/rdisk0s3
90 sudo dd if=boot1h of=/dev/rdisk1s3
91
92 - Install boot to both helper partition's root directories.
93 diskutil mount disk0s3
94 cp boot /Volumes/Boot\ OSX
95 diskutil unmount disk0s3
96 diskutil mount disk1s3
97 cp boot /Volumes/Boot\ OSX
98 diskutil unmount disk1s3
99
100 Support:
101 --------
102
103 If you have any questions, issues etc. feel free to join us
104 at irc.voodooprojects.org #chameleon
105
106
107 Source Code
108 -----------
109
110 For downloading the source code please visit the project page at
111 http://chameleon.osx86.hu
112
113
114 Licensing
115 ---------
116
117 Chameleon is released under the terms and conditions of
118 Apple Public Source License (see APPLE_LICENSE).
119

Archive Download this file

Revision: 1141