Chameleon

Chameleon Svn Source Tree

Root/branches/ErmaC/Enoch/CHANGES

1- Zenith432 : HDA bus scans and codecs enumeration.
2- Pike R. Alpha : Add support for (LZVN) grey logo.
3- Slice : Added NvidiaSingle
4- cparm : Rock - Paper - Scissors algo
5- Bronya : Improve support for AMD CPU.
6- Bungo : Added "machine-signature"
7- Zenith432 : Protect timing code in scan_cpu() from interrupts, use bios for sleep()
8- Zenith432 : Fix setupChosenNode, Tweak asm.s
9- Zenith432 : Change identity snprintf to strncpy + misc printf issues
10- cparm : Implement strlcat()
11- Zenith432 : Sanitize 16-bit assembly
12- Zenith432 : Fix bug in malloc_init, use bios for enableA20()
13- meklort : Slightly improve decive selection name - add os version.
14- Zenith432 : Interrupt Management
15- Bungo : Added ability to auto-select last booted partition as the boot volume.
16- Bungo : Added MacOSVerCurrent and MacOSVer2Int function to use instead of macros.
17- Bungo : Fixed bug in gDarwinBuildVerStr extracting.
18- Bungo : Fixed fixedUUID function (convert.c smbios.c).
19- Bungo : Added Logging start time.
20- Bungo : Added getRTCdatetime() Int 1Ah function 02h - RTC service.
21- Zenith432 : Use caching with ExFat filesystem.
22- Zenith432 : Add turning off USB legacy for XHCI (XHCILegacyOff).
23- ErmaC : C6 & C7 States credits to Clover Team.
24- ErmaC : define recursive cpu series for BrandString.
25- Zenith432 : saio_types.h, biosfn.c - minor typo in bios-defined data structure that isn't actually used.
26fake_efi.c - eliminate redundant scan of bt(0,0) in setupSmbiosConfigFile. loadConfigFile already does a fall-back scan of bt(0,0), so another scan isn't needed.
27sys.c - While scanning a volume, getOSVersion looks for 5 files and switches back-n-forth between hd(X,Y)/....SystemVersion.plist on the newly scanned volume and bt(0,0)/hd(X,Y)/...SystemVersion.plist - which is an invalid path - should always return an error.
28- Zenith432 : Change to disk.c - Prevent getOSVersion from looking for SystemVersion.plist on FAT32 or exFAT file systems - since those filesystems never serve as system volumes.
29UFS may serve as system volume, but there's no driver to read from it.
30Change to sys.c - Eliminate a dubious recursion in diskScanBootVolumes(). It recognises the filesystem, then calls getOSVersion, which attempts to open 5 files in order to find SystemVersion - then when parsing the device name - calls diskScanBootVolumes() - as a form of on-demand scanning. This doesn't result in an infinite recursion - because the volume is already in the map. However, this auto-scan is only useful if user enters an explicit hd(X,Y) device-spec that has never been scanned before - an unlikely occurrence.
31- Zenith432 : Patch from Issue 388, init_module_system() in modules.c dereferences NULL pointer
32- Zenith432 : Full implementation of exfat support for Chameleon's boot2 stage.
33- Micky1979 : Incorporated force umount option -u (boot1-install.c)
34- Zenith432 : Replace boot0 with boot0xg. Now boot0xg has all features of previous boot0. ( http://www.insanelymac.com/forum/topic/302938-exfat-volume-boot-record-for-chameleon )
35- ErmaC : Add UseIntelHDMI for hda-gfx = onboard-1 or 2 that vale will be injected into the GFX0 and HDEF devices. credits Clover Team
36- ErmaC : Improve gma detection for HD4600
37- cparm : Merge (security, stability, bugs fixes) improvements.
38- Zenith432 : Completed patch for ExFAT support ( http://www.insanelymac.com/forum/topic/302938-exfat-volume-boot-record-for-chameleon )
39- Zenith432 : add EXFAT boot support by Zenith432
40- zenith432 : Merge patch from issue 386 (boot2 does not know how to read files from FAT partitions on GPT)
41- meklort : Update laoder.h to latest, declare gMI global, Load modules passed in via the multiboot header / first bootloader,
42Fix mboot.h include, Add ?log command to print out bdmesg without needing Wait=y, Add slightly more debugging for modules.
43- ErmaC : Rename CPU_MODEL_xxx into CPUID_MODEL_xxx follow Apple source name
44- ErmaC : Rename decompress_lzvn function to lzvn_decode follow Apple source name.
45- ErmaC : Add more chameleon UI stuff (default) made by blackosx
46- ErmaC : Split out states generator from acpi_patcher (Credits to Clover Teams)
47- ErmaC : Merged proposed patch by N3 (Boot from vanilla Recovery HD, Installation DMG)
48- bitshoveler : Fix "sed: RE error: illegal byte sequence", which turns out to be from feeding sed a TIFF file (buildpkg.sh)
49- bitshoveler : Remove "-x" option from "ld" command which breaks build under newer Xcode versions (MakeInc.dir)
50- bitshoveler : CacheInit(), CacheRead() prototypes: use u_int32_t instead of long where appropriate (saio_internal.h)
51- bitshoveler : Improved defensiveness against malloc failure (disk.c)
52- bitshoveler : Use u_int32_t instead of long where appropriate (cache.c)
53- bitshoveler : Make some constant arrays static; other minor fixes (acpi_patcher.c)
54- bitshoveler : Make 'buffer' arg to aml_add_buffer 'const char *', was just 'char *' (aml_generator)
55- bitshoveler : Various fixes to problems exposed by Clang static analyzer (picopng.c)
56- ErmaC : Rollback changes for msdos.c (2327) thx to bltz
57- bitshoveler : Remove "-x" option from "ld" command which breaks build under newer Xcode versions (/i386/modules/MakeInc.dir)
58- bitshoveler : Comment out some unused functions by expanding "#if UNUSED" conditional (stringTable.c)
59- bitshoveler : Comment out unused static functions, which cause build to fail in "release" mode (vbe.c)
60- bitshoveler : Fix null pointer handling (nvidia.c)
61- bitshoveler : Only write terminating null char if malloc succeeded (strndup.c)
62- bitshoveler : Fix memory leak (bdmesg.c)
63- ErmaC : (re)enable klibc module
64- ErmaC : Merge Recovery Icons(png) courtesy of blackosx
65- ErmaC : Merge Yosemite patch (ready from June 2014) Thanks all involved in the test and develop;
66Special thanks: Alex J, viv xix, zenith432 from http://forge.voodooprojects.org/p/chameleon/issues/375/
67Testing and improvements: Pike R. Alpha, ErmaC, Bungo, blackosx, Micky1979, crazybirdy, oldnapalm, janek202, MinusZwei and Andy Vandijck.
68
69- Pike R. Alpha : dynamic "random-seed" implementation ( http://www.insanelymac.com/forum/topic/301350-lets-make-random-seed-really-random/ )
70- ErmaC : getCPUTick() helper function ( http://www.insanelymac.com/forum/topic/301350-lets-make-random-seed-really-random/ )
71- ErmaC : Add Yosemite Icons detection for chameleon UI
72- blackosx : Add chameleon UI Icons for Yosemite
73- ErmaC : Use macro instead of full checkOSVersion
74- viv xix : Move checkOSVersion into boot header
75- ErmaC : define macro for OS X Versions
76- Slice and Clover Team : Replace "NULL" terminated strings and fit Boot2 Sectors size
77- ErmaC : Update bootargs
78- crazybirdy : Fit length for "Loading Darwin"
79- meklort : Update align directives to 2^(old_align)
80- Ermac : Bump svn to 2.3
81- ErmaC : Update efi Header
82- cparm : buffer BPS
83- cparm : devprop_generate_string optimized by cparm
84- ErmaC : Update CPUID and change conditional logic.
85- ErmaC : Typo & ID names
86- meklort : Make compile on gcc w/ errors enabled.
87- bitshoveler : Remove the '-x' option from the offending 'ld' command
88- Jief : Makefile dependency missing for boot0 and boot1h
89- ErmaC : Temp disable klibc module
90- meklort : Silence output.
91- meklort : Add --no-print-directory.
92- meklort : Replace \t with tab.
93- ErmaC : Update Chameleon.xcodeproj
94- ErmaC : Merge LZVN decompression routine by MinusZwei (C Conversion) based on works from Pike R. Alpha and AnV Software (Andy Vandijck).
95- 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.
96- ErmaC : Merge tja's patch http://forum.voodooprojects.org/index.php/topic,5951.0.html
97- bitshoveler : Optimized basic string functions strlen, strncmp, strncat, strcat
98- ErmaC : Replaced sprintf with snprintf in spd.c.
99- bitshoveler : Fixed inadvertent text buffer overflow in getDDRSerial
100- bitshoveler : optimize get_hda_controller_name()
101- Bungo : One of the changes as of rev2284 is boot option SystemId has now been deprecated. Instead use key SMsystemuuid in smbios.plist.
102- bitshoveler : Defend against buffer overruns
103- bitshoveler : Fix memory leak, defend against buffer overruns, add a check for malloc() failure
104- bitshoveler : getMemoryInfoString: defend against buffer overruns, change O(n^2) algorithm to O(n)
105- bitshoveler : Add closedir() to match opendir() call; relocate a malloc() call to fix a memory leak on error; better defense against buffer overruns
106- bitshoveler : Improve robustness against buffer overruns
107- bitshoveler : Add closedir() for every opendir() call, make more robust against buffer overruns
108- bitshoveler : Fix memory leak
109- bitshoveler : Fix cppcheck detected memory leak and error, make more robust against buffer overrun
110- 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
111- bitshoveler : Fix memory leak; use snprintf instead of sprintf to make more robust
112- bitshoveler : Fix badly formed comment inside #ifdef
113- bitshoveler : setup_gma_devprop: fix memory leak
114- bitshoveler : setup_nhm: fix cppcheck error
115- bitshoveler : Correct cppcheck detected errors, make more robust against errors
116- bitshoveler : AllocateMemoryRange: fix cppcheck detected memory leak
117- bitshoveler : search_and_get_acpi_fd: fix pointer-to-temporary return problem; use snprintf instead of sprintf to prevent buffer overflows
118- bitshoveler : sym_expand_string_value(): fix cppcheck errors; more to be done here
119- bitshoveler : append_string(): fix cppcheck errors
120- bitshoveler : conf_write_autoconf(): fix cppcheck errors
121- bitshoveler : Fix memory leak for new_layout in main()
122- bitshoveler : Implement snprintf(); implement missing zero-fill in strncpy()
123- bitshoveler : Use original *BSD source for strlcpy()
124- ErmaC: Port from Enoch the support for IVY Bridge and Haswell Intel Graphics cards. http://www.insanelymac.com/forum/topic/288241-intel-hd4000-and-haswell-inject-aaplig-platform-id/
125- 2255: ErmaC add Skip flag key for Intel/nVidia/ATi from Enoch
126- 2252: revert define processors name to match with xnu kernel name
127- 2252: Merge from Enoch the Geoff Seeley patch http://forge.voodooprojects.org/p/chameleon/issues/59/
128- 2251: bdmesg can show Chameleon and Clover boot logs
129- 2248: Infos about lack for 32/64 bit (Credits to Pike R. Alpha)
130- 2248: Fix issue booting x86 after rev.2175 (Credits to Bronxteck, Alex Burma and Leon).
131- 2245: ErmaC : Add new CPU Model IDs
132- 2245: Add boot support to 10.9 (thx old napalm)
133- 2245: ErmaC : Update gui Icons OS detection
134- 2245: Update default theme Icon set (thx BlackOsx)
135- 2243: Add Linux GPT Partition Label
136- 2234: Fix menuBVR initialization problem
137- Implement ErmaC's HDAEnabler.dylib module
138- Fix Bug in the loop that look for an ATI card. Credits to Jief Luce
139- Fix extension without kPropOSBundleRequired property weren't loaded. Credits to Jief Luce
140- Fix Revision mismatch http://forge.voodooprojects.org/p/chameleon/issues/330/
141- ErmaC : Improve PCI info. Interface program and device revision.
142- Fix Possible bug in i386/libsaio/device_inject.c devprop_add_device() http://forge.voodooprojects.org/p/chameleon/issues/319/
143- Fix warnings/errors from new llvm/clang (xcode 4.6)
144- Fix base64 decode, fixes Issue http://forge.voodooprojects.org/p/chameleon/issues/320/
145- meklort : FileNVRAM module import
146- Merge more cparm's (security, stability, bugs fixes) improvements from his branch.
147- cparm : Added two boot options for High resolution display and reboot on kernel panic
148- cparm : Added a workaroud for Xcode 4.4.x compatibility 504B030414030100630004731141000000007D0000008B00000003000B0062696E01990700020041450308001AED80DA50DF6080B0390FE095B3BC129E1FC27C104EC97897EF27CD1175766CB18C66FF42EFB7023911BDFD5E4BC9AEEC32FF3473963F70B255581D7B74DE9F
149- cparm : Fixed a buffer overflow in the plist loader
150- Add more nVidia and Ati Device and Subdevice IDs.
151- Substitutes some simpler command in place of md which fixes this first issue
152 credits to bltz http://forge.voodooprojects.org/p/chameleon/issues/279/
153- Fix crash with missing *_o.png image
154 credits to bltz http://forge.voodooprojects.org/p/chameleon/issues/280/
155- General code cleanups.
156- This revision is devoted to Samantha, AKA DHP or Revogirl in the OSx86 scene.
157 A young talent we lost prematurely.
158 Part of her work will now live on in the Chameleon source code.
159 Changes: code cleaned, improvements taken from Revoboot.
160 http://www.insanelymac.com/forum/index.php?showtopic=259090
161- Apply patch by Andrey B http://forge.voodooprojects.org/p/chameleon/issues/270/
162- 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)
163- cparm : Ported the nvidia plist helper (less time to spend on the device id more time to code :-) )
164- Added Recovery Icon for Default Theme (TODO) (credits to blackosx).
165- Merge more cparm's (security, stability, bugs fixes) improvements from his branch.
166 http://forge.voodooprojects.org/p/chameleon/source/tree/HEAD/branches/cparm
167- Merge "Restart fix Removed" from trunk r1992 by Slice's patch
168- Added nVidia process sub-dev ids.
169- Merge EnableHDMIAudio changes from commit 1950 by Cosmosis Jones.
170- Merge patch by Geoff Seeley http://forge.voodooprojects.org/p/chameleon/issues/59/
171- Apply patch by Michael Seydl http://forge.voodooprojects.org/p/chameleon/issues/48/
172- Apply patch by Michael Seydl http://forge.voodooprojects.org/p/chameleon/issues/247/
173- Apply patch by rafi rafi http://forge.voodooprojects.org/p/chameleon/issues/246/
174- Added ID for Radeon HD5570 and some subID: http://forge.voodooprojects.org/p/chameleon/issues/243/
175- Merge cparm's (security, stability, bugs fixes) improvements from his branch.
176- Added ID and correct FB for: http://forge.voodooprojects.org/p/chameleon/issues/238/
177- Added next coming CHIPSET and ID definition (Mosts of it commented) ML?
178 (found via netkas.org): http://lists.freedesktop.org/archives/dri-devel/2012-March/020388.html
179- Added boot support for Mountain Lion 10.8 (credits to ErmaC) & updated the default theme (credits to blackosx)
180- cparm : Fixed naming convention for raid hfs devices in gui
181- Added support for using UUIDs with ext2 filesystems (credits to bitz): http://forge.voodooprojects.org/p/chameleon/issues/208/
182- Added Guerrero's patch on gui.c: http://forge.voodooprojects.org/p/chameleon/issues/178/
183- cparm : Ported the OS detection to the trunk, updated the default theme to v 1.1 (credit to blackosx)
184- Merge correction for "Invalid package length algorithm in aml_generator.c" (credits to rphilipson)
185 http://forum.voodooprojects.org/index.php/topic,2297.0.html
186- Added scorpius's patch (to get an unstretched boot screen for nVidia cards on DVI) in boot0.s,
187 disabled by default: http://forum.voodooprojects.org/index.php/topic,2158.0.html
188- Added exFAT volume label support (FAT64) support (credit to dmazar):
189 http://forum.voodooprojects.org/index.php/topic,2095.0.html
190- disableIRQs() http://www.insanelymac.com/forum/index.php?s=&showtopic=255866&view=findpost&p=1677779
191 Port of original patch by: CPARM (who basically did this in boot.c) Thanks!
192 The ACPI specification dictates that the 8259 (PC-AT compatible) vectors
193 must be disabled (that is, masked) when enabling the ACPI APIC operation
194 but this isn't done (apparently) on all mobo's and thus we do that here.
195- Added AtiPorts option to GraphicsEnabler, so users can override the default number of ports. It proved
196 to be useful when used to limit the number of ports that a framebuffer registers, which seems to be a
197 requirement on laptops that can only use 2 ports at the same time.
198 Thanks to Akbar for testing and AniV also for the tip:
199 http://forum.voodooprojects.org/index.php/topic,1959.msg10402.html#msg10402
200- Added NVidia ION AHCI controllers dev id to AHCIPortInjector kext.
201 Forgot to mention source on the commit: http://forum.voodooprojects.org/index.php/topic,1170.0.html
202- Renamed com.apple.Boot.plist to org.chameleon.Boot.plist.
203- Added "ShowInfo" key (enabled by default for now), which enables/disables the display of
204 partition and resolution related info, on the Gui.
205 This info may not play well with some custom themes.
206- Modules can now be selected between not compiled, compiled into chameleon, or compiled as modules.
207- New makefile + configuration system.
208- Added the BOOT2_MAX_LENGTH constant in memory.h. This is now used in mboot.c to relocate the correct
209 number of bytes for boot2.
210- Added new ATi/AMD Graphics Card Enabler.
211- Added new SMBIOS patcher.
212Includes changes to "manufacter" keys, from SM*manufacter to SM*manufacturer.
213- Added module system.
214- Added automatic P-States & C-States generation for native power management.
215- Added Booter Log Dump Tool
216- Added Booter message Logging (":/boot-log" ioreg property)
217- Removed -x32 option, use arch=i386 instead
218- Added automatic SMBusspeed detection for lga1156 core i5/7 cpus
219- Added new iMac11,1 sbios default model for lga1156 core i5/17 mobos
220- md0 code. Notified xnu when an md ramdisk is specified
221- Added rollover image support for selected device icons.
222 Use device_<type>_o.png in theme folder. Credits goes to Blackosx.
223- Revisited theme resource embedding. Using the device_<type> icons are optional with
224 the exception of device_generic.
225- Optimized memory detection speed
226- Added displaying source device and partition number for file read operations.
227- Increased boot2's maximum size from 383.5k to 447.5k.
228 Updated stage 1 loaders for handling the new size limit.
229- Added alternate format for setting the default partition. The user can specify the selected
230 volume UUID for the "Default Partition" key.
231- Implemented SPD memory automatic detection and injection,seems to work really great ...
232- Factorized code to prepare a dynamic memory detection algorithm ...
233- Optimized smbios table address search
234- Optimized cursor spinout in textmode if no verbose mode is set
235- Added ram table structures definitions
236- Added getSmbios() a param permitting to select between orig and new smbios entries
237- Changed "Default Partition" behavior to accept only native system volumes or foreign partitions.
238- Added NVIDIA new NVCAP customization support and support for ION gfx cards from aserebln
239- Added ATI new framebuffers support and new cards from PCEFI10.6
240- improved ACPI file search algo by implementing a cache.
241- Nvidia injection fix
242- pciroot would not always return correct UID in auto detection mode
243- Fixed the hibernation problem in boot2/resume.c
244- Fixed all new booter versions with SystemType would override the facp value even if correct,
245 now keeps the facp value if correct and no override has been done, implemented a best effort algo.
246 for maximizing the chance to get the most correct value before we decide to use a fixed value (1=desktop)
247- Fixed display cosmetics of UUID, now a convert.c file contains all
248 conversions api, to be completed by function that we should reuse.
249
250- Fixed SystemType would be always forced to a value, now optionally changed
251 only if overridden
252- Kept SystemID as the only option to change manually the system-id
253 For theses reasons, SystemId from bootConfig and SMUUID from smbiosConfig are now DEPRECATED.
254
255- Integrated JrCs fadt patch (kept for RC5 the existing DSDT.aml retry algo that disappeared in his patch,
256 should be more discussed for RC6)
257- Added JrCs modified convention name change to coding_standards
258- Now malloc (ex. MALLOC in Asere patch) is renamed malloc(size) and is an alias
259 to safe_malloc(size, file, line) with _FILE_ and _LINE_ preprocessor definitions
260- Added a new 'Rename Partition Feature', now permitting to rename partition
261 like 'System reserved' to a more meaningful name
262- Added SystemID option permitting to change the System UUID to a fixed value.
263- Added the PciRoot auto detection feature imported from pcefi10.5
264- Added automatic "system-id" injection from dmi bios, also compatible
265 with SystemID boot option and former SMUUID from smbios,plist
266- Added "system-type' automatic injection (1=Desktop) plus override possibility
267 with the new system-type option in bootConfig
268- Added SMserial and SMproductname new options for smbios.plist
269- Merged with asere patch, while keeping my fake_efi.c changes, and adding a new
270 stringForKey() API, also changed the DT__XXXX() set of functions
271 to handle const char * values instead of char*.
272

Archive Download this file

Revision: 2747