Index: branches/slice/i386/boot2/graphics.c =================================================================== --- branches/slice/i386/boot2/graphics.c (revision 712) +++ branches/slice/i386/boot2/graphics.c (revision 713) @@ -33,6 +33,16 @@ #include "bootstruct.h" #include "IOHibernatePrivate.h" +#ifndef DEBUG_GR +#define DEBUG_GR 1 +#endif + +#if DEBUG_GR +#define DBG(x...) printf(x) +#else +#define DBG(x...) msglog(x) +#endif + /* * for spinning disk */ Index: branches/slice/i386/boot2/boot.c =================================================================== --- branches/slice/i386/boot2/boot.c (revision 712) +++ branches/slice/i386/boot2/boot.c (revision 713) @@ -63,7 +63,7 @@ #include "modules.h" -#define DEBUG 1 +#define DEBUG 0 long gBootMode; /* defaults to 0 == kBootModeNormal */ bool gOverrideKernel; @@ -216,13 +216,12 @@ #endif } + execute_hook("Kernel Start", (void*)kernelEntry, (void*)bootArgs, NULL, NULL); // Notify modules that the kernel is about to be started setupBooterLog(); finalizeBootStruct(); - execute_hook("Kernel Start", (void*)kernelEntry, (void*)bootArgs, NULL, NULL); // Notify modules that the kernel is about to be started - // Jump to kernel's entry point. There's no going back now. startprog( kernelEntry, bootArgs ); @@ -286,7 +285,7 @@ // Setup VGA text mode. // Not sure if it is safe to call setVideoMode() before the // config table has been loaded. Call video_mode() instead. - video_mode( 2 ); // 80x25 mono text mode. + // video_mode( 2 ); // 80x25 mono text mode. // Scan and record the system's hardware information. scan_platform(); @@ -304,9 +303,11 @@ // Load boot.plist config file status = loadSystemConfig(&bootInfo->bootConfig); + if (getBoolForKey(kQuietBootKey, &quiet, &bootInfo->bootConfig) && quiet) { gBootMode |= kBootModeQuiet; } + // Override firstRun to get to the boot menu instantly by setting "Instant Menu"=y in system config if (getBoolForKey(kInsantMenuKey, &instantMenu, &bootInfo->bootConfig) && instantMenu) { firstRun = false; @@ -395,6 +396,7 @@ #endif + setBootGlobals(bvChain); // Parse args, load and start kernel. @@ -547,6 +549,7 @@ else //if(gMacOSVersion[3] == '5') sprintf(gBootKernelCacheFile, "%skernelcache", kDefaultCachePath); } + // Check for cache file. trycache = (((gBootMode & kBootModeSafe) == 0) && !gOverrideKernel && Index: branches/slice/i386/boot2/modules.c =================================================================== --- branches/slice/i386/boot2/modules.c (revision 712) +++ branches/slice/i386/boot2/modules.c (revision 713) @@ -44,6 +44,13 @@ while(hooks) { DBG("Hook: %s\n", hooks->name); + callbackList_t* callbacks = hooks->callbacks; + while(callbacks->next != NULL) + { + DBG("\tcallbacks: %x\n", callbacks->callback); + callbacks = callbacks->next; + } + hooks = hooks->next; } } @@ -113,6 +120,7 @@ char* name; long flags; long time; + DBG("Loading modules...\n"); struct dirstuff* moduleDir = opendir("/Extra/modules/"); while(readdir(moduleDir, (const char**)&name, &flags, &time) >= 0) { @@ -155,7 +163,7 @@ { // NOTE: Symbols.dylib tries to load twice, this catches it as well // as when a module links with an already loaded module - DBG("Module %s already loaded\n", module); + DBG("load_module: Module %s already loaded\n", module); return 1; } @@ -165,7 +173,7 @@ fh = open(modString, 0); if(fh < 0) { - DBG("Unable to locate module %s\n", modString); + DBG("load_module: Unable to locate module %s\n", modString); //getc(); return 0; } @@ -175,7 +183,7 @@ if (moduleSize && read(fh, module_base, moduleSize) == moduleSize) { - DBG("Module %s read in.\n", modString); + DBG("load_module: Module %s read in.\n", modString); // Module loaded into memory, parse it module_start = parse_mach(module_base, &load_module, &add_symbol); @@ -185,17 +193,17 @@ // Notify the system that it was laoded module_loaded(module/*moduleName, moduleVersion, moduleCompat*/); (*module_start)(); // Start the module - DBG("Module %s Loaded.\n", module); + DBG("load_module: Module %s Loaded.\n", module); } else { // The module does not have a valid start function - verbose("Unable to start %s\n", module); + verbose("load_module: Unable to start %s\n", module); getc(); } } else { - DBG("Unable to read in module %s\n.", module); + DBG("load_module: Unable to read in module %s\n.", module); //getc(); } close(fh); @@ -211,38 +219,47 @@ */ int execute_hook(const char* name, void* arg1, void* arg2, void* arg3, void* arg4) { - DBG("Attempting to execute hook '%s'\n", name); + DBG("execute_hook: Attempting to execute hook '%s'\n", name); moduleHook_t* hooks = moduleCallbacks; - - while(hooks && strcmp(name, hooks->name) < 0) +//Slice - dunno why it not works +/* while(hooks && strcmp(name, hooks->name) < 0) { - //DBG("%s cmp %s = %d\n", name, hooks->name, strcmp(name, hooks->name)); + DBG("execute_hook: name=%s hook->name=%s cmp=%d try next\n", name, hooks->name, strcmp(name, hooks->name)); hooks = hooks->next; - } + + }*/ + do { + + DBG("execute_hook: name=%s hook->name=%s cmp=%d try next\n", name, hooks->name, strcmp(name, hooks->name)); + if (strcmp(name, hooks->name) == 0) { + break; + } + hooks = hooks->next; + } while (hooks); - if(hooks && strcmp(name, hooks->name) == 0) + if(hooks) // && strcmp(name, hooks->name) == 0) { // Loop through all callbacks for this module callbackList_t* callbacks = hooks->callbacks; while(callbacks) { - DBG("Executing '%s' with callback 0x%X.\n", name, callbacks->callback); + DBG("execute_hook: Executing '%s' with callback 0x%X.\n", name, callbacks->callback); // Execute callback callbacks->callback(arg1, arg2, arg3, arg4); callbacks = callbacks->next; - DBG("Hook '%s' callback executed, next is 0x%X.\n", name, callbacks); +// DBG("execute_hook: Hook '%s' callback executed, next is 0x%X.\n", name, callbacks); } - DBG("Hook '%s' executed.\n", name); + DBG("execute_hook: Hook '%s' executed.\n", name); return 1; } else { - DBG("No callbacks for '%s' hook.\n", name); + DBG("execute_hook: No callbacks for '%s' hook.\n", name); - // Callbaack for this module doesn't exist; + // Callback for this module doesn't exist; //verbose("Unable execute hook '%s', no callbacks registered.\n", name); //pause(); return 0; @@ -254,14 +271,14 @@ /* * register_hook_callback( const char* name, void(*callback)()) * name - Name of the module hook to attach to. - * callbacks - The funciton pointer that will be called when the + * callbacks - The function pointer that will be called when the * hook is executed. When registering a new callback name, the callback is added sorted. * NOTE: the hooks take four void* arguments. * TODO: refactor */ void register_hook_callback(const char* name, void(*callback)(void*, void*, void*, void*)) { - DBG("Adding callback for '%s' hook.\n", name); + DBG("register_hook_callback: Adding callback for '%s' hook.\n", name); moduleHook_t* newHook = malloc(sizeof(moduleHook_t)); if(!moduleCallbacks) @@ -273,16 +290,31 @@ newHook->callbacks = (callbackList_t*)malloc(sizeof(callbackList_t)); newHook->callbacks->callback = callback; newHook->callbacks->next = NULL; + DBG("register_hook_callback: new moduleCallbacks with %s\n", name); } else { moduleHook_t* hooks = moduleCallbacks; - +//Slice +// ignored first node where hooks->name == name ?! +/* while(hooks->next && strcmp(name, hooks->next->name) < 0) { hooks = hooks->next; } - +*/ + moduleHook_t* backHook = moduleCallbacks; //I need to remember last node in chain if next=NULL + do { + DBG("register_hook_callback: found = %s\n", hooks->name); + if (strcmp(name, hooks->name) == 0) { + break; + } + backHook = hooks; + hooks = hooks->next; + } while (hooks); +// There are only two variants: hooks found or not +// if not found then hooks=NULL so remember backHook +/* if(!hooks->next) { // Appent to the end @@ -292,14 +324,16 @@ newHook->callbacks = (callbackList_t*)malloc(sizeof(callbackList_t)); newHook->callbacks->callback = callback; newHook->callbacks->next = NULL; + DBG("register_hook_callback: Appent to the end\n"); - } - else if(strcmp(name, hooks->next->name) == 0) + else */ +//First check for hook found. So hooks != NULL + if(hooks) //&& strcmp(name, hooks->name) == 0) { // We found the hook - // Hook alreday exists, add a callback to this hook - callbackList_t* callbacks = hooks->next->callbacks; + // Hook already exists, add a callback to this hook + callbackList_t* callbacks = hooks->callbacks; //hooks->next->callbacks while(callbacks->next != NULL) { callbacks = callbacks->next; @@ -309,17 +343,18 @@ callbacks = callbacks->next; callbacks->next = NULL; callbacks->callback = callback; + DBG("register_hook_callback: existing hook with new callback\n"); } else { - // We are too far beyond the hook - newHook->next = hooks->next; + hooks = backHook; //now hooks=NULL so remember last not NULL where hooks->next=NULL + newHook->next = NULL; hooks->next = newHook; newHook->name = name; newHook->callbacks = (callbackList_t*)malloc(sizeof(callbackList_t)); newHook->callbacks->callback = callback; newHook->callbacks->next = NULL; - + DBG("register_hook_callback: add new hook %s\n", name); } } #if DEBUG_MODULES @@ -337,7 +372,7 @@ * NOTE; all dependecies will be loaded before this module is started * NOTE: If the module is unable to load ot completeion, the modules * symbols will still be available (TODO: fix this). This should not - * happen as all dependencies are verified before the sybols are read in. + * happen as all dependencies are verified before the symbols are read in. */ void* parse_mach(void* binary, int(*dylib_loader)(char*), long long(*symbol_handler)(char*, long long, char)) // TODO: add param to specify valid archs { @@ -563,7 +598,7 @@ break; default: - DBG("Unhandled loadcommand 0x%X\n", loadCommand->cmd & 0x7FFFFFFF); + DBG("parse_mach: Unhandled loadcommand 0x%X\n", loadCommand->cmd & 0x7FFFFFFF); break; } @@ -1173,7 +1208,7 @@ { // TODO: insert sorted moduleList_t* new_entry = malloc(sizeof(moduleList_t)); - +// DBG("module_loaded: %s\n", name); new_entry->next = loadedModules; loadedModules = new_entry; @@ -1188,10 +1223,10 @@ moduleList_t* entry = loadedModules; while(entry) { - DBG("Comparing %s with %s\n", name, entry->module); +// DBG("\tis_module_loaded:Comparing %s with %s\n", name, entry->module); if(strcmp(entry->module, name) == 0) { - DBG("Located module %s\n", name); +// DBG("\tis_module_loaded:Located module %s\n", name); return 1; } else @@ -1200,12 +1235,12 @@ } } - DBG("Module %s not found\n", name); +// DBG("\tis_module_loaded:Module %s not found in list\n", name); return 0; } -// Look for symbols using the Smbols moduel function. +// Look for symbols using the Symbols module function. // If non are found, look through the list of module symbols unsigned int lookup_all_symbols(const char* name) { Index: branches/slice/i386/boot2/options.c =================================================================== --- branches/slice/i386/boot2/options.c (revision 712) +++ branches/slice/i386/boot2/options.c (revision 713) @@ -819,6 +819,7 @@ if (gEnableCDROMRescan) { gBootVolume = NULL; clearBootArgs(); + key = 0; } break; @@ -827,6 +828,7 @@ scanDisks(gBIOSDev, &bvCount); gBootVolume = NULL; clearBootArgs(); + key = 0; break; #endif default: Index: branches/slice/i386/modules/GUI/gui.c =================================================================== --- branches/slice/i386/modules/GUI/gui.c (revision 712) +++ branches/slice/i386/modules/GUI/gui.c (revision 713) @@ -719,8 +719,8 @@ gDualLink =((screen_params[0] * screen_params[1]) > (1<<20))?1:0; msglog("GUI module screen width=%d height=%d\n",(int)screen_params[0], (int)screen_params[1]); } -// if (((int)screen_params[0]<800) || ((int)screen_params[1]<600)) -// { + if (((int)screen_params[0]<800) || ((int)screen_params[1]<600)) + { if (getIntForKey("screen_width", &val, &bootInfo->themeConfig) && val > 0) { screen_params[0] = val; @@ -730,7 +730,7 @@ screen_params[1] = val; } msglog("GUI theme screen width=%d height=%d\n",screen_params[0], screen_params[1]); -// } + } if (((int)screen_params[0]<800) || ((int)screen_params[1]<600)) { screen_params[0] = DEFAULT_SCREEN_WIDTH; @@ -1869,7 +1869,7 @@ // drawBootGraphics void drawBootGraphics(void) { - int pos; +// int pos; int length; const char *dummyVal; int oldScreenWidth, oldScreenHeight; @@ -1884,8 +1884,9 @@ loadBootGraphics(); } //Slice - attention! +// getResolution already done! // parse screen size parameters - if(is_module_loaded("Resolution.dylib")) +/* if(is_module_loaded("Resolution.dylib")) { getResolution(&screen_params[0], &screen_params[1], &screen_params[2]); } @@ -1906,7 +1907,8 @@ } } msglog("boot_width=%d boot_height=%d\n", screen_params[0], screen_params[1]); - // Save current screen resolution. + // Save current screen resolution. // for a what? + */ oldScreenWidth = gui.screen.width; oldScreenHeight = gui.screen.height; Index: branches/slice/i386/modules/GUI/GUI_module.c =================================================================== --- branches/slice/i386/modules/GUI/GUI_module.c (revision 712) +++ branches/slice/i386/modules/GUI/GUI_module.c (revision 713) @@ -18,7 +18,18 @@ #define BOOTER_LOG_SIZE (64 * 1024) #define SAFE_LOG_SIZE 80 +#ifndef DEBUG_GUI +#define DEBUG_GUI 1 +#endif +#if DEBUG_GUI +#define DBG(x...) GUI_verbose(x) +#else +#define DBG(x...) +#endif + + + bool useGUI; void GUI_Kernel_Start_hook(void* kernelEntry, void* arg2, void* arg3, void* arg4); @@ -75,7 +86,7 @@ else { setVideoMode( GRAPHICS_MODE, 0 ); //Slice - Why GRAPHICS_MODE if gVerboseMode? - + DBG("GUI set GRAPHICS_MODE\n"); } } @@ -128,7 +139,7 @@ replace_function("_error", &GUI_error); replace_function("_stop", &GUI_stop); } - + DBG("GUI loaded\n"); } /** @@ -535,6 +546,7 @@ if (biosDevIsCDROM(gBIOSDev)) { isCDROM = true; + DBG("GUI gBIOSDev is CDROM\n"); } else { @@ -621,7 +633,7 @@ printf(getVBEInfoString()); } changeCursor(0, kMenuTopRow, kCursorTypeUnderline, 0); - verbose("Scanning device %x...", gBIOSDev); + verbose("GUI_Scanning device %x...", gBIOSDev); } // When booting from CD, default to hard drive boot when possible. @@ -732,6 +744,7 @@ // Associate a menu item for each BVRef. for (bvr=bvChain, i=gDeviceCount-1, selectIndex=0; bvr; bvr=bvr->next) { + DBG("GUI menu for device %d\n", bvr->biosdev); if (bvr->visible) { getBootVolumeDescription(bvr, menuItems[i].name, sizeof(menuItems[i].name) - 1, true); @@ -910,6 +923,7 @@ scanDisks(gBIOSDev, &bvCount); gBootVolume = NULL; clearBootArgs(); + key = 0; break; case kTabKey: Index: branches/slice/revision =================================================================== --- branches/slice/revision (revision 712) +++ branches/slice/revision (revision 713) @@ -1 +1 @@ -676:708 \ No newline at end of file +676:711 \ No newline at end of file Index: branches/slice/ChamMek/ChamMek.xcodeproj/slice.pbxuser =================================================================== --- branches/slice/ChamMek/ChamMek.xcodeproj/slice.pbxuser (revision 712) +++ branches/slice/ChamMek/ChamMek.xcodeproj/slice.pbxuser (revision 713) @@ -32,7 +32,7 @@ PBXFileTableDataSourceColumnWidthsKey = ( 22, 300, - 612.58349609375, + 461.58349609375, ); PBXFileTableDataSourceColumnsKey = ( PBXExecutablesDataSource_ActiveFlagID, @@ -45,7 +45,7 @@ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; PBXFileTableDataSourceColumnWidthsKey = ( 20, - 505, + 574, 20, 48, 43, @@ -81,7 +81,7 @@ 16, 200, 50, - 665.20849609375, + 445.20849609375, ); PBXFileTableDataSourceColumnsKey = ( PBXSymbolsDataSource_SymbolTypeIconID, @@ -90,8 +90,32 @@ PBXSymbolsDataSource_ReferenceNameID, ); }; - PBXPerProjectTemplateStateSaveDate = 317571794; - PBXWorkspaceStateSaveDate = 317571794; + PBXConfiguration.PBXFileTableDataSource3.XCSCMDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 20, + 550, + 20, + 48.16259765625, + 43, + 43, + 20, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_SCM_ColumnID, + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + PBXFileDataSource_Target_ColumnID, + ); + }; + PBXPerProjectTemplateStateSaveDate = 317734509; + PBXWorkspaceStateSaveDate = 317734509; }; perUserProjectItems = { 120DFB1712BA3A4D00C7EAC8 /* PBXTextBookmark */ = 120DFB1712BA3A4D00C7EAC8 /* PBXTextBookmark */; @@ -100,10 +124,6 @@ 12121ED112B261EA00207E55 /* PBXTextBookmark */ = 12121ED112B261EA00207E55 /* PBXTextBookmark */; 1216139E12B65BB50019961E /* PBXTextBookmark */ = 1216139E12B65BB50019961E /* PBXTextBookmark */; 121613FF12B65D970019961E /* PBXTextBookmark */ = 121613FF12B65D970019961E /* PBXTextBookmark */; - 1217945312EDC35E00F271E6 /* PBXTextBookmark */ = 1217945312EDC35E00F271E6 /* PBXTextBookmark */; - 1217945912EDC36400F271E6 /* PBXTextBookmark */ = 1217945912EDC36400F271E6 /* PBXTextBookmark */; - 1217945A12EDC36400F271E6 /* PBXTextBookmark */ = 1217945A12EDC36400F271E6 /* PBXTextBookmark */; - 1217945C12EDC36400F271E6 /* PBXTextBookmark */ = 1217945C12EDC36400F271E6 /* PBXTextBookmark */; 1223EF9012E5D63A0019EC66 /* PBXTextBookmark */ = 1223EF9012E5D63A0019EC66 /* PBXTextBookmark */; 122A869712EC5429004312F4 /* PBXTextBookmark */ = 122A869712EC5429004312F4 /* PBXTextBookmark */; 122A869812EC5429004312F4 /* PBXTextBookmark */ = 122A869812EC5429004312F4 /* PBXTextBookmark */; @@ -114,10 +134,17 @@ 124C494312B8E8C2005AA276 /* PBXTextBookmark */ = 124C494312B8E8C2005AA276 /* PBXTextBookmark */; 124C494512B8E8C2005AA276 /* PBXTextBookmark */ = 124C494512B8E8C2005AA276 /* PBXTextBookmark */; 124C494B12B8EA5D005AA276 /* PBXTextBookmark */ = 124C494B12B8EA5D005AA276 /* PBXTextBookmark */; + 125437C812EF1E99007175C8 /* PBXTextBookmark */ = 125437C812EF1E99007175C8 /* PBXTextBookmark */; + 125437CA12EF1E99007175C8 /* PBXTextBookmark */ = 125437CA12EF1E99007175C8 /* PBXTextBookmark */; + 125437CB12EF1E99007175C8 /* PBXTextBookmark */ = 125437CB12EF1E99007175C8 /* PBXTextBookmark */; + 1255F81112F03ED000CE7802 /* PBXTextBookmark */ = 1255F81112F03ED000CE7802 /* PBXTextBookmark */; + 1255F81212F03ED000CE7802 /* PBXTextBookmark */ = 1255F81212F03ED000CE7802 /* PBXTextBookmark */; + 1255F81312F03ED000CE7802 /* PBXTextBookmark */ = 1255F81312F03ED000CE7802 /* PBXTextBookmark */; + 12569C8612F0115B005A9113 /* PBXTextBookmark */ = 12569C8612F0115B005A9113 /* PBXTextBookmark */; 1265C97712C7554E0050D02E /* PBXTextBookmark */ = 1265C97712C7554E0050D02E /* PBXTextBookmark */; 1267813012B7B13E00A25CED /* PBXTextBookmark */ = 1267813012B7B13E00A25CED /* PBXTextBookmark */; 12679BA312BE822E00E3637F /* PBXTextBookmark */ = 12679BA312BE822E00E3637F /* PBXTextBookmark */; - 1271587812EA1C6400E3013B /* PBXTextBookmark */ = 1271587812EA1C6400E3013B /* PBXTextBookmark */; + 126C766312EEF67F00BDB81E /* PBXTextBookmark */ = 126C766312EEF67F00BDB81E /* PBXTextBookmark */; 12715CDF12EA253100E3013B /* PBXTextBookmark */ = 12715CDF12EA253100E3013B /* PBXTextBookmark */; 12715CE012EA253100E3013B /* PBXTextBookmark */ = 12715CE012EA253100E3013B /* PBXTextBookmark */; 1288318212C3608100EA4CB2 /* PBXTextBookmark */ = 1288318212C3608100EA4CB2 /* PBXTextBookmark */; @@ -142,7 +169,6 @@ 12C246F412C87C7C007E8339 /* PBXTextBookmark */ = 12C246F412C87C7C007E8339 /* PBXTextBookmark */; 12C2907612C8962900984F8F /* PBXTextBookmark */ = 12C2907612C8962900984F8F /* PBXTextBookmark */; 12C5020712D8B82400EDCC4E /* PBXTextBookmark */ = 12C5020712D8B82400EDCC4E /* PBXTextBookmark */; - 12C672F312C7C6BE0058B09B /* PBXTextBookmark */ = 12C672F312C7C6BE0058B09B /* PBXTextBookmark */; 12C672F512C7C6BE0058B09B /* PBXTextBookmark */ = 12C672F512C7C6BE0058B09B /* PBXTextBookmark */; 12C7009812B7BCE7006BD382 /* PBXTextBookmark */ = 12C7009812B7BCE7006BD382 /* PBXTextBookmark */; 12C7009912B7BCE7006BD382 /* PBXTextBookmark */ = 12C7009912B7BCE7006BD382 /* PBXTextBookmark */; @@ -161,10 +187,8 @@ 12D6232612BA5F380032F367 /* PBXTextBookmark */ = 12D6232612BA5F380032F367 /* PBXTextBookmark */; 12D64B9F12D8EA0A00A1FE07 /* PBXTextBookmark */ = 12D64B9F12D8EA0A00A1FE07 /* PBXTextBookmark */; 12D7EC0512C8C5EA0021414C /* PBXTextBookmark */ = 12D7EC0512C8C5EA0021414C /* PBXTextBookmark */; - 12D7F69F12ECAF1C00AFD4DA /* PBXTextBookmark */ = 12D7F69F12ECAF1C00AFD4DA /* PBXTextBookmark */; 12DA422F12C52DAC009281B3 /* PBXTextBookmark */ = 12DA422F12C52DAC009281B3 /* PBXTextBookmark */; 12DCD38E12BBA5D600A20635 /* PBXTextBookmark */ = 12DCD38E12BBA5D600A20635 /* PBXTextBookmark */; - 12E0FC2912ECDBD600F07BFF /* PBXTextBookmark */ = 12E0FC2912ECDBD600F07BFF /* PBXTextBookmark */; 12E17AE612B2BA9B00607D8E /* PBXTextBookmark */ = 12E17AE612B2BA9B00607D8E /* PBXTextBookmark */; 12E6FB5712BB458400C2A021 /* PBXTextBookmark */ = 12E6FB5712BB458400C2A021 /* PBXTextBookmark */; 12E8842612D8F833004C76C8 /* PBXTextBookmark */ = 12E8842612D8F833004C76C8 /* PBXTextBookmark */; @@ -206,18 +230,6 @@ path = /Users/slice/Projects/fakesmc/Chameleon/RC5m/i386/libsaio/fake_efi.c; sourceTree = ""; }; - 120C1F1512ED82A000DC399E /* boot.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = boot.c; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/boot.c; - sourceTree = ""; - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {683, 9815}}"; - sepNavSelRange = "{6259, 14}"; - sepNavVisRange = "{6225, 365}"; - }; - }; 120DB90712B9F3F1001FDAE1 /* boot.c */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; @@ -269,6 +281,20 @@ vrLen = 881; vrLoc = 298; }; + 120F5CDE12F0087200C64A78 /* CHANGES */ = { + isa = PBXFileReference; + lastKnownFileType = text; + name = CHANGES; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/CHANGES; + sourceTree = ""; + }; + 121217CC12EEF2550055AF66 /* options.c */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + name = options.c; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/options.c; + sourceTree = ""; + }; 12121ED112B261EA00207E55 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 12C26F9A12B0E98200AF7F4B /* kernel_patcher.h */; @@ -306,62 +332,6 @@ vrLen = 895; vrLoc = 563; }; - 1217945312EDC35E00F271E6 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1217945412EDC35E00F271E6 /* fake_efi.c */; - rLen = 26; - rLoc = 30011; - rType = 0; - }; - 1217945412EDC35E00F271E6 /* fake_efi.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = fake_efi.c; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/libsaio/fake_efi.c; - sourceTree = ""; - }; - 1217945912EDC36400F271E6 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 120C1F1512ED82A000DC399E /* boot.c */; - name = "boot.c: 219"; - rLen = 14; - rLoc = 6259; - rType = 0; - vrLen = 365; - vrLoc = 6225; - }; - 1217945A12EDC36400F271E6 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1217945B12EDC36400F271E6 /* ACPIPatcher.c */; - name = "ACPIPatcher.c: 7"; - rLen = 1; - rLoc = 110; - rType = 0; - vrLen = 518; - vrLoc = 0; - }; - 1217945B12EDC36400F271E6 /* ACPIPatcher.c */ = { - isa = PBXFileReference; - name = ACPIPatcher.c; - path = /Users/slice/Desktop/ACPIPatcher/ACPIPatcher.c; - sourceTree = ""; - }; - 1217945C12EDC36400F271E6 /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 1217945D12EDC36400F271E6 /* fake_efi.c */; - name = "fake_efi.c: 780"; - rLen = 26; - rLoc = 30011; - rType = 0; - vrLen = 560; - vrLoc = 29817; - }; - 1217945D12EDC36400F271E6 /* fake_efi.c */ = { - isa = PBXFileReference; - name = fake_efi.c; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/libsaio/fake_efi.c; - sourceTree = ""; - }; 121E9E4112C6A6F9000B6ED3 /* gma.c */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; @@ -444,13 +414,6 @@ vrLen = 528; vrLoc = 4718; }; - 122A86CA12ECA817004312F4 /* gui.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = gui.c; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/modules/GUI/gui.c; - sourceTree = ""; - }; 123C5F9112C8AB2C00DFC2D4 /* edid.h */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; @@ -458,6 +421,25 @@ path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/modules/Resolution/edid.h; sourceTree = ""; }; + 123D09BF12F01CAA00D5CB48 /* modules.c */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + name = modules.c; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/modules.c; + sourceTree = ""; + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {752, 18122}}"; + sepNavSelRange = "{229, 0}"; + sepNavVisRange = "{97, 721}"; + }; + }; + 1243C06412EF16C400CF33C6 /* boot.c */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + name = boot.c; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/boot.c; + sourceTree = ""; + }; 124C492812B8C915005AA276 /* Memory.c */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; @@ -560,6 +542,96 @@ vrLen = 554; vrLoc = 5486; }; + 125437C812EF1E99007175C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 125437C912EF1E99007175C8 /* HPET.c */; + name = "HPET.c: 43"; + rLen = 11; + rLoc = 759; + rType = 0; + vrLen = 611; + vrLoc = 286; + }; + 125437C912EF1E99007175C8 /* HPET.c */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + name = HPET.c; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/modules/HPET/HPET.c; + sourceTree = ""; + }; + 125437CA12EF1E99007175C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 126C766512EEF67F00BDB81E /* Memory.c */; + name = "Memory.c: 37"; + rLen = 11; + rLoc = 726; + rType = 0; + vrLen = 835; + vrLoc = 393; + }; + 125437CB12EF1E99007175C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 125437CC12EF1E99007175C8 /* modules.h */; + name = "modules.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1151; + vrLoc = 1550; + }; + 125437CC12EF1E99007175C8 /* modules.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = modules.h; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/modules.h; + sourceTree = ""; + }; + 1255F81112F03ED000CE7802 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 123D09BF12F01CAA00D5CB48 /* modules.c */; + name = "modules.c: 13"; + rLen = 0; + rLoc = 229; + rType = 0; + vrLen = 721; + vrLoc = 97; + }; + 1255F81212F03ED000CE7802 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1243C06412EF16C400CF33C6 /* boot.c */; + name = "boot.c: 353"; + rLen = 13; + rLoc = 10294; + rType = 0; + vrLen = 678; + vrLoc = 9722; + }; + 1255F81312F03ED000CE7802 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 1255F81412F03ED000CE7802 /* boot.c */; + name = "boot.c: 66"; + rLen = 0; + rLoc = 2077; + rType = 0; + vrLen = 657; + vrLoc = 1639; + }; + 1255F81412F03ED000CE7802 /* boot.c */ = { + isa = PBXFileReference; + name = boot.c; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/boot.c; + sourceTree = ""; + }; + 12569C8612F0115B005A9113 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 120F5CDE12F0087200C64A78 /* CHANGES */; + name = "CHANGES: 9"; + rLen = 13; + rLoc = 339; + rType = 0; + vrLen = 1670; + vrLoc = 0; + }; 1265C97712C7554E0050D02E /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 1265C97812C7554E0050D02E /* basic_definitions */; @@ -604,16 +676,23 @@ vrLen = 894; vrLoc = 14871; }; - 1271587812EA1C6400E3013B /* PBXTextBookmark */ = { + 126C766312EEF67F00BDB81E /* PBXTextBookmark */ = { isa = PBXTextBookmark; - fRef = 12F4456712E5DC0800121851 /* NVRAM.c */; - name = "NVRAM.c: 111"; - rLen = 0; - rLoc = 2986; + fRef = 121217CC12EEF2550055AF66 /* options.c */; + name = "options.c: 1003"; + rLen = 8; + rLoc = 24793; rType = 0; - vrLen = 745; - vrLoc = 2442; + vrLen = 1190; + vrLoc = 24206; }; + 126C766512EEF67F00BDB81E /* Memory.c */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + name = Memory.c; + path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/modules/Memory/Memory.c; + sourceTree = ""; + }; 1271587B12EA1C6400E3013B /* ntfs.c */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; @@ -767,13 +846,6 @@ vrLen = 400; vrLoc = 3028; }; - 12AD499712C7ADAB0082CD39 /* modules.h */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.h; - name = modules.h; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/modules.h; - sourceTree = ""; - }; 12AF764312BA614B003BBFD3 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 12EFD98D12B510D9002A1712 /* revision */; @@ -1055,7 +1127,7 @@ fRef = 12D2040D12C890B700CE318D /* graphics.c */; name = "graphics.c: 722"; rLen = 16; - rLoc = 20490; + rLoc = 20617; rType = 0; vrLen = 784; vrLoc = 20063; @@ -1070,16 +1142,6 @@ vrLen = 698; vrLoc = 2183; }; - 12C672F312C7C6BE0058B09B /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 12AD499712C7ADAB0082CD39 /* modules.h */; - name = "modules.h: 19"; - rLen = 13; - rLoc = 418; - rType = 0; - vrLen = 655; - vrLoc = 0; - }; 12C672F512C7C6BE0058B09B /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 12D332A912C669090093EEDB /* gui.h */; @@ -1374,23 +1436,6 @@ vrLen = 691; vrLoc = 4662; }; - 12D7F69412ECAF1900AFD4DA /* options.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = options.c; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/boot2/options.c; - sourceTree = ""; - }; - 12D7F69F12ECAF1C00AFD4DA /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 122A86CA12ECA817004312F4 /* gui.c */; - name = "gui.c: 1955"; - rLen = 12; - rLoc = 53018; - rType = 0; - vrLen = 625; - vrLoc = 52735; - }; 12D928BE12C7C8EB00269820 /* Makefile */ = { isa = PBXFileReference; lastKnownFileType = sourcecode.make; @@ -1432,16 +1477,6 @@ vrLen = 1189; vrLoc = 0; }; - 12E0FC2912ECDBD600F07BFF /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 12D7F69412ECAF1900AFD4DA /* options.c */; - name = "options.c: 1001"; - rLen = 8; - rLoc = 24766; - rType = 0; - vrLen = 797; - vrLoc = 24411; - }; 12E17AE612B2BA9B00607D8E /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 12B90A5712B2AE1300FE287A /* 915resolution.h */; @@ -1578,13 +1613,6 @@ vrLen = 991; vrLoc = 0; }; - 12F4456712E5DC0800121851 /* NVRAM.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = NVRAM.c; - path = /Users/slice/Projects/Chameleons/chameleon/branches/slice/i386/modules/NVRAM/NVRAM.c; - sourceTree = ""; - }; 12F7FF0012BB9F3200949DEC /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 12FC25E812BB825300E9CFA8 /* drivers.c */; Index: branches/slice/ChamMek/ChamMek.xcodeproj/slice.mode1v3 =================================================================== --- branches/slice/ChamMek/ChamMek.xcodeproj/slice.mode1v3 (revision 712) +++ branches/slice/ChamMek/ChamMek.xcodeproj/slice.mode1v3 (revision 713) @@ -281,7 +281,7 @@ PBXSmartGroupTreeModuleOutlineStateVisibleRectKey - {{0, 0}, {186, 636}} + {{0, 0}, {186, 647}} PBXTopSmartGroupGIDs @@ -293,7 +293,7 @@ GeometryConfiguration Frame - {{0, 0}, {203, 654}} + {{0, 0}, {203, 665}} GroupTreeTableConfiguration SCMStatusColumn @@ -302,7 +302,7 @@ 164 RubberWindowFrame - 272 183 952 695 0 0 1440 878 + 257 172 1021 706 0 0 1440 878 Module PBXSmartGroupTreeModule @@ -320,7 +320,7 @@ PBXProjectModuleGUID 1CE0B20306471E060097A5F4 PBXProjectModuleLabel - fake_efi.c + boot.c PBXSplitModuleInNavigatorKey Split0 @@ -328,11 +328,11 @@ PBXProjectModuleGUID 1CE0B20406471E060097A5F4 PBXProjectModuleLabel - fake_efi.c + boot.c _historyCapacity 0 bookmark - 1217945C12EDC36400F271E6 + 1255F81312F03ED000CE7802 history 12121ED112B261EA00207E55 @@ -396,7 +396,6 @@ 12D332AA12C669090093EEDB 1265C97712C7554E0050D02E 12F1147112C7A41D0064D7EE - 12C672F312C7C6BE0058B09B 12C672F512C7C6BE0058B09B 12FE983612C7CEEB001B1702 12FE984A12C7E11C001B1702 @@ -409,17 +408,18 @@ 12D64B9F12D8EA0A00A1FE07 12E8842612D8F833004C76C8 1223EF9012E5D63A0019EC66 - 1271587812EA1C6400E3013B 12715CDF12EA253100E3013B 12715CE012EA253100E3013B 122A869712EC5429004312F4 122A869812EC5429004312F4 122A86C612ECA817004312F4 - 12D7F69F12ECAF1C00AFD4DA - 12E0FC2912ECDBD600F07BFF - 1217945912EDC36400F271E6 - 1217945A12EDC36400F271E6 - 1217945312EDC35E00F271E6 + 126C766312EEF67F00BDB81E + 125437C812EF1E99007175C8 + 125437CA12EF1E99007175C8 + 125437CB12EF1E99007175C8 + 12569C8612F0115B005A9113 + 1255F81112F03ED000CE7802 + 1255F81212F03ED000CE7802 SplitCount @@ -431,14 +431,14 @@ GeometryConfiguration Frame - {{0, 0}, {744, 267}} + {{0, 0}, {813, 432}} RubberWindowFrame - 272 183 952 695 0 0 1440 878 + 257 172 1021 706 0 0 1440 878 Module PBXNavigatorGroup Proportion - 267pt + 432pt ContentConfiguration @@ -451,18 +451,18 @@ GeometryConfiguration Frame - {{0, 272}, {744, 382}} + {{0, 437}, {813, 228}} RubberWindowFrame - 272 183 952 695 0 0 1440 878 + 257 172 1021 706 0 0 1440 878 Module XCDetailModule Proportion - 382pt + 228pt Proportion - 744pt + 813pt Name @@ -477,9 +477,9 @@ TableOfContents - 1217944E12EDC2DF00F271E6 + 1255F81512F03ED000CE7802 1CE0B1FE06471DED0097A5F4 - 1217944F12EDC2DF00F271E6 + 1255F81612F03ED000CE7802 1CE0B20306471E060097A5F4 1CE0B20506471E060097A5F4 @@ -617,12 +617,12 @@ 5 WindowOrderList - 1C530D57069F1CE1000CFCEE + 1CD10A99069EF8BA00B06720 12C26D3512B0DDFC00AF7F4B /Users/slice/Projects/Chameleons/chameleon/branches/slice/ChamMek/ChamMek.xcodeproj WindowString - 272 183 952 695 0 0 1440 878 + 257 172 1021 706 0 0 1440 878 WindowToolsV3 @@ -699,7 +699,7 @@ TableOfContents 12C26D3512B0DDFC00AF7F4B - 1217945012EDC2DF00F271E6 + 1255F81712F03ED000CE7802 1CD0528F0623707200166675 XCMainBuildResultsModuleGUID @@ -821,13 +821,13 @@ TableOfContents 1CD10A99069EF8BA00B06720 - 120C1F1612ED82A000DC399E + 1255F81812F03ED000CE7802 1C162984064C10D400B95A72 - 120C1F1712ED82A000DC399E - 120C1F1812ED82A000DC399E - 120C1F1912ED82A000DC399E - 120C1F1A12ED82A000DC399E - 120C1F1B12ED82A000DC399E + 1255F81912F03ED000CE7802 + 1255F81A12F03ED000CE7802 + 1255F81B12F03ED000CE7802 + 1255F81C12F03ED000CE7802 + 1255F81D12F03ED000CE7802 ToolbarConfiguration xcode.toolbar.config.debugV3 @@ -854,14 +854,12 @@ Dock - BecomeActive - ContentConfiguration PBXProjectModuleGUID 1CDD528C0622207200134675 PBXProjectModuleLabel - fake_efi.c + StatusBarVisibility @@ -870,7 +868,7 @@ Frame {{0, 0}, {1109, 510}} RubberWindowFrame - 203 62 1109 816 0 0 1440 878 + 238 61 1109 816 0 0 1440 878 Module PBXNavigatorGroup @@ -882,6 +880,8 @@ 510pt + BecomeActive + ContentConfiguration PBXProjectModuleGUID @@ -894,7 +894,7 @@ Frame {{0, 515}, {1109, 260}} RubberWindowFrame - 203 62 1109 816 0 0 1440 878 + 238 61 1109 816 0 0 1440 878 Module PBXProjectFindModule @@ -917,13 +917,13 @@ TableOfContents 1C530D57069F1CE1000CFCEE - 1217945712EDC35E00F271E6 - 1217945812EDC35E00F271E6 + 123D099F12F015ED00D5CB48 + 123D09A012F015ED00D5CB48 1CDD528C0622207200134675 1CD0528E0623707200166675 WindowString - 203 62 1109 816 0 0 1440 878 + 238 61 1109 816 0 0 1440 878 WindowToolGUID 1C530D57069F1CE1000CFCEE WindowToolIsVisible Index: branches/slice/CHANGES =================================================================== --- branches/slice/CHANGES (revision 712) +++ branches/slice/CHANGES (revision 713) @@ -1,4 +1,8 @@ Slice: +rev712 +- correct module system as Meklort did to be Symbols.dylib embedded. +- return acpi_patcher to main sources to exclude obligatory module +- correct modules.c procedure register_hook_callback. rev692 - add ATI 5xxx Enabler module on Kabyl's sources (not checked) - corrections to open standards: EFI, UUID, SMBIOS, ACPI, EDID