Chameleon

Chameleon Svn Source Tree

Root/branches/cparm/CHANGES

1- Security fixes
2- Implemented random uuid
3- device_inject is now embedded into the modules that need it, and not in the core anymore
4
5- Security fixes
6- Fixed few bugs in AcpiCodec
7- Fixes some bugs related to the auto-installer
8
9- Security fixes
10- Using of optimized version for bcopy, bzero, strcmp, strcpy, strncpy, strlcat, strlcpy, strlen, strncmp, memset and memcmp
11- Replaced strcmp (deprecated and unsecure) by strncmp as far as possible
12- Decided to keep ld_classic to keep the compatibility with the apple's compiler from snow leopard (xcode 3.x) to Mountain lion (xcode 4.5) (in fact this has not changed since the last commit ;-) )
13
14- Security fixes
15
16- Few security fixes
17- Fixed a serious bug in picopng
18- Fixed a bug in gui.c, related to the images loading
19- Fixed a bug with acpi, where no acpi table may be configured
20
21- Security fixes
22- Updated smbus(spd.c) and radeon(ati.c) card list (taken from the last cosmo1t's update)
23
24- Added two boot options for High resolution display and reboot on kernel panic
25
26- Added fake_crt.c to fix a linker issue ... but it still dont work.
27- Added minor changes to makeinc.dir
28
29- Security fixes
30- Added beta support for Xcode 4.4
31
32- Added memory info to the nvidia plist structure, so now one can add several cards to the plist and set a customized name and memory info for each cards
33- Implemented a method to inject new graphics cards from a plist, no need to hardcode device ids anymore !! (for now, only nvidia cards are supported, see doc/ModuleHelp.txt for usage)
34- Moved the smbios detection code to the freebsd one
35
36- Fixed a bug in the bundle dependency dispatcher
37
38- security fixes in printf.c
39- Fixed a weird bug in boot arguments that could prevent 10.8 to boot
40
41- security, stability, bugs fixes
42- moved __doprnt to the xnu version
43
44- security and stability fixes
45- Fixed a bug where prf may return a wrong string len (for ex : in the previous versions newStringWithformat("%02x%02x%02x%02x%02x%02x",101,117,104,113,103,100) may not return the entire string)
46- Fixed a bug in xml.c
47- Fixed a bug in device_inject.c (inspired from the dmazar's patch)
48
49
50- security and stability fixes
51- Removed useless codes in efistring modules
52- Fixed bugs related to device_inject.c
53- Fixed bugs related to device_tree.c
54- Fixed bugs related to hfs.c
55- Fixed a bug in the booterlog introduced in the previous version
56- Fixed a bug in randomTheme intoduced in the previous version
57- Added LoginToLion Cub Devices (credit to Enzo)
58
59
60- security and stability fixes
61- Improved Xcode4.3+ and clang compatibility
62- Fixed a bug in device_inject.c
63- Updated uthash, utarrey, etc ... to v1.9.6
64- Replaced arc4random by the freebsd version (found in darwin's libc)
65(also Removed others random generators since the pseudo-random generator now work perfectly )
66- Implemented gettimeofday taken from libpayload
67- finaly back to safe_malloc
68- Sync'd the cpu legacy method to the trunk
69
70- Implemented the Runtime Bundles Modules
71- Updated nvidia and ati device id
72- Small security fixes
73
74- Stability fixes
75- Added mountain lion auto_installer compatibility
76- Changed md5c.c to the Xnu's md5.c
77
78- Added a dirty workaround to selectBootVolume (still need more investigations to find out what happening exactly during the bvchain construction, and how the h... the loop can stop with gcc)
79
80- Improved Xcode4.3+ support
81
82- Sync'd LoginToLion with the last Enzo's update (want more about LoginToLion ? please follow or participate to this thread : http://forum.voodooprojects.org/index.php/topic,2125.0.html)
83- fixed some bugs
84- Added an option to change the acpi detection method (only for acpi 64 users)
85- Updated amlsgn with more cocoa
86
87- Many security and bug fixes and improvements
88- Added a workaround for some machines that was unable to enter to the startup options during the countdown
89- Implemented a new environment platform
90- Added mountain lion support
91- Improved Xcode4 support (GUI still work only with Xcode3)
92
93- Added mountain lion icons for the default themes and LogintoLion (credit to Blackosx)
94- Added cpu_intel_amd.c (not by default, you need to edit the makefile in the libsaio directory to compile it)
95- Implemented a stack_protector (seems to work)
96- Sync'd libsa with Xnu
97- Removed lcc_kext dependency from the make file
98- Fixed some bugs
99
100- Updated the default theme to v 1.1 (credit to blackosx)
101- Updated LogintoLion with he haiku device logo (credit to blackosx)
102- Update for the gui
103- Chameleon can now boot the Lion Auto-Installer partition (additionally, on a GPT disk this enable the option "Localize my Mac" of iCloud)
104- Added a first version of amlsgn (NOTE: This tool can can sign an aml file for your machine (with the UUID) or for your machine model, this can be useful
105 with multiple machines w/o an identical model, combined with acpicodec and the option "LoadSignedAmlOnly", you can make sure that Chameleon will load the
106 good aml files for your machine (even if you have for example about 50 dsdt files named differently in your Acpi directory and each one for a different machine) )
107- Applied Guerrero's patch on gui.c (http://forge.voodooprojects.org/p/chameleon/issues/view/attachment/152/gui.diff)
108- Added a theme compatible with the OS detection/Volume feature (credit to Enzo for LoginToLion, see http://forum.voodooprojects.org/index.php?topic=2125.0 for more.)
109- Fixed a mistake with the smbios.plist loading process
110- Reworked the OS detection/Volume (NOTE: now embedded into the core and executed much earlier )
111
112
113- Added Haiku support (credit to scorpius)
114- Added EXFAT (FAT64) support (credit to dmazar)
115- Added JrCs fixes (see trunk v1716 v1719)
116- Gui can now detect the darwin version of each volumes
117- Applied some underthehood fixes and enhancements
118
119- Added an option to the check Oem revision of aml files, can be useful with multiple machines (a command line tool able to patch the aml files will be available soon)
120- Improved smbios support for some Intel Xeon models
121- BETA : Sync'd ati engine with the trunk
122
123- Small security fixes
124- Added a mechanism to strip the madt table
125- Ported the serial number randomizer to smbiosgetters,
126 Warning: smbiosgetters (and also the Gui module) still don't work when built with Xcode4.
127
128- Implemented a serial number randomizer in smbiospatcher
129(can be useful for icloud registration problems, especially when the serial number is already used by another machine,
130
131DISCLAIMER: Please read the iCloud License (http://www.apple.com/legal/icloud/ww/) carefully before using this option.
132By using this option, you are agreeing to be bound by
133the terms of the iCloud License (http://www.apple.com/legal/icloud/ww/). If you do not or cannot agree to the terms
134of the icloud License (http://www.apple.com/legal/icloud/ww/), please do not use this option.
135
136THE CHAMELEON ( OR VOODOO ) TEAM CAN NOT BE HELD RESPONSIBLE FOR ANY ABUSE.)
137
138- Chameleon (or at least this branch) can now boot OSX on Parallels Desktop 7, with full acpi and smbios support
139 (note: you will need to embed at least acpicodec and smbiosgetters since virtual machines don't like our module system),
140 see this vid ;-) : http://www.youtube.com/watch?v=kvSgwIE6D4o&feature=channel_video_title
141- Added a mechanism to boot the real Lion installer partition (with baseSystem.dmg as root device), you will just need to edit the kernelcache
142 for you platform, step 2 of the installation process (booting from the kernelcache in the "Mac OS X Install Data" folder) is still in progress
143
144- Added a simple mechanism to embed a module into the core of the bootloader (useful for virtual machines
145 or for modules not yet compatible with xcode4), see internal_modules.h for more info.
146- Added JrCs's Keylayout support in Keymapper
147- Fixed an issue in AcpiCodec where the highest cpu frequency may not be added in the pstate package on some configurations
148- Improved detection of nb of core(s) and thread(s) for AMD processors
149- Updated keymapper ...
150- Applied scorpius's patch (to get an unstretched boot screen for nVidia cards on DVI) in boot0.s , disabled by default,
151 see - http://forum.voodooprojects.org/index.php/topic,2158.msg10345/boardseen.html#new - for more info.
152- Applied Vladimir Zidar's hibernate patch on hibernateEnabler.
153- Applied "Intel HD Graphics 3000" patch to gma.c (credit: ???) ,
154 found at - http://www.darwinx86.net/forum/61-section-francaise-/1880-espace-de-discussion-anval?limit=10&start=60#6247 -
155- Added AMD support (most of the code is derived from the trunk, MUST BE ENABLED BY HAND IN CPU.C) see - http://forge.voodooprojects.org/p/chameleon/issues/163/ -
156- Improved Core Ix support in AcpiCodec
157- Improved c-states support in AcpiCodec
158
159- Sync'd nvidia.c and gma.c (see GraphicEnabler module) to the trunk
160- Improved compatibility with xcode4 (afaik only the modules gui and smbiosgetters will not work with xcode4, even if they are built without any errors)
161- Applied JrCs's path for more protection against buffer overflow in some case (trunk v1449)
162- Added a mechanism to detect extra mkexts/kexts before loading the kernelCache
163- Moved smp code to Erich Boleyn's smp-imps (not fully implemented yet)
164- Added the UseKernelCache option only for compatibility with the trunk ("Yes" have no effect, since it's the default),
165 the Flag "-F" which do the same things is still valid
166- Re-worked SSDT generation, and merged with the Bits's code
167- Removed aml_generator from AcpiCodec, now use acpicode.c to generate aml file
168- Added YellowIconFixer module
169- Merged fsb detection with Bits's code in cpu.c (slightly faster)
170- Fixed a bug related to ACPI in AcpiCodec (thanck to StephN666 for testing)
171- Fixed a bug related to ACPI and the machine with a rsd table revision > 0 (acpi_tools.c) (thanck to StephN666 for testing)
172
173- Applied Andy Vandijck's Nehalem (i5/i9) spoof to kernelpatcher
174- Fixed an issue with kernelPatcher, it seems that kernelPatcher is unable to patch the kernelCache
175- Applied some fixes from the trunk
176- Applied many under the hood fixes
177- Added Andy Vandijck's Server spoof
178- Added a Patch from Andy Vandijck in SMBiosPatcher and SMBiosGetters
179- Added a Patch from Netkas in GraphicEnabler (ati.c)
180- Fixed an issue where the GUI module couldn't find the themes directory
181- Fixed an issue where the GUI module failed to display the GUI
182- Added AcpiCodec module
183- Re-wrote ACPI code in fake_efi.c
184- Fixed a bug with AcpiPatcher when built with xcode4
185- Optimized AcpiPatcher code
186- Minor change of SMBIOS code in fake_efi.c
187- Applied some changes to the CPU detection
188- Fixed Pict-FailedBoot allocation
189- Board-id fix is now handled by the smbios modules
190
191- Added boot-args in the device tree
192- Added BootCLUT and Pict-FailedBoot
193- Added Board-id spoof
194- Fixed kernelcache loading with 10.5, 10.6 and 10.7
195- Added Lion Compatibility
196
197- Re-enabled Ignore Boot File Flag option , now "-B"
198- Fixed a bug in get_PM_Profile(), where the function return the profile 0 = 'Unspecified' when the facp is incorrect or not found, and so, override the
199 PM type set by the cpu features
200- Added new drop acpi table mechanism, now it's really able to drop any tables
201- BootHelp is not anymore embed by default in the bootloader core, if you need the help at boot time, just install your BootHelp.txt in /Extra/ (for now GUI module still embed it)
202- Fixed the HelloWorld module (broken since i have increased module hook arguments number)
203
204- "-F" now mean do not use prelinked kernel
205- Fixed embedtheme resolution, random theme chooser now also include embedtheme in the list (if the GUI is compiled with the embedtheme option),
206 also fixed a potential memory leak in randomTheme()
207- Fixed a bug in modules.c introduced in the previous versions, the booloader should now load correctly
208 with or without modules
209- Boot helper support (raid) is now an option (992 bytes saved)
210- Fixed an issue where the prelinked kernel can't be found (the bootloader should now be fully compatible with the kextcache command line tool).
211 (Also merged both adler32 function previously located in drivers.c and boot.c into one (adler32) located in boot.c)
212- returned to malloc by default, instead of safe_malloc, safe_malloc(+1280 bytes) is now an option (as in revolution 616+)
213- APM support is now optional (704 bytes saved)
214- Fixed add_symbol function
215- Increased module hook arguments number to 6
216- Added Kabyl's pci subsystem id patch
217- Added Kabyl's smbios implemention (SMBiosGetters, see Kabyl's branch.) as a module (legacy smbios implementation (SMBiosPatcher) have been also rewritten as a module)
218- Added valv's experimental amd support in CPUFreq module (untested)
219- Added Slice's smbios_patcher fix
220- Increased Booter Log size according to the chameleon trunck (thanck to Azimutz)
221
222- Added BSD (OpenBSD and FreeBSD) support (Credits to: nawcom, valv)
223- moved hibernation and ramdisk into modules
224- Added a keyboard mapper module
225- Added CPUFreq module (Credits to: valv, cparm)
226- Added a random theme chooser in the GUI module
227- Added Slice's mobile detection fix
228- Added mozodojo's coreI fix in acpi patcher
229- Applied many fixes and optimizations to the core
230- Moved to meklort's core architecture
231- Added Andy Vandijck's Full ACPI tables override and ACPI V1 to V4 conversion patch
232-------------------------------------------------------------------------------------------------------------------------------------------------
233
234- Added Booter Log Dump Tool
235- Added Booter message Logging (":/boot-log" ioreg property)
236- Removed obsolete -f option, use -x instead
237- Removed -x32 option, use arch=i386 instead
238- Added automatic SMBusspeed detection for lga1156 core i5/7 cpus
239- Added new iMac11,1 sbios default model for lga1156 core i5/17 mobos
240- md0 code. Notified xnu when an md ramdisk is specified
241- Added rollover image support for selected device icons.
242 Use device_<type>_o.png in theme folder. Credits goes to Blackosx.
243- Revisited theme resource embedding. Using the device_<type> icons are optional with
244 the exception of device_generic.
245- Optimized memory detection speed
246- Added displaying source device and partition number for file read operations.
247- Increased boot2's maximum size from 383.5k to 447.5k.
248 Updated stage 1 loaders for handling the new size limit.
249- Added alternate format for setting the default partition. The user can specify the selected
250 volume UUID for the "Default Partition" key.
251- Implemented SPD memory automatic detection and injection,seems to work really great ...
252- Factorized code to prepare a dynamic memory detection algorithm ...
253- Optimized smbios table address search
254- Optimized cursor spinout in textmode if no verbose mode is set
255- Added ram table structures definitions
256- Added getSmbios() a param permitting to select between orig and new smbios entries
257- Changed "Default Partition" behaviour to accept only native system volumes or foreign partitions.
258- Added NVIDIA new NVCAP customization support and support for ION gfx cards from aserebln
259- Added ATI new framebuffers support and new cards from PCEFI10.6
260- improved ACPI file search algo by implementing a cache.
261- Nvidia injection fix
262- pciroot would not always return correct uuid in autodection mode
263- Fixed the hibernation problem in boot2/resume.c
264- Fixed all new booter versions with SystemType would override the facp value even if correct,
265 now keeps the facp value if correct and no override has been done, implemented a best effort algo.
266 for maximizing the chance to get the most correct value before we decide to use a fixed value (1=desktop)
267- Fixed display cosmetics of UUID, now a convert.c file contains all
268 conversions api, to be completed by function that we should reuse.
269
270- Fixed SystemType would be always forced to a value, now optionally changed
271 only if ovveriden
272- Kept SystemID as the only option to change manually the system-id
273 For theses reasons, SystemId from bootConfig and SMUUID from smbiosConfig aer now DEPRECATED.
274
275- Integrated JrCs fadt patch (kept for RC5 the existing DSDT.aml retry algo that disapeared in his patch, should be more discussed for RC6)
276- Added JrCs modified convention name change to coding_standards
277- Now malloc (ex. MALLOC in Asere patch) is renamed malloc(size) and is an alias
278 to safe_malloc(size, file, line) with _FILE_ and _LINE_ prerocessor definitions
279- Added a new 'Rename Partition Feature', now permitting to rename partition
280 like 'System reserved' to a more meaningful name
281- Added SystemID option permitting to change the System UUID to a fixed value.
282- Added the PciRoot autodetection feature imported from pcefi10.5
283- Added automatic "system-id" injection from dmi bios, also compatible
284 with SystemID boot option and former SMUUID from smbios,plist
285- Added "system-type' automatic injection (1=Desktop) plus override possibility
286 with the new system-type option in bootConfig
287- Added SMserial and SMproductname new options for smbios.plist
288- Merged with asere patch, while keeping my fake_efi.c changes, and adding a new
289 stringForKey() API, also changed the DT__XXXX() set of functions
290 to handle const char * values instead of char*.
291

Archive Download this file

Revision: 2118