Index: trunk/ChameleonPrefPane/Sources/AdvancedSetupController.h =================================================================== --- trunk/ChameleonPrefPane/Sources/AdvancedSetupController.h (revision 61) +++ trunk/ChameleonPrefPane/Sources/AdvancedSetupController.h (revision 62) @@ -45,7 +45,7 @@ IBOutlet NSTextField* mWakeImageText; IBOutlet NSButton* mSystemId; IBOutlet NSTextField* mSystemIdText; - IBOutlet NSButton* mRestartFix; + IBOutlet NSButton* mRestartFix; } - (IBAction) onCheckButtonChange: (NSButton*) sender; Index: trunk/ChameleonPrefPane/Sources/ShellProcess.cpp =================================================================== --- trunk/ChameleonPrefPane/Sources/ShellProcess.cpp (revision 61) +++ trunk/ChameleonPrefPane/Sources/ShellProcess.cpp (revision 62) @@ -167,8 +167,6 @@ { std::string diskLabel(trim(label)); bool found=false; - if (strstr(fsType,"NTFS")) - disk=disk+10; // early bail out if we found what we need: DON't make any assumption // that Windows is the name of WIN32 bootable disk dir ... if ( Index: trunk/ChameleonPrefPane/Sources/PeripheralsController.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/PeripheralsController.mm (revision 61) +++ trunk/ChameleonPrefPane/Sources/PeripheralsController.mm (revision 62) @@ -30,7 +30,7 @@ BootProp::instance().addOptionDesc(mUSBBusFix, nil, OptionYesNo, "USBBusFix", "No"); BootProp::instance().addOptionDesc(mEHCIacquire, nil, OptionYesNo, "EHCIacquire", "No"); BootProp::instance().addOptionDesc(mUHCIreset, nil,OptionYesNo, "UHCIreset", "No"); - BootProp::instance().addOptionDesc(mEthernetBuiltIn, nil, OptionYesNo, "EthernetBuiltIn", "No"); + BootProp::instance().addOptionDesc(mPciRoot, mPciRootText, OptionString, "PciRoot", ""); } //-------------------------------------------------------------------------- Index: trunk/ChameleonPrefPane/Sources/BootFlagsController.mm =================================================================== --- trunk/ChameleonPrefPane/Sources/BootFlagsController.mm (revision 61) +++ trunk/ChameleonPrefPane/Sources/BootFlagsController.mm (revision 62) @@ -36,6 +36,7 @@ BootProp::instance().addOptionDesc(mRescan, nil, OptionYesNo, "Rescan", "No"); BootProp::instance().addOptionDesc(mRescanPrompt, nil, OptionYesNo, "Rescan Prompt", "No"); BootProp::instance().addOptionDesc(mRescanSingleDrive, nil, OptionYesNo, "Rescan SingleDrive", "No"); + BootProp::instance().addOptionDesc(mUseGUI, nil, OptionYesNo, "GUI", "Yes"); } //-------------------------------------------------------------------------- Index: trunk/ChameleonPrefPane/Sources/PropertyList.cpp =================================================================== --- trunk/ChameleonPrefPane/Sources/PropertyList.cpp (revision 61) +++ trunk/ChameleonPrefPane/Sources/PropertyList.cpp (revision 62) @@ -219,9 +219,14 @@ //-------------------------------------------------------------------------- static const char * CfsToCs(CFStringRef inRef) { - static char buffer[512]=""; - if(CFStringGetFileSystemRepresentation (inRef, buffer, sizeof(buffer))) - return buffer; + static char *buffer=NULL; + CFIndex len = CFStringGetLength(inRef); + if (buffer) { + delete[] buffer; + } + buffer = new char[len+1]; + if(CFStringGetFileSystemRepresentation (inRef, buffer, len+1)) + return buffer; return ""; } Index: trunk/ChameleonPrefPane/Sources/PeripheralsController.h =================================================================== --- trunk/ChameleonPrefPane/Sources/PeripheralsController.h (revision 61) +++ trunk/ChameleonPrefPane/Sources/PeripheralsController.h (revision 62) @@ -28,7 +28,8 @@ IBOutlet NSButton* mUHCIreset; IBOutlet NSButton* mEthernetBuiltIn; - + IBOutlet NSButton* mPciRoot; + IBOutlet NSTextField* mPciRootText; } - (IBAction) onCheckButtonChange: (NSButton*) sender; Index: trunk/ChameleonPrefPane/Sources/BootFlagsController.h =================================================================== --- trunk/ChameleonPrefPane/Sources/BootFlagsController.h (revision 61) +++ trunk/ChameleonPrefPane/Sources/BootFlagsController.h (revision 62) @@ -28,6 +28,7 @@ IBOutlet NSButton* mRescan; IBOutlet NSButton* mRescanPrompt; IBOutlet NSButton* mRescanSingleDrive; + IBOutlet NSButton* mUseGUI; } - (IBAction) onCheckButtonChange: (NSButton*) sender; Index: trunk/ChameleonPrefPane/Info.plist =================================================================== --- trunk/ChameleonPrefPane/Info.plist (revision 61) +++ trunk/ChameleonPrefPane/Info.plist (revision 62) @@ -17,7 +17,7 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 2.0 b6 + 2.0 b7 CFBundleSignature ???? CFBundleVersion Index: trunk/ChameleonPrefPane/EfiInjectController.h =================================================================== --- trunk/ChameleonPrefPane/EfiInjectController.h (revision 0) +++ trunk/ChameleonPrefPane/EfiInjectController.h (revision 62) @@ -0,0 +1,27 @@ +// +// EfiInject.h +// ChameleonPrefPane +// +// Created by Rekursor on 1/26/10. +// + +#import +#import + + + + +// TabView subpane controller definition +@interface EfiInjectController : PreferencesControllerBase +{ + IBOutlet NSButton* mEfiInject; + IBOutlet NSTextField* mEfiInjectText; +} + +- (IBAction) onCheckButtonChange: (NSButton*) sender; +- (IBAction) onTextFiedChange: (NSTextField*) sender; +- (void) setDefaultsValues: (NSMutableDictionary*) dict; + ++ (EfiInjectController *)instance; + +@end Index: trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj =================================================================== --- trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj (revision 61) +++ trunk/ChameleonPrefPane/ChameleonPrefPane.xcodeproj/project.pbxproj (revision 62) @@ -45,6 +45,8 @@ 01B0E8251108B87A00ACF21B /* Windows.png in Resources */ = {isa = PBXBuildFile; fileRef = 01B0E81F1108B87A00ACF21B /* Windows.png */; }; 01B0E8271108B89100ACF21B /* CREDITS in Resources */ = {isa = PBXBuildFile; fileRef = 01B0E8261108B89100ACF21B /* CREDITS */; }; 01B0E8291108B89D00ACF21B /* version in Resources */ = {isa = PBXBuildFile; fileRef = 01B0E8281108B89D00ACF21B /* version */; }; + 01C48DBD110F5B030089AD71 /* EfiInjectController.h in Headers */ = {isa = PBXBuildFile; fileRef = 01C48DBB110F5B030089AD71 /* EfiInjectController.h */; }; + 01C48DBE110F5B030089AD71 /* EfiInjectController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 01C48DBC110F5B030089AD71 /* EfiInjectController.mm */; }; 01D5D9C6110D723200AAE2C3 /* file_util.h in Headers */ = {isa = PBXBuildFile; fileRef = 01D5D9C5110D723200AAE2C3 /* file_util.h */; }; 01D5DBE0110DA3CD00AAE2C3 /* GroupControllerProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = 01D5DBDF110DA3CD00AAE2C3 /* GroupControllerProtocol.h */; }; 01E0E9511108F9ED004EF6E8 /* TODO in Resources */ = {isa = PBXBuildFile; fileRef = 01E0E9501108F9ED004EF6E8 /* TODO */; }; @@ -94,6 +96,8 @@ 01B0E81F1108B87A00ACF21B /* Windows.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Windows.png; path = Resources/Windows.png; sourceTree = ""; }; 01B0E8261108B89100ACF21B /* CREDITS */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = CREDITS; sourceTree = ""; }; 01B0E8281108B89D00ACF21B /* version */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = version; path = bin/version; sourceTree = ""; }; + 01C48DBB110F5B030089AD71 /* EfiInjectController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EfiInjectController.h; sourceTree = ""; }; + 01C48DBC110F5B030089AD71 /* EfiInjectController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EfiInjectController.mm; sourceTree = ""; }; 01D5D9C5110D723200AAE2C3 /* file_util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = file_util.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/file_util.h; sourceTree = SOURCE_ROOT; }; 01D5DBDF110DA3CD00AAE2C3 /* GroupControllerProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GroupControllerProtocol.h; path = ../../../../../../devl/OSX/voodoo/chameleonApplications/trunk/ChameleonPrefPane/Sources/GroupControllerProtocol.h; sourceTree = SOURCE_ROOT; }; 01E0E9501108F9ED004EF6E8 /* TODO */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TODO; sourceTree = SOURCE_ROOT; }; @@ -178,6 +182,8 @@ 019930FD110A0E6F003B056E /* PeripheralsController.mm */, 01993113110A0EB9003B056E /* AdvancedSetupController.h */, 01993114110A0EB9003B056E /* AdvancedSetupController.mm */, + 01C48DBB110F5B030089AD71 /* EfiInjectController.h */, + 01C48DBC110F5B030089AD71 /* EfiInjectController.mm */, 01001001110EBB2A00221234 /* CustomTableView.h */, 01001002110EBB2A00221234 /* CustomTableView.mm */, 01D5D9C5110D723200AAE2C3 /* file_util.h */, @@ -259,6 +265,7 @@ 01D5D9C6110D723200AAE2C3 /* file_util.h in Headers */, 01D5DBE0110DA3CD00AAE2C3 /* GroupControllerProtocol.h in Headers */, 01001003110EBB2A00221234 /* CustomTableView.h in Headers */, + 01C48DBD110F5B030089AD71 /* EfiInjectController.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -354,6 +361,7 @@ 01AF5E69110C1C6800816AA8 /* string_util.cpp in Sources */, 01AF5E6C110C1C9C00816AA8 /* KernOptionsParser.cpp in Sources */, 01001004110EBB2A00221234 /* CustomTableView.mm in Sources */, + 01C48DBE110F5B030089AD71 /* EfiInjectController.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; Index: trunk/ChameleonPrefPane/bin/OSX105/Chameleon.zip =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/ChameleonPrefPane/bin/OSX106/Chameleon.zip =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Index: trunk/ChameleonPrefPane/bin/version =================================================================== --- trunk/ChameleonPrefPane/bin/version (revision 61) +++ trunk/ChameleonPrefPane/bin/version (revision 62) @@ -1 +1 @@ -2.0.b6 +2.0.b7 Index: trunk/ChameleonPrefPane/EfiInjectController.mm =================================================================== --- trunk/ChameleonPrefPane/EfiInjectController.mm (revision 0) +++ trunk/ChameleonPrefPane/EfiInjectController.mm (revision 62) @@ -0,0 +1,58 @@ +// +// EfiInject.mm +// ChameleonPrefPane +// +// Created by Rekursor on 1/26/10. +// + +#import "EfiInjectController.h" + + +static EfiInjectController *gInstance = NULL; + +@implementation EfiInjectController +//-------------------------------------------------------------------------- +- (id) init +{ + self = [super init]; + return (gInstance = self); +} + +//-------------------------------------------------------------------------- +- (void) addOptionsDesc +{ + BootProp::instance().addOptionDesc(mEfiInject, mEfiInjectText, OptionString, "device-properties", ""); +} + +//-------------------------------------------------------------------------- +-(void) setDefaultsValues: (NSMutableDictionary*) dict +{ +} + +//-------------------------------------------------------------------------- +- (void) refreshLockStates +{ + // automatic, nothing to do +} + +//-------------------------------------------------------------------------- +-(void) loadOptionsFromPreferencesFile: (NSMutableDictionary*) dict +{ + +} + +//-------------------------------------------------------------------------- +-(IBAction) onCheckButtonChange: (NSButton*) sender +{ + [self handleSender: sender]; +} + +//-------------------------------------------------------------------------- +-(IBAction) onTextFiedChange: (NSTextField*) sender +{ + [self handleSender: sender]; +} + ++ (EfiInjectController *)instance { return(gInstance);} + +@end Index: trunk/ChameleonPrefPane/English.lproj/Chameleon.xib =================================================================== --- trunk/ChameleonPrefPane/English.lproj/Chameleon.xib (revision 61) +++ trunk/ChameleonPrefPane/English.lproj/Chameleon.xib (revision 62) @@ -58,7 +58,7 @@ 268 - {{13, 5}, {610, 46}} + {{11, 5}, {612, 46}} SFAuthorizationView @@ -85,7 +85,7 @@ 72482368 138544128 - Version 2.0 b6 + Version 2.0 b7 LucidaGrande 11 @@ -1307,6 +1307,28 @@ 25 + + + 12 + {{410, 12}, {72, 23}} + + YES + + 67239424 + 0 + Use GUI + + + 1211912703 + 2 + + + + + 200 + 25 + + {{1, 1}, {510, 115}} @@ -1725,11 +1747,11 @@ - {{1, 1}, {433, 44}} + {{1, 1}, {610, 44}} - {{14, 52}, {435, 60}} + {{14, 80}, {612, 60}} {0, 0} @@ -1781,12 +1803,51 @@ 25 + + + 268 + {{165, 12}, {81, 23}} + + YES + + 67239424 + 0 + PciRoot + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 12 + {{252, 14}, {25, 22}} + + YES + + -1536033215 + 272630784 + + + + YES + + + + - {{1, 1}, {158, 43}} + {{1, 1}, {610, 43}} - {{466, 52}, {160, 59}} + {{14, 10}, {612, 59}} {0, 0} @@ -2536,6 +2597,94 @@ + + Item 5 + + + 256 + + YES + + + 36 + + YES + + + 256 + + YES + + + 268 + {{18, 14}, {536, 145}} + + YES + + -1805517311 + 272629760 + + + + YES + + + + + + + 268 + {{16, 170}, {132, 18}} + + YES + + 67239424 + 0 + Device Properties + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {572, 196}} + + + + {{34, 45}, {574, 212}} + + {0, 0} + + 67239424 + 0 + EFI injection + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {640, 267}} + + EFI Inject + + + @@ -2593,7 +2742,7 @@ {1.79769e+308, 1.79769e+308} - + 256 YES @@ -2602,7 +2751,6 @@ 268 {{245, 218}, {38, 17}} - YES 68288064 @@ -2622,7 +2770,6 @@ 268 {{182, 218}, {52, 17}} - YES 68288064 @@ -2639,7 +2786,6 @@ 268 {{46, 49}, {373, 154}} - YES -1805517311 @@ -2658,8 +2804,6 @@ {464, 255} - - {{0, 0}, {1920, 1058}} {1.79769e+308, 1.79769e+308} @@ -2679,6 +2823,9 @@ AdvancedSetupController + + EfiInjectController + @@ -3835,6 +3982,86 @@ 767 + + + onCheckButtonChange: + + + + 770 + + + + onTextFiedChange: + + + + 773 + + + + mPciRoot + + + + 774 + + + + mPciRootText + + + + 775 + + + + onCheckButtonChange: + + + + 778 + + + + mUseGUI + + + + 779 + + + + mEfiInject + + + + 789 + + + + mEfiInjectText + + + + 790 + + + + onTextFiedChange: + + + + 791 + + + + onCheckButtonChange: + + + + 792 + @@ -3873,8 +4100,8 @@ YES + - @@ -3901,10 +4128,11 @@ YES - + + @@ -4148,6 +4376,7 @@ + @@ -4375,9 +4604,9 @@ YES + - @@ -4808,24 +5037,12 @@ YES + + - 538 - - - YES - - - - - - 539 - - - - 540 @@ -5319,6 +5536,123 @@ + + 538 + + + YES + + + + + + 539 + + + + + 768 + + + YES + + + + + + 769 + + + + + 771 + + + YES + + + + + + 772 + + + + + 776 + + + YES + + + + + + 777 + + + + + 780 + + + YES + + + + + + 781 + + + YES + + + + + + 788 + + + + + 793 + + + YES + + + + + + + 784 + + + YES + + + + + + 785 + + + + + 786 + + + YES + + + + + + 787 + + + @@ -5588,6 +5922,21 @@ 764.IBAttributePlaceholdersKey 764.IBPluginDependency 765.IBPluginDependency + 768.IBAttributePlaceholdersKey + 768.IBPluginDependency + 769.IBPluginDependency + 771.IBAttributePlaceholdersKey + 771.IBPluginDependency + 772.IBPluginDependency + 776.IBAttributePlaceholdersKey + 776.IBPluginDependency + 777.IBPluginDependency + 784.IBPluginDependency + 785.IBPluginDependency + 786.IBAttributePlaceholdersKey + 786.IBPluginDependency + 787.IBPluginDependency + 788.IBPluginDependency 99.IBAttributePlaceholdersKey 99.IBPluginDependency @@ -5613,9 +5962,9 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{195, 183}, {668, 368}} + {{197, 183}, {668, 368}} com.apple.InterfaceBuilder.CocoaPlugin - {{195, 183}, {668, 368}} + {{197, 183}, {668, 368}} {224.664, 10} @@ -6328,6 +6677,49 @@ ToolTip ToolTip + + Override the automatic pciroot detection, and manually inject a pciroot number at boot time + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Graphics Mode="WIDTHxHEIGHTxDEPTH@FREQ). Works only if you have a VESA 3.0 compliant card (default= No custom resolution is selected) + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable GUI at boot time. (Enabled by Default) + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Sets additional device properties like gfx card efi injection, network . + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip Click on a partition to make it the default boot partition. @@ -6351,7 +6743,7 @@ - 767 + 793 @@ -6472,6 +6864,7 @@ mSingleUser mTimeOut mTimeOutText + mUseGUI mVerbose mWait @@ -6489,6 +6882,7 @@ NSTextField NSButton NSButton + NSButton @@ -6615,6 +7009,40 @@ + EfiInjectController + PreferencesControllerBase + + YES + + YES + onCheckButtonChange: + onTextFiedChange: + + + YES + NSButton + NSTextField + + + + YES + + YES + mEfiInject + mEfiInjectText + + + YES + NSButton + NSTextField + + + + IBProjectSource + EfiInjectController.h + + + FirstResponder NSObject @@ -6657,6 +7085,8 @@ mGraphicsMode mGraphicsModeText mLegacyLogo + mPciRoot + mPciRootText mUHCIreset mUSBBusFix mVBIOS @@ -6673,9 +7103,11 @@ NSTextField NSButton NSButton + NSTextField NSButton NSButton NSButton + NSButton NSTextField