LAST UPDATED ON: October 27, 2014
The mother of all boot flags. Entering -v into the bootloader turns on verbose mode, which is absolutely critical for fixing any Hackintosh issue. Verbose mode displays every single process that takes place during your bootup of Mac OS X. It can be rather intimidating, as it will display hundreds of lines of commands during the bootup process. However, if your Hackintosh isn't booting, then verbose mode should freeze at the exact point where the bootup process is tripping up. Take a photo of what verbose mode says when the bootup freezes. You can then post that photo on a Hackintosh forum to look for help, or try to use the results of verbose mode to guess what your problem is by yourself.
Turns on safe mode. Mac OS X in safe mode ignores all kext files and boot settings except those which are absolutely necessary to booting the system. Safe mode is useful if you're trying to run the Mac OS X installer on a PC that's not fully compatible with Mac OS X. Also, if you accidentally installed a kext file that's messing up your Hackintosh, booting into safe mode may work around the problem. In safe mode, you can then remove the offending kext from /Extra/Extensions in your main hard drive (if you're running Mac OS X Snow Leopard), or /System/Library/Extensions (if you're running Mac OS X Lion, Mountain Lion, or Mavericks).
If you've entered some extra boot flags into org.Chameleon.boot.plist, but they're messing up your Hackintosh's bootloader, enter the -F boot flag to ignore them.
Ignores kext caches during bootup on Mac OS X Snow Leopard. If you did not install a kext properly (usually because you forgot to run System Utilities in Multibeast after installing a new kext), your kext cache will be damaged, and Mac OS X might become unbootable unless you use this boot flag. The kext cache was replaced by the kernel cache in Mac OS X Lion, so theoretically, the -f boot flag should no longer work; however, this boot flag can still help some Hackintoshes boot (for reasons unknown).
Mac OS X Lion, Mountain Lion, and Mavericks can use the kernel cache to install kexts, allowing Mac OS X to boot faster. However, the kernel cache is turned off by default, and you have to enable it by using the boot flag "UseKernelCache=Yes" (without quotation marks). Installing Easybeast, UserDSDT, or "DSDT Free Installation" with Multibeast will automatically turn the kernel cache on for you. If Mac OS X is booting extremely slowly on your Hackintosh, the kernel cache might be malfunctioning. In addition, some laptops have trouble with the kernel cache feature. In these cases, you can turn the cache off with "UseKernelCache=No" (without quotation marks). Turning off the kernel cache is equivalent to using the "-f" bootflag in Snow Leopard.
Some Hackintoshes will only boot when their "PCI Root ID" is set to 0. This usually happens with Hackintoshes that use a AMD Radeon graphics card. Other times, a Hackintosh will only boot when its "PCI Root ID" is set to 1. In some cases, the boot flag "PCIRootUID=1" will also fix Mac App Store verification errors.
This turns Graphics Enabler off/on (you can set "No" to "Yes"). Graphics Enabler is a feature that helps Mac OS X work better with certain graphics cards. These days, Unibeast turns off Graphics Enabler by default, since graphics cards from NVIDIA's 600 and 700 series no longer require GraphicsEnabler to work with Mac OS X. However, most other graphics cards still require Graphics Enabler to be turned on-- on these graphics cards, turning the feature off will break DVD Player, as well as Geekbench, most games, most video editors, and certain other apps.
This turns IGP Enabler on/off (you can set "Yes" to "No"). IGP Enabler is a feature similar to Graphics Enabler that helps Mac OS X work better with your integrated graphics. While Graphics Enabler will already do this normally, if you need to turn off Graphics Enabler for some reason but want to keep your integrated graphics working, use this boot flag. Specifically, this boot flag can be useful if you want to use an NVIDIA 600 or 700 series card in conjunction with your integrated graphics (e.g. when running AirPlay Mirroring).
The DarkWake feature in Mac OS X Lion, Mountain Lion, and Mavericks allows you to wake up certain parts of your Mac from sleep, while leaving other parts in sleep mode. Unfortunately, this feature often messes up sleep on Hackintoshes. Enter this bootflag to turn it off (enter darkwake=1 to turn it on, if turning it off doesn't do the trick). Additionally, if your verbose bootup is freezing at a bunch of commands that mention "SleepEnabler.kext", entering darkwake=0 should be able to temporarily turn SleepEnabler.kext off. (Once you boot into OS X, be sure to remove SleepEnabler.kext completely by deleting it from either /Extra/Extensions or /System/Library/Extensions in your hard drive.)
If your verbose mode bootup of Mac OS X Lion or Mountain is freezing at [PCI Configuration Begin], enter the npci=0x3000 boot flag to fix it. This flag is applied by default when you install Easybeast, UserDSDT, or "DSDT Free Installation" with Multibeast. The boot flag npci=0x2000 does the same thing, except that it usually only works for Lion.
Disables the VT-d virtualization technology built into certain Intel processors. For Hackintoshes, VT-d is pretty useless; virtually no Mac OS X applications use it (virtualization apps like Virtualbox tend to use the alternative VT-x technology instead), and certain Hackintosh motherboards have been known to crash in Mac OS X when VT-d is enabled.
Limits Mac OS X to using one core of your CPU. This boot flag is often necessary to launch the Mac OS X Snow Leopard installation DVD on a Hackintosh with an unsupported processor (ahem, AMD processors). In OS X Mountain Lion and Mavericks, you may also have to use this boot flag if your computer uses a high-end Intel processor on LGA 2011.
The 20 is replaced with your CPU's bus ratio. This boot flag is usually used when you're installing Mac OS X Snow Leopard on a processor that's not supported (once again, AMD processors). Snow Leopard supports more processors than it used to, so this boot flag isn't as common as before. You can find a list of busratios for 2010-model Intel processors here. You can also find your busratio manually.
Forces Mac OS X to boot into 32-bit mode. Sometimes, your CPU or graphics card won't be fully supported in OS X unless you boot into 32-bit mode. Unlike in Windows, booting the 32-bit kernel for Mac OS X does not limit your total amount of RAM to 4 GB, and you can still run 64-bit applications. However, single applications cannot use up more than 4 GB of RAM, so this is a disadvantage if you do professional video editing, or something else that takes up a lot of RAM.
Allows Mac OS X to boot into 64-bit mode. Mac OS X Snow Leopard (and all versions beyond it) will boot into 64-bit mode by default. Nowadays, this boot flag is mainly used on AMD Hackintoshes, where choosing between 32-bit mode and 64-bit mode is actually important.
Forces the "userland" of Mac OS X to boot into 32-bit mode. Mac OS X is divided into two parts: the "kernel", where OS X communicates with your computer's hardware, and the "userland", where everything else runs. Boot flags like "arch=i386" and "arch=x86_64" affect the kernel, but when running Mac OS X Lion with certain modified kernels, AMD Hackintoshes often need a 32-bit userland in addition to a 32-bit kernel. In this case, you need to use "-legacy" at the same time as "arch=i386" (both without quotation marks).
Forces the "userland" of Mac OS X to boot into 64-bit mode. Mac OS X is divided into two parts: the "kernel", where OS X communicates with your computer's hardware, and the "userland", where everything else runs. Boot flags like "arch=i386" and "arch=x86_64" affect the kernel, but when running Mac OS X Snow Leopard, AMD Hackintoshes often need a 32-bit kernel and a 64-bit userland. In this case, you need to use "-force64" at the same time as "arch=i386" (both without quotation marks).
Enables SSSE3 emulation for AMD Hackintoshes. Ever since Mac OS X Lion, Mac OS X has required the SSSE3 instruction set to run properly. However, AMD didn't add SSSE3 to their processors until 2011, meaning that only AMD processors with a "FX" in their model number (e.g. FX-4100) natively support the instructions needed by Mac OS X. If your computer uses an older AMD processor (i.e. anything from the Athlon or Phenom lines), you may have to use this boot flag to enable "emulation" of the instructions instead.
Locates the kernel ("mach_kernel"), an important boot file for Mac OS X. If your Hackintosh's verbose mode says that it can't find mach_kernel for some reason, entering this boot flag will help the bootloader find it. The kernel is either found at the very base of the OS X file system, or in /System/Library/Kernels/kernel if you're using OS X Yosemite. If you actually moved the kernel somewhere else in your hard drive, change "mach_kernel" to wherever the kernel is located. For example, if the kernel is in the Extra folder of your main hard drive, enter the boot flag "/Extra/mach_kernel" (without quotation marks). If your kernel is named something different, you can change the boot flag accordingly. For example, if your kernel is named "cheesecake" instead of "mach_kernel", enter the boot flag "cheesecake" (without quotation marks) instead.
SEE ALSO: How to use boot flags on your Hackintosh