Chameleon Svn Source Tree


1- ErmaC : Rename decompress_lzvn function to lzvn_decode follow Apple source name.
2- bitshoveler : Make some constant arrays static; other minor fixes (acpi_patcher.c)
3- bitshoveler : Make 'buffer' arg to aml_add_buffer 'const char *', was just 'char *' (aml_generator)
4- bitshoveler : Various fixes to problems exposed by Clang static analyzer (picopng.c)
5- ErmaC : Rollback changes for msdos.c (2327) thx to bltz
6- bitshoveler : Remove "-x" option from "ld" command which breaks build under newer Xcode versions (/i386/modules/MakeInc.dir)
7- bitshoveler : Comment out some unused functions by expanding "#if UNUSED" conditional (stringTable.c)
8- bitshoveler : Comment out unused static functions, which cause build to fail in "release" mode (vbe.c)
9- bitshoveler : Fix null pointer handling (nvidia.c)
10- bitshoveler : Only write terminating null char if malloc succeeded (strndup.c)
11- bitshoveler : Fix memory leak (bdmesg.c)
12- ErmaC : (re)enable klibc module
13- ErmaC : Merge Recovery Icons(png) courtesy of blackosx
14- ErmaC : Merge Yosemite patch (ready from June 2014) Thanks all involved in the test and develop;
15Special thanks: Alex J, viv xix, zenith432 from
16Testing and improvements: Pike R. Alpha, ErmaC, Bungo, blackosx, Micky1979, crazybirdy, oldnapalm, janek202, MinusZwei and Andy Vandijck.
18- Pike R. Alpha : dinamic "random-seed" implementation ( )
19- ErmaC : getCPUTick() helper function ( )
20- ErmaC : Add Yosemite Icons detection for chameleon UI
21- blackosx : Add chameleon UI Icons for Yosemite
22- ErmaC : Use macro instead of full checkOSVersion
23- viv xix : Move checkOSVersion into boot header
24- ErmaC : define macro for OS X Versions
25- Slice and Clover Team : Replace "NULL" terminated strings and fit Boot2 Sectors size
26- ErmaC : Update bootargs
27- crazybirdy : Fit length for "Loading Darwin"
28- meklort : Update align directives to 2^(old_align)
29- Ermac : Bump svn to 2.3
30- ErmaC : Update efi Header
31- cparm : buffer BPS
32- cparm : devprop_generate_string optimized by cparm
33- ErmaC : Update CPUID and change conditional logic.
34- ErmaC : Typo & ID names
35- meklort : Make compile on gcc w/ errors enabled.
36- bitshoveler : Remove the '-x' option from the offending 'ld' command
37- Jief : Makefile dependency missing for boot0 and boot1h
38- ErmaC : Temp disable klibc module
39- meklort : Silence output.
40- meklort : Add --no-print-directory.
41- meklort : Replace \t with tab.
42- ErmaC : Update Chameleon.xcodeproj
43- ErmaC : Merge LZVN decompression routine by MinusZwei (C Conversion) based on works from Pike R. Alpha and AnV Software (Andy Vandijck).
44- Bungo : Loading custom ECDT.aml, Darwin version string printing, clean boot-args, change firmware rev. to real Mac (0x0001000a), added kernel-compatibility, boot-file, boot-args, machine-signature, random-seed DT properties & some minor changes.
45- ErmaC : Merge tja's patch,5951.0.html
46- bitshoveler : Optimized basic string functions strlen, strncmp, strncat, strcat
47- ErmaC : Replaced sprintf with snprintf in spd.c.
48- bitshoveler : Fixed inadvertent text buffer overflow in getDDRSerial
49- bitshoveler : optimize get_hda_controller_name()
50- Bungo : One of the changes as of rev2284 is boot option SystemId has now been deprecated. Instead use key SMsystemuuid in smbios.plist.
51- bitshoveler : Defend against buffer overruns
52- bitshoveler : Fix memory leak, defend against buffer overruns, add a check for malloc() failure
53- bitshoveler : getMemoryInfoString: defend against buffer overruns, change O(n^2) algorithm to O(n)
54- bitshoveler : Add closedir() to match opendir() call; relocate a malloc() call to fix a memory leak on error; better defense against buffer overruns
55- bitshoveler : Improve robustness against buffer overruns
56- bitshoveler : Add closedir() for every opendir() call, make more robust against buffer overruns
57- bitshoveler : Fix memory leak
58- bitshoveler : Fix cppcheck detected memory leak and error, make more robust against buffer overrun
59- bitshoveler : get_pci_dev_path: get rid of tmp buffer, use snprintf, improved O(n) algorithm instead of O(n^2) (whoopee); dump_pci_dt: hack fix for printf format string vs. args mismatch
60- bitshoveler : Fix memory leak; use snprintf instead of sprintf to make more robust
61- bitshoveler : Fix badly formed comment inside #ifdef
62- bitshoveler : setup_gma_devprop: fix memory leak
63- bitshoveler : setup_nhm: fix cppcheck error
64- bitshoveler : Correct cppcheck detected errors, make more robust against errors
65- bitshoveler : AllocateMemoryRange: fix cppcheck detected memory leak
66- bitshoveler : search_and_get_acpi_fd: fix pointer-to-temporary return problem; use snprintf instead of sprintf to prevent buffer overflows
67- bitshoveler : sym_expand_string_value(): fix cppcheck errors; more to be done here
68- bitshoveler : append_string(): fix cppcheck errors
69- bitshoveler : conf_write_autoconf(): fix cppcheck errors
70- bitshoveler : Fix memory leak for new_layout in main()
71- bitshoveler : Implement snprintf(); implement missing zero-fill in strncpy()
72- bitshoveler : Use original *BSD source for strlcpy()
73- ErmaC: Port from Enoch the support for IVY Bridge and Haswell Intel Graphics cards.
74- 2255: ErmaC add Skip flag key for Intel/nVidia/ATi from Enoch
75- 2252: revert define processors name to match with xnu kernel name
76- 2252: Merge from Enoch the Geoff Seeley patch
77- 2251: bdmesg can show Chameleon and Clover boot logs
78- 2248: Infos about lack for 32/64 bit (Credits to Pike R. Alpha)
79- 2248: Fix issue booting x86 after rev.2175 (Credits to Bronxteck, Alex Burma and Leon).
80- 2245: ErmaC : Add new CPU Model IDs
81- 2245: Add boot support to 10.9 (thx old napalm)
82- 2245: ErmaC : Update gui Icons OS detection
83- 2245: Update default theme Icon set (thx BlackOsx)
84- 2243: Add Linux GPT Partition Label
85- 2234: Fix menuBVR initialization problem
86- Implement ErmaC's HDAEnabler.dylib module
87- Fix Bug in the loop that look for an ATI card. Credits to Jief Luce
88- Fix extension without kPropOSBundleRequired property weren't loaded. Credits to Jief Luce
89- Fix Revision mismatch
90- ErmaC : Improve PCI info. Interface program and device revision.
91- Fix Possible bug in i386/libsaio/device_inject.c devprop_add_device()
92- Fix warnings/errors from new llvm/clang (xcode 4.6)
93- Fix base64 decode, fixes Issue
94- meklort : FileNVRAM module import
95- cparm : Added a workaroud for Xcode 4.4.x compatibility 504B030414030100630004731141000000007D0000008B00000003000B0062696E01990700020041450308001AED80DA50DF6080B0390FE095B3BC129E1FC27C104EC97897EF27CD1175766CB18C66FF42EFB7023911BDFD5E4BC9AEEC32FF3473963F70B255581D7B74DE9F
96- cparm : Fixed a buffer overflow in the plist loader
97- cparm : Ported the nvidia plist helper (less time to spend on the device id more time to code :-) )
98- cparm : Added a Sata module, known as YellowIconFixer in my branch, useful to fix yellow icon issue (can also fix an issue with the apple's dvd player application in moutain lion)
99 , for now not added in the pkg script !!!
101- cparm : Ported the OS detection to the trunk, updated the default theme to v 1.1 (credit to blackosx)
103- Added AtiPorts option to GraphicsEnabler, so users can override the default number of ports. It proved
104 to be useful when used to limit the number of ports that a framebuffer registers, which seems to be a
105 requirement on laptops that can only use 2 ports at the same time.
106 Thanks to Akbar for testing and AniV also for the tip:
108- Added NVidia ION AHCI controllers dev id to AHCIPortInjector kext.
109 Forgot to mention source on the commit:,1170.0.html
110- Renamed to org.chameleon.Boot.plist.
111- Added "ShowInfo" key (enabled by default for now), which enables/disables the display of
112 partition and resolution related info, on the Gui.
113 This info may not play well with some custom themes.
114- Modules can now be selected between not compiled, compiled into chameleon, or compiled as modules.
115- New makefile + configuration system.
116- Added the BOOT2_MAX_LENGTH constant in memory.h. This is now used in mboot.c to relocate the correct
117 number of bytes for boot2.
118- Added new ATi/AMD Graphics Card Enabler.
119- Added new SMBIOS patcher.
120Includes changes to "manufacter" keys, from SM*manufacter to SM*manufacturer.
121- Added module system.
122- Added automatic P-States & C-States generation for native power management.
123- Added Booter Log Dump Tool
124- Added Booter message Logging (":/boot-log" ioreg property)
125- Removed -x32 option, use arch=i386 instead
126- Added automatic SMBusspeed detection for lga1156 core i5/7 cpus
127- Added new iMac11,1 sbios default model for lga1156 core i5/17 mobos
128- md0 code. Notified xnu when an md ramdisk is specified
129- Added rollover image support for selected device icons.
130 Use device_<type>_o.png in theme folder. Credits goes to Blackosx.
131- Revisited theme resource embedding. Using the device_<type> icons are optional with
132 the exception of device_generic.
133- Optimized memory detection speed
134- Added displaying source device and partition number for file read operations.
135- Increased boot2's maximum size from 383.5k to 447.5k.
136 Updated stage 1 loaders for handling the new size limit.
137- Added alternate format for setting the default partition. The user can specify the selected
138 volume UUID for the "Default Partition" key.
139- Implemented SPD memory automatic detection and injection,seems to work really great ...
140- Factorized code to prepare a dynamic memory detection algorithm ...
141- Optimized smbios table address search
142- Optimized cursor spinout in textmode if no verbose mode is set
143- Added ram table structures definitions
144- Added getSmbios() a param permitting to select between orig and new smbios entries
145- Changed "Default Partition" behavior to accept only native system volumes or foreign partitions.
146- Added NVIDIA new NVCAP customization support and support for ION gfx cards from aserebln
147- Added ATI new framebuffers support and new cards from PCEFI10.6
148- improved ACPI file search algo by implementing a cache.
149- Nvidia injection fix
150- pciroot would not always return correct UID in auto detection mode
151- Fixed the hibernation problem in boot2/resume.c
152- Fixed all new booter versions with SystemType would override the facp value even if correct,
153 now keeps the facp value if correct and no override has been done, implemented a best effort algo.
154 for maximizing the chance to get the most correct value before we decide to use a fixed value (1=desktop)
155- Fixed display cosmetics of UUID, now a convert.c file contains all
156 conversions api, to be completed by function that we should reuse.
158- Fixed SystemType would be always forced to a value, now optionally changed
159 only if overridden
160- Kept SystemID as the only option to change manually the system-id
161 For theses reasons, SystemId from bootConfig and SMUUID from smbiosConfig are now DEPRECATED.
163- Integrated JrCs fadt patch (kept for RC5 the existing DSDT.aml retry algo that disappeared in his patch,
164 should be more discussed for RC6)
165- Added JrCs modified convention name change to coding_standards
166- Now malloc (ex. MALLOC in Asere patch) is renamed malloc(size) and is an alias
167 to safe_malloc(size, file, line) with _FILE_ and _LINE_ preprocessor definitions
168- Added a new 'Rename Partition Feature', now permitting to rename partition
169 like 'System reserved' to a more meaningful name
170- Added SystemID option permitting to change the System UUID to a fixed value.
171- Added the PciRoot auto detection feature imported from pcefi10.5
172- Added automatic "system-id" injection from dmi bios, also compatible
173 with SystemID boot option and former SMUUID from smbios,plist
174- Added "system-type' automatic injection (1=Desktop) plus override possibility
175 with the new system-type option in bootConfig
176- Added SMserial and SMproductname new options for smbios.plist
177- Merged with asere patch, while keeping my fake_efi.c changes, and adding a new
178 stringForKey() API, also changed the DT__XXXX() set of functions
179 to handle const char * values instead of char*.

Archive Download this file

Revision: 2477