Apple silicon supports the ancient Intel 8080 through a secret extension

AlphaX

Posts: 98   +20
Staff
The big picture: In 2020, Apple made the switch from Intel processors and started releasing Macs powered by its own custom chips. Due to the change, Apple needed to find a method to emulate x64-based programs on the new silicon. Apple found a way—a very ancient way.

Apple revealed its first custom processor, the Apple M1, during an event in November 2020. The chip was met with high praise for cramming loads of power into a tiny space. Apple's M1 led people to wonder if SoCs were the future of computing.

Due to switching to an ARM architecture, Apple had to figure out a way to allow M1 Macs to use programs that were designed with Intel-based Macs in mind.

Apple went with the simplest but most effective method: emulating the x64 architecture within the Apple M1 itself. The emulation method is called "Rosetta 2," named after the Rosetta Stone.

People were surprised by how effective Rosetta 2 was. Dougall Johnson, an Australian security researcher, now believes he knows why that is.

There is an undisclosed extension inside Rosetta 2 that streamlines the process of storing parity and adjusting flags within an application. This allows for a more accurate and "snappy" emulation, according to Johnson. The most amazing part is the origin of the extension - it was included in Intel's second-ever processor, the Intel 8080, from 1974.

The ancient 8-bit microprocessor handled these adjustments and parity storages very specifically, and the feature has continued to find its way onto today's Intel processors. If you have a new Core i9-13900K, there is a direct (albeit minor) correlation to processors that powered some computers nearly 50 years ago.

Bits 26 and 27 within ARM's flags register are dedicated to this process, though these two bits are only assigned to this action when Rosetta 2 is active. Rosetta 2 doesn't activate unless it detects a program was made with Intel-based Macs in mind, reassigning the two bits and allowing Rosetta 2 to work at its usual snappy pace.

It's interesting to see the methods Apple deployed to allow people to continue using programs that were designed for older Intel-based Macs. The idea of an entire architecture rerouting two bits to handle operations in the same way a processor that was released under the Nixon administration did is fascinating.

Permalink to story.

 
Now if only Intel could copy Apple, and include the ability to perform calculations in Hexadecimal Floating Point on its processors so that System/360 emulation could be snappier...
 
Makes you wonder why Intel and Apple couldn’t work together to make a hybrid x86/ARM SoC…
No, I'm not wondering about such things. Why would they do that? Makes no sense, neither from a technical, nor from a financial perspective.
 
No, I'm not wondering about such things. Why would they do that? Makes no sense, neither from a technical, nor from a financial perspective.
Of course it makes sense. They were partners for 15 years! A partnership for so long didn’t need to end. Apple still develops the x86 kernel, and fixes subtle, undocumented bugs.

If apple could emulate certain undocumented x86 instructions using ARM certainly it could also emulate and/or accelerate other instructions perhaps even some avx instructions.

Intel is going to offer chiplets to its customers via UCIe. Will be interesting to see if there’s any partnerships with ARM vendors like Qualcomm or even Apple, and x86!
 
Of course it makes sense. They were partners for 15 years! A partnership for so long didn’t need to end. Apple still develops the x86 kernel, and fixes subtle, undocumented bugs.

If apple could emulate certain undocumented x86 instructions using ARM certainly it could also emulate and/or accelerate other instructions perhaps even some avx instructions.

Intel is going to offer chiplets to its customers via UCIe. Will be interesting to see if there’s any partnerships with ARM vendors like Qualcomm or even Apple, and x86!

I must disagree, as much as I'd like to see Apple and Intel maintain their partnership but one just needs to look at the AIM Allience.
Intel sadly missed the oppertunity to get into the ARM game back when the first iPhone was released but at the time they felt that it would be a waste of their resources considering at the time x86 and CISC was undisputed in the computing world but as mobile devices grew in popularity and consumer trends now favouring ARM/RISC for the benefits of better batter life and lower heat generation and with the advancements where there software does the heavy workload instead of having the CPU doing the hard work and Intel's Atom was too little too late.
 
I must disagree, as much as I'd like to see Apple and Intel maintain their partnership but one just needs to look at the AIM Allience.
Intel sadly missed the oppertunity to get into the ARM game back when the first iPhone was released but at the time they felt that it would be a waste of their resources considering at the time x86 and CISC was undisputed in the computing world but as mobile devices grew in popularity and consumer trends now favouring ARM/RISC for the benefits of better batter life and lower heat generation and with the advancements where there software does the heavy workload instead of having the CPU doing the hard work and Intel's Atom was too little too late.
Intel has different management now. Intel is going to build chips made of chiplets, and allow some partners/customers to add custom IP using UCIe. Anyways lookout for the upcoming skymont and darkmont atom cores.

I don’t really understand the disagreement with a sentiment of wishing two long time partners maintained their partnership. Apple used to bundle a T2 chip with its x86 macs. With chiplets, couldn’t apple bundle m1 (or similar) + x86 ? Anyways, best wishes!
 
Last edited:
Back