Urgu Posted September 15, 2010 Share Posted September 15, 2010 Hello, I need to learn more about Chemeleon, and how it works. I installed a lot of times Ideneb and Snowleo following tutorials, but I feel frustrated because at least I don't know what I'm really doing. So I ask you if exist a detailed guide about it. I know it's a bootloader manager, but I need to know things how it works, what "language" am I using when I write commands, how it works (in particoular the partition stuff and why I must use Gpart), and a guide about commands to use. At least, I want to be aware about what Im doing Please could someone help me? Thanks Quote Link to comment Share on other sites More sharing options...
Gringo Vermelho Posted September 15, 2010 Share Posted September 15, 2010 Chameleon is much more than a bootloader. Start by reading the documentation: http://forum.voodooprojects.org/index.php/board,1.0.html For more information, download and browse the most recent Chameleon source code here: http://forge.voodooprojects.org/p/chameleo...tree/HEAD/trunk For a history lesson, follow the first link in my post below. Quote Link to comment Share on other sites More sharing options...
Quactaur Posted September 15, 2010 Share Posted September 15, 2010 To be honest I think a lot of people would appreciate a guide that walks them through a bit more. As the linked to resources say, there are a 'bazillion' guides on how to install osx86, but very few that explain what is going on. As someone who left the whole osx86 scene shortly after 10.5 was released (originally using the developer-pc disk image and then moving onto mbr hacked kernels and all of it) I don't really understand what is going on with the modern state of the project. For example, while I get that kexts are the analogues of drivers, I don't understand how people using DSDTs seemingly don't need kexts, what the difference is between putting kexts in the OSX partition versus a folder on the EFI partition, and various other bits and pieces. I do think that a from here-to-there summary of how the project has evolved and how it works, not how to get it working, would allow a lot of beginners to self-help and self-diagnose better. At the moment, I think it is very tempting for individuals like myself to follow step by step walkthrough without really understanding anything, and then just ask in the forums to be hand-held through any troubleshooting. Teaching myself seems particularly daunting as there is so much that has changed from when I left, and understanding any one development tends to involve understanding lots of others. I'm certainly not demanding or expecting such a guide to be written, but it would really be helpful to people starting out. Quote Link to comment Share on other sites More sharing options...
Gringo Vermelho Posted September 15, 2010 Share Posted September 15, 2010 First please read all of this: http://tgwbd.org/darwin/boot.html I don't understand how people using DSDTs seemingly don't need kexts No, that's a common misconception. You can only patch things that are working to some degree already, that's why it's called patching. It's not possible to implement everything in the DSDT. AES decryption for example. (DSMOS.kext, AppleDecrypt.kext, fakesmc.kext). And device drivers. Here's an example of how you can patch something in DSDT instead of directly modifying a kernel extension (or driver). Having AppleLPC.kext loaded is a requirement for native CPU power management on compatible Intel hardware. But if the device ID of your motherboards LPC device doesn't match any of the IDs that are listed in AppleLPC.kext/Contents/Info.plist, then the kernel extension doesn't load. For example, AppleLPC.kext knows the device ID for the LPC device on the ICH10, but not for the LPC device on the ICH10R. -You can add your device ID to the kernel extension by editing info.plist inside. This works, but only until AppleLPC.kext receives an update from Apple! -You can make a so-called fake/plist-only/injector/legacy AppleLPC.kext with only a modified info.plist inside with your LPC device's device ID added. This will not get overwritten by a system update (if you want to see what that looks like, google LegacyAppleLPC.kext). -Or, in this case (it doesn't work for all devices!) you can leave AppleLPC.kext as it is, and override the device ID of your LPC device in DSDT, so that there's a match with the list in AppleLPC.kext/Contents/info.plist. This is a much more elegant and permanent solution. Device ID override via DSDT is described in detail in the following thread, along with several uses for it: http://www.insanelym...howtopic=168014 what the difference is between putting kexts in the OSX partition versus a folder on the EFI partition Anything that resides on the EFI partition won't get overwritten by a system update. Furthermore, if you keep all your modifications there, that means you can use the same EFI partition to boot the retail DVD, other OS X partitions etc. Or you can do a full retail OS X reinstall anytime you like and boot right into it. Quote Link to comment Share on other sites More sharing options...
MaLd0n Posted September 15, 2010 Share Posted September 15, 2010 BOOT HELP RC5 The boot: prompt waits for you to type advanced startup options. If you don't type anything, the computer continues starting up normally. It uses the kernel and configuration files on the startup device, which it also uses as the root device. Advanced startup options use the following syntax: [device] [arguments] Example arguments include device: rd=<BSD device name> (e.g. rd=disk0s2) rd=*<IODeviceTree path> (e.g. rd=*/PCI0@0/CHN0@0/@0:1) kernel: kernel name (e.g. "mach_kernel" - must be in "/" ) flags: -v (verbose) -s (single user mode), -x (safe mode) -F (ignore boot configuration file) "Graphics Mode"="WIDTHxHEIGHTxDEPTH" (e.g. "1024x768x32") kernel flags (e.g. debug=0x144) io=0xffffffff (defined in IOKit/IOKitDebug.h) Example: mach_kernel rd=disk0s1 -v "Graphics Mode"="1920x1200x32" If the computer won't start up properly, you may be able to start it up using safe mode. Type -x to start up in safe mode, which ignores all cached driver files. Special booter hotkeys: F5 Rescans optical drive. F10 Scans and displays all BIOS accessible drives. Special booter commands: ?memory Displays information about the computer's memory. ?video Displays VESA video modes supported by the computer's BIOS. ?norescan Leaves optical drive rescan mode. Additional useful command-line options: config=<file> Use an alternate Boot.plist file. Options useful in the com.apple.Boot.plist file: Wait=Yes|No Prompt for a key press before starting the kernel. "Quiet Boot"=Yes|No Use quiet boot mode (no messages or prompt). Timeout=8 Number of seconds to pause at the boot: prompt. "Instant Menu"=Yes Force displaying the partition selection menu. "Default Partition" Sets the default boot partition, =hd(x,y)| where 'x' & 'y' are the disk and partition numbers =<UUID> or specify the selected volume UUID string. "Hide Partition" Remove unwanted partition(s) from the boot menu. =hd(x,y) [hd(m,n)] only non mac osx boot partitions can be hidden. "Rename Partition" Rename partition(s) for the boot menu. =hd(x,y) <alias> [;hd(m,n) <alias2> ...] GUI=No Disable the GUI (enabled by default). "Boot Banner"=Yes|No Show boot banner in GUI mode (enabled by default). "Legacy Logo"=Yes|No Use the legacy grey apple logo (disabled by default). PciRoot=<value> Use an alternate value for PciRoot (default value 0). GraphicsEnabler=Yes|No Automatic device-properties generation for gfx cards. UseAtiROM=Yes|No Use an alternate Ati ROM image (path: /Extra/<vendorid>_<devid>.rom) UseNvidiaROM=Yes|No Use an alternate Nvidia ROM image (path: /Extra/<vendorid>_<devid>.rom) VBIOS=Yes|No Inject VBIOS to device-properties. EthernetBuiltIn=Yes|No Automatic "built-in"=yes device-properties generation for ethernet interfaces. USBBusFix=Yes Enable all USB fixes below: EHCIacquire=Yes Enable the EHCI fix (disabled by default). UHCIreset=Yes Enable the UHCI fix (disabled by default). USBLegacyOff=Yes Enable the USB Legacy fix (disabled by default). ForceHPET=Yes|No Force Enable HPET. Wake=No Disable wake up after hibernation (default: enabled). ForceWake=Yes Force using the sleepimage (disabled by default). WakeImage=<file> Use an alternate sleepimage file. (default path is /private/var/vm/sleepimage). DropSSDT=Yes Skip the SSDT tables while relocating the ACPI tables. DSDT=<file> Use an alternate DSDT.aml file (default path: /DSDT.aml /Extra/DSDT.aml). SMBIOS=<file> Use an alternate smbios.plist file (default path: /smbios.plist /Extra/smbios.plist bt(0,0)/Extra/smbios.plist). SMBIOSdefaults=No Don't use the Default values for SMBIOS overriding if smbios.plist doesn't exist, factory values are kept. "Scan Single Drive" Scan the drive only where the booter got loaded from. =Yes|No Fix rescan pbs when using a DVD reader in AHCI mode. Rescan=Yes Enable CD-ROM rescan mode. "Rescan Prompt"=Yes Prompts for enable CD-ROM rescan mode. SystemId=<UUID> Set manually the system id UUID, SMUUID in smbios config (reserved field) isn't used. SystemType=<n> Set the system type where n is between 0..6 (default =1 (Desktop) Quote Link to comment Share on other sites More sharing options...
Urgu Posted September 15, 2010 Author Share Posted September 15, 2010 Chameleon is much more than a bootloader. Start by reading the documentation:http://forum.voodooprojects.org/index.php/board,1.0.html For more information, download and browse the most recent Chameleon source code here: http://forge.voodooprojects.org/p/chameleo...tree/HEAD/trunk Thank you very much, it's what I needed! Finally I'll start to understand something about Chameleon To be honest I think a lot of people would appreciate a guide that walks them through a bit more. As the linked to resources say, there are a 'bazillion' guides on how to install osx86, but very few that explain what is going on. exactely. It's simple to found step by step tutorials about installing MacOsX on pc but it's difficult to found an explanation of what are you doing, expecially for newbies. In my opinion the blind "do this, write that" approach of tutorials is good for who needs only MacosX on pc, but is bad when something go wrong, because you don't have idea about what you have done and what you can do. Thanks a lot, I hope to be prepared to help someone with Chameleon in the future! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.