RevoBoot is a GUI less stage 2 bootloader based on Master Chief's "Revolution" - Revolution was a special kind of branch of Chameleon based on Apple's Boot 132.
That being said. RevoBoot is the successor of Revolution and is now being ripped up, dissected and re-thought by RevoGirl. She has continued to fine tune every aspect of what's required to boot OS X in the most direct way, with the aim of keeping the bootloader as small, quick and tidy as possible.
Looking at Revolutions' source code, drill down to /i386/config and you will find three folders, ACPI, EFI and SMBIOS, each containing a file named data.h. Static data for your system can be added to these data.h files in a structured way to enable you to benefit from a faster boot. For example, your DSDT.aml can be added to /i386/config/ACPI/data.h which will then be compiled inside Revolution. The result being the bootloader no longer needs to search for the file on disk to load at boot time.
Though note: These files don't have to be populated straight away as Revolution can still load your files from the /Extra folder on your boot volume.
Along with the three customisable data.h files, there is also a lose data.h file and settings.h file in /i386/config. The data.h file doesn't need to be touched and should remain where it is as it's part of the source code. Though the settings.h file is your master controller file, containing all the switches that can be turned on or off to direct the compiler code to include for your personal boot file.
The text was been extracted from the home of the project. Read more link
[size=3]RevoBoot v1.0.22 ================ - Make SBUS only injection work. - VERSION info updated. - CHANGES (this file) updated. RevoBoot v1.0.21 ================ - Typo in compiler directive fixed: (old) OVERRIDE_ACPI_METHOD -> (new) OVERRIDE_ACPI_METHODS - VERSION info updated. RevoBoot v1.0.20 ================ - ACPI Method override feature added (add _PTS to your SSDT.aml to get sleep working the easy way). - VERSION info updated. Note: See WiKi pages for additional info. RevoBoot v1.0.19 ================ - Device (SBUS) injection added. - Simplified some of our directives. - VERSION info updated. Warning: Make sure to use our latest settings template! RevoBoot v1.0.18 ================ - Fixed a number of bugs. - Made ssdt_pr_generator.h more robust. - VERSION info updated. Note: Thanks to STLVNUB, blackosx and flAked for reporting bugs (via issues). Keep up the good work! RevoBoot v1.0.17 ================ - Fixed a bug in i386/libsaio/cpu.c (if clause that failed to work). - Fixed newly introduced regressions in ssdt_pr_generator.h - Core count in ssdt_pr_generator.h is now also scalable (supports different kinds of setups). - VERSION info updated. RevoBoot v1.0.16 ================ - Fixed a problem in ssdt_pr_generator.h - extra/blank turbo P-State. - VERSION info updated. RevoBoot v1.0.15 ================ - Static CPU use fixed a(was bored due to lack of proper testing). - New compiler directive (BOOT_TURBO_BOOST_RATIO) added to settings.h / settings-template.h - Debug output added to ACPI patcher to show the address used as static ACPI address. - Indentation errors fixed in platform.c - VERSION info updated. About the latest [b]ssdt_pr_generator.h[/b] changes: -------------------------------------------- - CPU specs gathering / added by Jeroen. - Turbo range detection implemented. - P-State number limitation implemented. - Single turbo state support implemented. Note: Make sure to set LOAD_EXTRA_ACPI_TABLES in combination with LOAD_DSDT_TABLE_FROM_EXTRA_ACPI and/or LOAD_SSDT_TABLE_FROM_EXTRA_ACPI or your tables in /Extra/ACPI/ won't get loaded! RevoBoot v1.0.14 ================ - Fixed a bug in platform.c wiping data after initialization. RevoBoot v1.0.13 ================ - Fixed compiler warning in platform.c - Fixed a typo in settings.h - use: DEBUG_CPU_TURBO_RATIOS - Fixed a typo in settings-template.h - use: DEBUG_CPU_TURBO_RATIOS RevoBoot v1.0.12 ================ - Automatic generation / injection of of SSDT_PR.aml added. - settings-template simplified (thanks to MC and flAked for mentioning it). - Cleanups of DHP's previous commits. - VERSION info updated. RevoBoot v1.0.11 ================ - Not released / skipped. RevoBoot v1.0.10 ================ - Fixed Sandy Bridge CPU detection error (see 'About This Mac' dialog). - New MacBook Pro 8 series with Sandy Bridge CPU's added. - VERSION info updated. RevoBoot v1.0.09 ================ - Dynamic memory override features changed. - VERSION info updated. - Be aware that the settings template changed for this version! RevoBoot v1.0.08 ================ - Whitespace fix in smbios/mode_data.h - System Profiler -> Memory fix - VERSION info updated. RevoBoot v1.0.07 ================ - Kext path/filename length set to 256 (was 128 and caused a boot error). - Safeguards added (to drivers.c) to trap memory allocation errors. - VERSION info updated. RevoBoot v1.0.06 ================ - Makefile changes. - Sandy Bridge support/fixes: core/thread count and turbo ration added. - Multi Processor table added (optional), - Some small EFI changes. - Comment changes. RevoBoot v1.0.05 ================ - Makefiles cleaned up further. - Made make lion work. - Removed TARGET_OS from settings-template.h (no longer needed). - Fixed two circular includes. RevoBoot v1.0.04 ================ - Makefiles cleaned up. - make target lion added (overrides config/settings.h). - File VERSION added (replacing version/revision). - File CHANGES (this file) added. - File version removed. - File revision removed. RevoBoot v1.0.03 ================ - Race condition in the ACPI patcher fixed. - Typo fixed (by STLVNUB) in disk.c RevoBoot v1.0.02 ================ - Compiler error: ___bzero undefined fixed (exposed by Xcode 4). RevoBoot v1.0.01 ================ - EFI_BOOT_PARTITION_SUPPORT renamed into EFI_SYSTEM_PARTITION_SUPPORT RevoBoot v1.0.00 ================ - Initial commit (plus name change).[/size]
This package is something to help new users get started with RevoBoot.
All you need to know link
[size=3]RevoBuilder V1.0.28 ================== - Add check for user not having a serial number to config.sh. RevoBuilder V1.0.27 ================== - Amend BuildUSB.sh to write the stage 0 loader to more than the 1st partition. Useful for writing to an HDD partition RevoBuilder V1.0.26 ================== - Amended config.h to match latest changes to STATIC_ECDT_TABLE_INJECTION. - Amend BuildUSB.sh to set header of com.apple.Boot.plist to use appropriate string per OS version. RevoBuilder V1.0.25 ================== - Amended config.sh to suit RevoBoot v1.0.22. - Updated RevoBuilder/RevStart/Resources/Chameleon_Files to that from RC5 r1174. Note: boot0 is actually the new boot0md. So it doesn't need the USB partition set to active. RevoBuilder V1.0.24 ================== - Attempt at making the BuildUSB script more complete by detecting the use of the PRE_LINKED_KERNEL_SUPPORT directive in settings.h. If found, include the system caches on the USB, otherwise copy /S*/L*/E* to the USB and then look for FakeSMC.kext to determine whether or not the USB can be booted. If not, then advise the user to manually add their /Extra kexts. RevoBuilder V1.0.23 ================== - Added copying of /System/Library/Caches/com.apple.kext.caches/Startup/ to USB flash drive RevoBuilder V1.0.22 ================== - Fixed a bug in BuildUSB.sh where it would always write the Chameleon stage 1 boot file to rdisk2s1 instead of the correct partition. RevoBuilder V1.0.21 ================== - Change SSDT_DATA / SSDTDATA to SSDT_SATA / SSDTSATA in config.h - Thanks STLVNUB RevoBuilder V1.0.20 ================== - Added error checking to the screen resolution detection code in config.sh. RevoBuilder V1.0.19 ================== - Changed the code in config.sh for detecting the currently used screen resolution. Replaced it with some older code which needs testing to see if it works 100% for everyone. RevoBuilder V1.0.18 ================== - Fixed a bug in the menu where a heading wasn't shown under certain conditions. - Moved the toggle target OS option to the build section in the menu. - Removed the toggle debug mode option from the menu as it wasn't complete and it's better to do it manually when editing the settings.h file. - Removed colour setup from BuildUSB.sh as they're now passed from Revstart script. RevoBuilder V1.0.17 ================== - Some changes to the build a bootable flash drive option. Lots more to do on this yet - I consider this part as a work-in-progress. RevoBuilder V1.0.16 ================== - Added menu option (after Clean) to build a bootable USB flash drive. It has been tested on default settings using SnowLeopard and Lion. It's not all singing all dancing and doesn't support things like a pre-linked kernel yet but here it works. It's only a first draft so there's plenty of room for code improvements etc. RevoBuilder V1.0.15 ================== - Change download.sh to remove the supplied /i386/config/ACPI/data.h and /i386/config/settings.h files after downloading latest RevoBoot source. RevoBuilder V1.0.14 ================== - Revised Config.h to produce settings.h to match latest style used in RevoBoot 1.0.21. - Changed colour of menu options 3 & 4 to green for initial word of the toggled options. - Revised version number. RevoBuilder V1.0.13 ================== - Updated /RevStart/Resources/Tools/ to RevoBoot's latest smbios2struct3 - Updated DoPrivateDataStructs.h with the revised name for smbios2struct3 - Changed occurrences of Revolution to RevoBoot in Config.sh - Revised Config.h to produce settings.h to match latest style in GitHub RevoBuilder V1.0.12 ================== - Changed the config.sh script to reflect changes to RevoBoot 1.0.09 RevoBuilder V1.0.11 ================== - Changed the way the version number is stored. - Tweaked the scripts for the config process. RevoBuilder V1.0.10 ================== - Tweak Welcome heading at the top of the menu. RevoBuilder V1.0.9 ================== - Add code for RevStart menu to pad a space before options (1-9) to help alignment. - Remove erroneous space in config.sh RevoBuilder V1.0.8 ================== - Add function in Revstart script to resize the Terminal Window to keep everything visible (needs more work). - Changed source.sh script to present list of source folders to choose from. RevoBuilder V1.0.7 ================== - Updated config.sh to reflect the changes to settings.h for RevoBoot 1.0.06 - Tweaked menu indent for 'Description' beside REVOBUILDER OPTIONS: RevoBuilder V1.0.6 ================== - Add auto-detection for Git. - Tweaked menu to only show the correct options depending on the environment. - Removed note about needing Git from download.sh. RevoBuilder V1.0.5 ================== - Updated config.sh to no longer add TARGET_OS directive to settings.h as required for RevoBoot v1.0.05. - Updated compilation.sh to use make lion if the user want's to build RevoBoot for 10.7 - Change menu to show built config data in green. RevoBuilder V1.0.4 ================== - Updated config.h to duplicate /config/data-template.h to data.h to now successfully compile RevoBoot v1.0.04. - Change menu so it only shows 'Clean' option is RevoBoot has been compiled. - Change menu to show built config data in green. - Changed version number in Revstart script. evoBuilder V1.0.3 ================== - Updated download.sh script to work with RevoBoot v1.0.04's version numbering. - Changed compilation.sh to wait for user input if compilation fails. - Changed version number in Revstart script. RevoBuilder V1.0.2 ================== - README file changed to point the user to my git wiki. - Added 'RevoBuilder options' sub heading to main menu with 'Help' option which opens my wiki on git. - Changed version number in Revstart script. - Note: The version numbering is not working with RevoGirl's RevoBoot v1.0.04 as the VERSION file is missing from her source. This will be addressed with my next update, once RevoGirl addresses this issue. RevoBuilder V1.0.1 ================== - Changed how RevoBoot version/revision naming is appended to source folder name to suit RevoBoot v1.0.03 - Changed version number in Revstart script. RevoBuilder V1.0 ================== - Initial Version released on 15th March 2011[/size]
How to boost the OS X boot process...
Credits & Useful Links
How to show PCI Cards on System Profiler - using EFI strings
DSDT for Asus P8P67, lightweight ACPI tables + knowledge base (WIP) Work in progress, keep an eye on it!
DSDT for Asus P8P67-M PRO, lightweight ACPI tables
Asus maximus IV Gene-Z Hackintosh