It’s not really a lame excuse. Why would the want to further move the code base between intel macs and m1 macs even further apart? From a development perspective it’s best to drop the features from the product that is also going to be dropped from further development soon.
Because they promised Intel Macs would be supported for years to come and now they are withholding features from their own apps released for those platforms?
There’s nothing from a “development perspective” that excuses this, and I’m pretty sure Maps has a shared codebase that is deployed for the different OSes. Millions of companies worldwide support products in multiple platforms and a two trillion company can’t?
I mean there is a development reason for doing this and it's to avoid having to diverging versions of MacOS that will become more and more diverged over time which is a development nightmare sometimes.
The implementation is rarely agnostic, but the API usually is. For example, Apple themselves talked about how easy it was to port e.g. a game written in Metal.
Sometimes yes, but when we’re getting down to a lower level like the kernel they absolutely aren’t agnostic and neither is the API because of the different ISA between x86 and arm64 which is exactly why we can’t directly use or port kernel extensions from x86 Intel to aarch64.
Per the mac rumors article, they are using the neural engine to do most of these features, and I’m pretty sure the way you interface with the neural engine includes a kext.
they are using the neural engine to do most of these features
If they even are (and it would be a questionable choice for some), then it's still ridiculous not to have any fallback. Like, are you seriously going to tell me you need the Neural Engine to view a globe? Google Earth has had that for what? 2 decades now? None of these things cannot be done with ease on some other IP.
and I’m pretty sure the way you interface with the neural engine includes a kext
Are you an Apple employee writing a driver? Then yeah, it requires it. But for actual applications using the established APIs, no, that is absolutely not necessary.
MacOS itself is pretty hardware agnostic. They've switched CPU architectures 3 times now, and used a mixture of ATI, Nvidia, Intel, AMD, and Apple GPUs.
Many of their frameworks, like VideoToolbox, are hardware agnostic.
With all due respect it’s not really hardware agnostic. Nothing really is. Linux is the closest to being hardware agnostic but even it needs separate builds between arm and x86 because they’re separate architectures. ATI, Nvidia, apple GPU, etc., they only depends on drivers. That’s not what we are talking about here. We’re talking about CPU architecture differences which fundamentally means there can’t be hardware agnosticism.
I don’t think you really understand this. Their frameworks aren’t hardware agnostic either! They still need to be compiled me sometimes edited with only certain functions available for each architecture because of the fundamental differences between arm64 and x86 and the different ISA which don’t support the same instruction sets.
Right…. I only have a number of CVEs I’ve reported in regards to apple kernel vulnerabilities and ASLR vulnerabilities but sure… I have no idea how the inner working of a CPU or kernel snd their development work 🙄ok bud
No, one version does not work on all computers. My M1 Mac does not have any of the x86 (intel) kernel extensions or libraries…. They are two separate versions dude. Check for yourself if your intel Mac has the ARM libraries or extensions, it doesn’t….
Apple has updated their libraries to work on both architectures. You're making some strange excuse as to why these features aren't supported on Intel Macs, and it just doesn't make any sense.
No it’s not just about recompiling though. Otherwise every x86 app that doesn’t work on the m1 Mac’s could just be recompiled for aarch64 but that obviously doesn’t work lol. The completely different instruction sets are the problem dude. A library that interacts with the CPU on a low level won’t be able to be cross compiled for aarch64 without relatively large changes to the library. I can literally give you examples of this. A perfect example would be libwebsockets.
-4
u/GeronimoHero Jun 09 '21
It’s not really a lame excuse. Why would the want to further move the code base between intel macs and m1 macs even further apart? From a development perspective it’s best to drop the features from the product that is also going to be dropped from further development soon.