3 ms·
Well, that wasn't really true with 68K on PPC. It aspired to be as fast as the fastest 68K Macs, but that was based on averaging over some system calls in PPC c
by perl4ever 5y ago
Well, that wasn't really true with 68K on PPC. It aspired to be as fast as the fastest 68K Macs, but that was based on averaging over some system calls in PPC code and some not. Speaking as someone who used one of the early machines @ 66MHz. The speed was unimpressive enough that there was a third party product that claimed to accelerate 68K code. Probably through some JIT techniques, I don't remember.
But it seems weird in any case to me to give Apple a lot of credit for this, because haven't we gotten to the point where VMs have eaten the (software) world? Everything runs on an advanced emulator, it's just the processor never even existed.
- musicale 5y agoSounds more "comparable to" rather than "as fast as the fastest." Presumably Mac OS on PowerPC got faster as more of it was ported to native code; it's always nice when OS updates make your machine faster rather than slower. But your point is interesting; as you note, Connectix's Speed Doubler apparently included a dynamic/just-in-time binary translator - I wonder what Davidian thinks about it? (Of course Rosetta 2 for M1 does on-demand static translation.) I'd guess that Davidian's emulator may have used an interpretation approach for consistent instruction timing, which may have been required for timing-sensitive device drivers to work properly, and also for running out of a static ROM with zero RAM overhead. Dynamic translation can eat a lot of RAM, especially if you have to keep the original code around (e.g. for code page memory accesses.) Connectix famously continued its emulation game and ultimately won a pyrrhic victory after being sued by Sony, resulting in PlayStation/game console emulation being declared legal (hooray!) but also killing the company and its PS1 emulator product (which may have resurfaced as Sony's own PS1 emulator for the PSP/PSVita/PSTV/PS3, though the PS Classic uses PCSX.)