That's precisely the question which we need answered. Oh gosh, I'm falling asleep. See everyone later...
Windows 10 actually supports even white MacBooks from 2006 as well… As well as the custom built PC I have from 2003 and it runs fairly smoothly for basic things.
Linux kernel 4.17 (just released) supports the Pentium Pro arch (i586) and in certain cases the i486 arch (486DX, 486sx and clones), so even better there
But the point is, Apple's support is WAY less than the rest. And it's left in our hands to solve.
[doublepost=1528251281][/doublepost]
I'm thinking it's the end of the line for those of us on the Mac Pro 3,1 since SSE 4.1 is likely an unpatchable limiting factor.
Well I still think there's hope, since nawcom did it donkey-years ago with an SSE3 emulator that 100% worked... SSE3 had more instructions than SSE4.2 so while us the new generation may need to learn how to add c and headers to XNU, it is still possible...
[doublepost=1528251488][/doublepost]
Good morning. Two updates:
1)
The kernel panic on MacPro3,1 is in fact caused by missing SSE4.2. This is bad in a way, but also good because it means all we need is a SSE4.2 emulator (which can be ported from hackintosh AMD kernels) but we need to wait until GM for the kernel source.
2)
Fredrik Andersson on Low End Mac Facebook group traced the GUI rendering in safe mode and concluded that I was wrong, and it is still using OpenGL. It has just been intentionally blocked when not in safe mode.
This means there is hope for using an OpenGL driver. cc
@Czo any reverse engineering help?
This is great. I will try to get my hands on a Mojave system soon. I have one more thought: We can try to force the HD 4000 ACCELERATION kexts and .bundles BUT with the AppleIntelSNBGraphicsFB.kext since they all use a shared codebase for the OpenGL/MTL accelerators (just run strings on the binary, you'll see it's called "GraphicsDrivers-Intel" or something like that...
Just to plan, this would look like this:
1) Force load AppleIntelSNBGraphicsFB.kext.
2) Rename the HD 4000 Accelerators to the HD 3000 corresponding filenames so they are loaded by the Framebuffer kext.
3) Binpatch WindowServer/Framebuffer to load MTLDriver??
4) Profit.
The OpenGL-native on WindowServer is still the best hope for us all, though.
[doublepost=1528251609][/doublepost]
With an SSE4.2 emulator, you would not need to patch the GPU drivers, right? That's a win-win.
How much performance penalty would we be talking about with an emulator? From what I understand, SSE4.2 only covers seven instructions, most of which compare packed strings.
If we are planning to use the old drivers from High Sierra, then this wouldn't be a problem either way (since the GPU drivers ONLY used SSE4.1 on High Sierra). But, the OpenGL libraries (dylibs) and the rest of the system has CERTAINLY been recompiled with SSE4.2 optimizations. Binpatching them is tedious, and doing the emulator-in-kernel route would keep the platform stable with all apps.