The possible info at the moment: Installation: - get the source, compile; find modules at /sym/i386, with .dylib file extension. - create a /Extra/modules folder, copy Symbols.dylib (mandatory) to modules folder, plus any other module you wish to load. Note: GraphicsEnabler & MemDetect are now converted to modules.*** - update boot file or reinstall the booter completely, as needed. How to use? - Just check if a key is needed to activate the module you pretend to use. Otherwise modules are loaded at startup by the booter from default location. (check Issues below). ---------------//---------------//--------------- What are modules? - good question! Well, can't add much on the "geek" side... need to study the stuff so i don't start dumping bs. The easy answer is they are like plugins, adding/replacing booter functionality. For instance: the Kernel Patcher (Kpatcher) is around for some time, integrated on boot file like any other Chameleon function; with Modules support Kpatcher can now live as a module, freeing the space occupied on boot file (one of module's advantages). Featured modules: - Symbols.dylib: always needed to load other modules! It's the first one to load and no other module will work if this one fails. The booter will still perform as usual, if it fails to load. - KernelPatcher.dylib: - needs key to be enabled: PatchKernel=y at boot prompt or, PatchKernel on Boot.plist. Yes - featured patches: cpuid_set - 32/64 bit commpage_stuff - 32/64 bit lapic_init - 32 bit only. Note on functionality: as it is, Kpatcher allows my Pentium D 925 to load vanilla(*) kernel, with the help of -legacy flag; to enter x86_64 world i still need to patch the kernel sources, as the 925 has no Supplemental SSE3 instructions and there's no patch to fix this on Kpatcher atm (don't even know if is possible?!). I assume that, the great majority of the legacy/unsupported processors with at least SSE3 instructions, will benefit of the same treatment! Let's just say that the only patch needed by the 925 on Legacy Mode(**) is cpuid_set! Note: Kernel Patcher can stop working due to changes on the kernel code. - GraphicsEnabler: graphics enabler option converted to module. - same activation key used. - Memory detection: memory detection option converted to module. - same deactivation key used. (enabled by default) - HelloWorld.dylib: just a notifier (not mandatory). (*) In this context, "vanilla" means the use of a non pre-patched kernel; what we do here is patch the kernel on the fly, in memory. (**) For those who "missed" the lesson, Legacy Mode is the mode 32 bit only cpu's run on OS X. ---------------//---------------//--------------- Issues: - the default path for loading modules (/Extra/modules/) is not being respected, the booter always checks bt(0,0)/Extra/modules/ instead. Anyway, i already intended to change the path due to the concept of this booter and so i did it. Of course the problem is still there and needs to be fixed, at least if one wants to be able to load modules from selected volume. - compiling modules under Leo (XCode 3.1.4) is not possible at the moment. ---------------//---------------//--------------- Some talk here: http://forum.voodooprojects.org/index.php/topic,1556.0.html here: http://forum.voodooprojects.org/index.php/topic,1153.0.html and here: http://forum.voodooprojects.org/index.php/topic,1565.0.html ---------------//---------------//--------------- Smith@@'s news :D « Sent to: Azimutz on: Fri 03/09/2010 at 05:55:08 » "Hi azi, i've try last chazi with modules, it works like a charm ;)" -------/-/------- Grazie Amico - Azi ---------------//---------------//--------------- Huge thanks fly out to Meklort for this precious work! ---------------//---------------//--------------- Azimutz