diff --git a/Hackintool.xcodeproj/project.pbxproj b/Hackintool.xcodeproj/project.pbxproj
index 432cd4bf..14d016b2 100644
--- a/Hackintool.xcodeproj/project.pbxproj
+++ b/Hackintool.xcodeproj/project.pbxproj
@@ -714,7 +714,7 @@
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
- CURRENT_PROJECT_VERSION = 0339;
+ CURRENT_PROJECT_VERSION = 0340;
DEVELOPMENT_TEAM = 5LGHPJM9ZR;
ENABLE_HARDENED_RUNTIME = NO;
ENABLE_STRICT_OBJC_MSGSEND = NO;
@@ -728,7 +728,7 @@
HEADER_SEARCH_PATHS = "$(SDKROOT)/usr/include/libxml2";
INFOPLIST_FILE = "Hackintool/Hackintool-Info.plist";
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks @executable_path/../Frameworks";
- MARKETING_VERSION = 3.3.9;
+ MARKETING_VERSION = 3.4.0;
PRODUCT_BUNDLE_IDENTIFIER = com.Headsoft.Hackintool;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -748,7 +748,7 @@
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
- CURRENT_PROJECT_VERSION = 0339;
+ CURRENT_PROJECT_VERSION = 0340;
DEVELOPMENT_TEAM = 5LGHPJM9ZR;
ENABLE_HARDENED_RUNTIME = NO;
ENABLE_STRICT_OBJC_MSGSEND = NO;
@@ -762,7 +762,7 @@
HEADER_SEARCH_PATHS = "$(SDKROOT)/usr/include/libxml2";
INFOPLIST_FILE = "Hackintool/Hackintool-Info.plist";
LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks @executable_path/../Frameworks";
- MARKETING_VERSION = 3.3.9;
+ MARKETING_VERSION = 3.4.0;
PRODUCT_BUNDLE_IDENTIFIER = com.Headsoft.Hackintool;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
diff --git a/Hackintool.xcodeproj/project.xcworkspace/xcuserdata/headsoft.xcuserdatad/UserInterfaceState.xcuserstate b/Hackintool.xcodeproj/project.xcworkspace/xcuserdata/headsoft.xcuserdatad/UserInterfaceState.xcuserstate
index f7e3a1cf..36e14edb 100644
Binary files a/Hackintool.xcodeproj/project.xcworkspace/xcuserdata/headsoft.xcuserdatad/UserInterfaceState.xcuserstate and b/Hackintool.xcodeproj/project.xcworkspace/xcuserdata/headsoft.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/Hackintool/AppDelegate.h b/Hackintool/AppDelegate.h
index 31e067e6..4977581e 100644
--- a/Hackintool/AppDelegate.h
+++ b/Hackintool/AppDelegate.h
@@ -77,6 +77,7 @@ typedef struct
bool InjectDeviceID;
bool USBPortLimit;
bool SpoofAudioDeviceID;
+ bool InjectFakeIGPU;
bool ShowInstalledOnly;
bool LSPCON_Enable;
bool LSPCON_AutoDetect;
@@ -320,6 +321,7 @@ typedef struct
@property (assign) IBOutlet NSButton *injectDeviceIDButton;
@property (assign) IBOutlet NSComboBox *injectDeviceIDComboBox;
@property (assign) IBOutlet NSButton *spoofAudioDeviceIDButton;
+@property (assign) IBOutlet NSButton *injectFakeIGPUButton;
@property (assign) IBOutlet NSButton *usbPortLimitButton;
@property (assign) IBOutlet NSButton *generatePatchButton;
@property (assign) IBOutlet NSTextView *patchOutputTextView;
@@ -422,7 +424,7 @@ typedef struct
- (bool)isConnectorHeadless;
- (NSString *)getIORegName:(NSString *)ioregName;
- (bool)tryGetACPIPath:(NSString *)ioregName acpiPath:(NSString **)acpiPath;
-- (void)getGPUDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary;
+- (bool)tryGetGPUDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary;
- (bool)tryGetPCIDeviceDictionaryFromIORegName:(NSString *)name pciDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary;
- (bool)tryGetPCIDeviceDictionaryFromClassCode:(NSNumber *)code pciDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary;
- (bool)tryGetAudioController:(NSNumber *)deviceID vendorID:(NSNumber *)vendorID audioDevice:(AudioDevice *)foundAudioDevice;
diff --git a/Hackintool/AppDelegate.m b/Hackintool/AppDelegate.m
index 0c3e76de..e9108548 100644
--- a/Hackintool/AppDelegate.m
+++ b/Hackintool/AppDelegate.m
@@ -978,6 +978,7 @@ - (void)updateSettingsGUI
[_fbPortLimitComboBox selectItemAtIndex:(_settings.FBPortCount > 0 ? _settings.FBPortCount - 1 : 0)];
[_injectDeviceIDButton setState:_settings.InjectDeviceID];
[_spoofAudioDeviceIDButton setState:_settings.SpoofAudioDeviceID];
+ [_injectFakeIGPUButton setState:_settings.InjectFakeIGPU];
[_usbPortLimitButton setState:_settings.USBPortLimit];
[_showInstalledOnlyButton setState:_settings.ShowInstalledOnly];
[_lspconEnableDriverButton setState:_settings.LSPCON_Enable];
@@ -1699,12 +1700,17 @@ - (void)getFakeGPUDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary
[*pciDeviceDictionary setObject:@"Intel Corporation" forKey:@"VendorName"];
}
-- (void)getGPUDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary
+- (bool)tryGetGPUDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary
{
if ([self tryGetPCIDeviceDictionaryFromIORegName:@"IGPU" pciDeviceDictionary:pciDeviceDictionary])
- return;
+ return true;
+
+ if (!_settings.InjectFakeIGPU)
+ return false;
+
+ [self getFakeGPUDeviceDictionary:pciDeviceDictionary];
- return [self getFakeGPUDeviceDictionary:pciDeviceDictionary];
+ return true;
}
- (bool)tryGetPCIDeviceDictionaryFromIORegName:(NSString *)name pciDeviceDictionary:(NSMutableDictionary **)pciDeviceDictionary
@@ -5511,6 +5517,7 @@ - (void)setDefaults
@(2), @"FBPortCount",
@NO, @"InjectDeviceID",
@NO, @"SpoofAudioDeviceID",
+ @NO, @"InjectFakeIGPU",
@NO, @"USBPortLimit",
@NO, @"ApplyCurrentPatches",
@(0), @"SelectedAudioDevice",
@@ -5568,6 +5575,7 @@ - (void)loadSettings
_settings.FBPortCount = (uint32_t)[defaults integerForKey:@"FBPortCount"];
_settings.InjectDeviceID = [defaults boolForKey:@"InjectDeviceID"];
_settings.SpoofAudioDeviceID = [defaults boolForKey:@"SpoofAudioDeviceID"];
+ _settings.InjectFakeIGPU = [defaults boolForKey:@"InjectFakeIGPU"];
_settings.USBPortLimit = [defaults boolForKey:@"USBPortLimit"];
_settings.ApplyCurrentPatches = [defaults boolForKey:@"ApplyCurrentPatches"];
_settings.ShowInstalledOnly = [defaults boolForKey:@"ShowInstalledOnly"];
@@ -5621,6 +5629,7 @@ - (void)saveSettings
[defaults setBool:_settings.InjectDeviceID forKey:@"InjectDeviceID"];
[defaults setBool:_settings.USBPortLimit forKey:@"USBPortLimit"];
[defaults setBool:_settings.SpoofAudioDeviceID forKey:@"SpoofAudioDeviceID"];
+ [defaults setBool:_settings.InjectFakeIGPU forKey:@"InjectFakeIGPU"];
[defaults setBool:_settings.ApplyCurrentPatches forKey:@"ApplyCurrentPatches"];
[defaults setBool:_settings.ShowInstalledOnly forKey:@"ShowInstalledOnly"];
[defaults setBool:_settings.LSPCON_Enable forKey:@"LSPCON_Enable"];
@@ -7837,6 +7846,10 @@ - (IBAction)patchButtonClicked:(id)sender
{
_settings.SpoofAudioDeviceID = [_spoofAudioDeviceIDButton state];
}
+ else if (sender == _injectFakeIGPUButton)
+ {
+ _settings.InjectFakeIGPU = [_injectFakeIGPUButton state];
+ }
else if (sender == _usbPortLimitButton)
{
_settings.USBPortLimit = [_usbPortLimitButton state];
@@ -8383,7 +8396,8 @@ - (BOOL)application:(NSApplication *)sender openFile:(NSString *)filename
NSMutableDictionary *propertyDictionary = ([self isBootloaderOpenCore] ? [OpenCore getDevicePropertiesDictionaryWith:configDictionary typeName:@"Add"] : [Clover getDevicesPropertiesDictionaryWith:configDictionary]);
NSMutableDictionary *pciDeviceDictionary;
- [self getGPUDeviceDictionary:&pciDeviceDictionary];
+ if (![self tryGetGPUDeviceDictionary:&pciDeviceDictionary])
+ return NO;
NSString *devicePath = [pciDeviceDictionary objectForKey:@"DevicePath"];
NSMutableDictionary *gpuProperties = [propertyDictionary objectForKey:devicePath];
diff --git a/Hackintool/Base.lproj/MainMenu.xib b/Hackintool/Base.lproj/MainMenu.xib
index b3d17ccf..6beb54cf 100644
--- a/Hackintool/Base.lproj/MainMenu.xib
+++ b/Hackintool/Base.lproj/MainMenu.xib
@@ -1018,7 +1018,7 @@
-
+
@@ -1174,7 +1174,7 @@
-
+
@@ -1394,7 +1394,7 @@
-
+
@@ -1607,7 +1607,7 @@
-
+
@@ -1852,7 +1852,7 @@
-
+
@@ -2615,7 +2615,7 @@
-
+
@@ -2824,7 +2824,7 @@
-
+
@@ -2921,7 +2921,7 @@
-
+
@@ -3158,11 +3158,11 @@
-
+
-
+
-
+
@@ -3453,30 +3453,30 @@
-
-
+
@@ -3536,6 +3536,17 @@
+
+
+
+
+
+
+
+
+
+
+
@@ -8703,6 +8714,7 @@
+
diff --git a/Hackintool/FBUtilities.h b/Hackintool/FBUtilities.h
index 28f4afbc..01e3727c 100644
--- a/Hackintool/FBUtilities.h
+++ b/Hackintool/FBUtilities.h
@@ -620,7 +620,8 @@ void getIGPUProperties(AppDelegate *appDelegate, NSMutableDictionary *configDict
NSMutableDictionary *devicesPropertiesDictionary = ([appDelegate isBootloaderOpenCore] ? [OpenCore getDevicePropertiesDictionaryWith:configDictionary typeName:@"Add"] : [Clover getDevicesPropertiesDictionaryWith:configDictionary]);
NSMutableDictionary *pciDeviceDictionary;
- [appDelegate getGPUDeviceDictionary:&pciDeviceDictionary];
+ if (![appDelegate tryGetGPUDeviceDictionary:&pciDeviceDictionary])
+ return;
NSString *deviceName = [pciDeviceDictionary objectForKey:@"DeviceName"];
NSString *className = [pciDeviceDictionary objectForKey:@"ClassName"];
diff --git a/Hackintool/FBUtilities.m b/Hackintool/FBUtilities.m
index e4b16864..4bdb1fe6 100644
--- a/Hackintool/FBUtilities.m
+++ b/Hackintool/FBUtilities.m
@@ -251,7 +251,8 @@ void injectUseIntelHDMI(AppDelegate *appDelegate, NSMutableDictionary *configDic
NSMutableDictionary *devicesPropertiesDictionary = ([appDelegate isBootloaderOpenCore] ? [OpenCore getDevicePropertiesDictionaryWith:configDictionary typeName:@"Add"] : [Clover getDevicesPropertiesDictionaryWith:configDictionary]);
NSMutableDictionary *igpuDeviceDictionary;
- [appDelegate getGPUDeviceDictionary:&igpuDeviceDictionary];
+ if (![appDelegate tryGetGPUDeviceDictionary:&igpuDeviceDictionary])
+ return;
NSString *devicePath = [igpuDeviceDictionary objectForKey:@"DevicePath"];
NSMutableDictionary *deviceDictionary = [devicesPropertiesDictionary objectForKey:devicePath];
diff --git a/Resources/Kexts/kexts.plist b/Resources/Kexts/kexts.plist
index afec1251..109fbec1 100644
--- a/Resources/Kexts/kexts.plist
+++ b/Resources/Kexts/kexts.plist
@@ -350,12 +350,24 @@
BundleID
IntelMausi
Description
- OS X driver for Intel onboard LAN
+ OS X driver for Intel onboard LAN (Acidanthera)
ProjectUrl
https://github.com/acidanthera/IntelMausi
Type
Kext
+
+ Name
+ IntelMausiEthernet
+ BundleID
+ IntelMausiEthernet
+ Description
+ OS X driver for Intel onboard LAN (Mieze)
+ ProjectUrl
+ https://github.com/mieze/IntelMausiEthernet
+ Type
+ Kext
+
Name
LiluFriend