335 Commits

Author SHA1 Message Date
John Davis
cde37269aa
VBIOS patching via ForceResolution option (#144)
* BiosVideo: Initial Intel patching functions

* BiosVideo: Implement patch protocol

* BiosVideo: Read EDID from VBE

* BiosVideo: Fix previous commits

* OpenDuet: Fix Windows builds

* BiosVideo: Fix MSVC warnings

* BiosVideo: Pull max resolution from EDID

* BiosVideo: Patch based on PCI vendor ID

* BiosVideo: Fix more MSVC warnings

* OcMiscLib: Try to fix OpenDuet MSVC compilation

* BiosVideo: Fix incorrect return status

* OpenDuet: Create OcDebugLogLibNull library

* Protocol: Rename OC_VBIOS_PATCH_PROTOCOL to OC_FORCE_RESOLUTION_PROTOCOL

* OpenCore: Add ForceResolution option

* BiosVideo: Fix consistency of height/width parameters

* Includes: Mark height/width as optional

* BiosVideo: Cleanup misc issues

* Docs: Add support note
2020-10-26 19:18:06 -05:00
John Davis
bf043cae2e
Custom memory properties (#139)
* OcSmbiosLib: Implement custom memory configurations

* OcSmbiosLib: Fix previous commit

* OcSmbiosLib: Change to 0-based indexes

* Docs: Update manual and sample configs
2020-10-17 17:33:37 -05:00
Goldfish64
f18a2a73c1 OcAppleKernelLib: Add LegacyCommpage quirk
Replaces default 64-bit commpage bcopy implementation with one that does not require SSSE3, required for legacy platforms without SSSE3. Resolves a "commpage no match for last" panic due to no available bcopy implementations.
2020-10-03 19:43:35 -05:00
Goldfish64
c12c2732cf OpenCoreKernel: Fix i386-user32 behavior 2020-10-03 11:32:31 -05:00
Goldfish64
6e59947c23 OpenCoreKernel: Correct prelinkedkernel and i386-user32 behavior
Prelinkedkernel under 10.4/10.5 is unsupported; block this if KernelCache=Auto. Additionally, we do not want to use KernelArch=i386-user32 under 10.7, or 10.4/10.5 on EFI64. See https://github.com/acidanthera/bugtracker/issues/358#issuecomment-702854967 for additional details.
2020-10-03 10:04:03 -05:00
PMheart
d5c140bfef
OcAppleKernelLib: Added MinKernel/MaxKernel to Emulate (#128)
Also, DummyPowerManagement, usually paired with CPUID spoofing, has been moved to Emulate section.
2020-10-03 13:10:24 +08:00
PMheart
e93624ab16
OcAppleKernelLib: Added ExtendBTFeatureFlags quirk (#126)
This quirk substitutes BT4LEContinuityFixup which actually fails to function properly due to late patching.
2020-10-02 11:31:03 +08:00
John Davis
676ef93d9d
OcAppleKernelLib: Add 32-bit prelinking support (#122) 2020-09-29 12:41:37 +03:00
Alex James
266b709c12 OpenCorePlatform: Add SystemMemoryStatus option to Generic 2020-09-29 10:59:27 +03:00
coolhaxor
fdfdc7e0d8 OcMemoryLib: Implement Type for ReservedMemory 2020-09-23 22:30:33 +03:00
John Davis
74062d4e0f
OcAppleKernelLib: Add 32-bit Mach-O and patching support (#118) 2020-09-13 22:57:10 +03:00
Goldfish64
c559acd81c OcAppleKernelLib: Do not abort if Info.plist is missing
Some versions of 10.4 may have kexts that do not have an Info.plist, but have plugins. We still want to scan any plugins in this case.
2020-09-12 18:52:22 -05:00
vit9696
d3cf117c86 OcApfsLib: Disconnect the drives we connect to with UnblockFsConnect
closes acidanthera/bugtracker#1128
2020-09-11 14:43:55 +03:00
vit9696
78f0907c03 OpenCorePlatform: Added ProcessorType option to Generic
This allows custom CPU names. Do not use this is the detection
is wrong for you but rather bugreport with CPUID dumps.
2020-09-10 19:00:12 +03:00
vit9696
2bde94afc5 OcAppleKernelLib: Added DisableLinkeditJettison quirk
This quirk is similar to keepsyms=1 but is potentially less intrusive.
Lilu needs to access __LINKEDIT to do symbol solving in the kernel.
2020-09-06 03:11:45 +03:00
vit9696
acd769a557 OcBootManagementLib: Fix recovery-boot-mode handling 2020-08-31 16:37:57 +03:00
Goldfish64
73533f88e2 OpenCoreKernel: Implement arch filtering for Block 2020-08-30 11:16:34 -05:00
Goldfish64
d5a3013d15 OpenCoreKernelPatch: Fix typo in previous commit 2020-08-30 10:57:56 -05:00
Goldfish64
2bddd41443 OpenCoreKernel: Implement arch filtering for injection and patching 2020-08-30 10:55:09 -05:00
vit9696
29d5b9d781 OcAfterBootCompatLib: Fix VMware compatibility with Apple Secure Boot 2020-08-30 17:59:28 +03:00
Goldfish64
6ba372fe50 OpenCoreKernel: Fix EM64T check 2020-08-29 19:57:46 -05:00
Goldfish64
1eaab9ad75 OpenCoreKernel: Fix 64-bit detection behavior 2020-08-29 19:53:13 -05:00
vit9696
250c1eefae OpenCoreKernel: Improve KernelArch implementation 2020-08-29 16:18:59 +03:00
vit9696
b5c74d3e62 OcBootManagementLib: Add some callback stubs for image loader 2020-08-29 10:45:17 +03:00
vit9696
0c2e97748d OcBootManagementLib: Implement EfiBoot kernel capability detection 2020-08-29 07:01:08 +03:00
John Davis
8b452306e5
OpenCoreKernel: Implement force injection of system kexts (#111) 2020-08-27 18:52:53 +03:00
Goldfish64
d2230ec7eb OpenCorePlatform: Properly copy SMBIOS product name 2020-08-26 10:18:57 -05:00
Goldfish64
b217cd52d2 OpenCorePlatform: Allow for NULL product names in config 2020-08-26 09:55:56 -05:00
Goldfish64
8e2755f29c OpenCoreKernel: Implement kernelcache fuzzy matching 2020-08-25 05:47:41 +03:00
vit9696
6b6304aa74 Docs: Improve multikernel documentation 2020-08-25 05:47:20 +03:00
Download-Fritz
a97b74e83c
OpenCore: Use direct PE loading for Secure Boot (#108)
Implement and integrate a PE image loader to circumvent UEFI Secure Boot when Apple Secure Boot is used.
2020-08-24 12:52:34 +02:00
Goldfish64
28884d1456 OpenCoreKernel: Only calculate hash if SB is enabled 2020-08-23 13:41:32 -05:00
Goldfish64
fed62b1e9e OpenCoreKernel: Return on arch mismatch error 2020-08-22 18:04:39 -05:00
Goldfish64
b98dac7e7a OpenCoreKernel: Add additional arch logging 2020-08-22 17:41:20 -05:00
Goldfish64
1ecceb0068 OpenCoreKernel: Implement 32-bit switching based on boot args 2020-08-22 16:53:00 -05:00
vit9696
5ded24b71f OcAppleKernelLib: Expose kernel version to quirks 2020-08-22 22:28:28 +03:00
John Davis
818f9e3f57
32-bit kernel switching support (#104)
* OcMacInfoLib: Add 64-bit model compatibility function

* OcMacInfoLib: Fix previous commit

* OpenCorePlatform: Store current SMBIOS platform

* OpenCorePlatform: Fix variable

* OpenCoreKernel: Implement 32-bit kernel switching

* OpenCoreKernel: Force 32-bit on EFI32

* OpenCoreKernel: Fix previous commit
2020-08-21 22:31:19 -05:00
vit9696
1a4c8c22bf OcAppleSecureBootLib: Remove insecure interfaces 2020-08-20 22:28:08 +03:00
vit9696
c2f7b3cea5 OpenCoreUefi: Prohibit unsigned DMG loading with secure boot 2020-08-20 22:28:08 +03:00
vit9696
e78301f744 OcBootManagementLib: Drop disk image suffix and voice 2020-08-20 20:33:22 +03:00
Goldfish64
94162dede1 OpenCoreKernel: Don't match kernels in .kext bundles 2020-08-20 12:17:36 -05:00
Goldfish64
342773ef34 OcAppleKernelLib: Use library FAT parsing 2020-08-20 12:05:56 -05:00
Goldfish64
c2ca9ac693 OpenCoreKernel: Use new function for virtual kernel 2020-08-19 15:22:13 -05:00
Goldfish64
f545a348a0 OpenCoreKernel: Block cache types via ForceKernelCache option 2020-08-19 15:17:54 -05:00
Goldfish64
a1316334ad OpenCoreKernel: Don't match .kext or .im4m during XNU hook 2020-08-18 17:11:34 -05:00
vit9696
04fa1c2394
OcAppleKernelLib: Implement cacheless & mkext kext patching and quirks (#102) 2020-08-18 23:47:38 +03:00
vit9696
70c55e03bb OcAppleKernelLib: Implement CPUID patching for 10.6 64-bit 2020-08-16 04:59:47 +03:00
vit9696
c3e14b6824
OcAppleKernelLib: Implement mkext injection support (#99) 2020-08-15 00:40:06 +03:00
vit9696
d7d16127c5 OcConsoleLib: Add BuiltinText TextRenderer mode
Discovered on Lenovo V580 (i3 3120M)
2020-08-12 19:48:57 +03:00
vit9696
816e82188f OpenCanopy: Reduce size by restricting boot management access 2020-08-11 18:03:10 +03:00