Ze stejneho duvodu jako Wine ci UAE. Treba 32bit mac apky jiz na poslednich 3 verzich macOS nespustis a casem to ceka i zbyvajici intel apky, protoze se prejde na ARMy uplne. Mit otevreny OS postaveny na BSD s runtime podporou vsech starsich mac apek bude super. Muj vlhky sen je mit implementovanou jak starou Rosettu1 co umoznovala beh PPC binarek na x86, tak novou Rosettu2 co umoznuje beh x86 binarek na ARMu + nativni ARM podporu. Plus samozrejme jeste reverznout Cocoa/Carbon/Metal knihovny. V takovem stavu by bylo mozne spoustet historicke apky od prvniho OSX 10.0 az po dnesek na jedinem operacnim systemu :-)
Treba pro vedecke ucely. Nektere univerzity jiz nabizeji MSc/PhD studium digitalni archeologie. Jako jeste nejakych 10-20let tu bude moznost najit nejaky stary kus HW, rozbehat ho a spoustet to nativne. Ale casem tahle moznost zmizi a ty programy nebo stare data nebude jak precist. V minulosti bylo spousta uzavrenych formatu ktere casto ani nevis jak reverznout kdyz to nemas v cem otevrit. Detto software bez zdrojovych kodu. Nad tim nemuzem zavirat oci, proprietarni doba tady byla dost dlouho a je nasim ukolem na ni nezapomenout.
Problém se spouštěním starých binárek máš i na Windows a Linuxu, kde se CPU architektura nezměnila. Dodnes můžeš na Windows a Linuxu nativně pouštět i386 - problém jsou nekompatibilní API. Na Windows např. hry pro staré DirectX (pro Colin McRae Rally 2 musím nahrát do složky hry DLLka převádějící volání starých DX na novější). Na Linuxu zas moje stará hra potřebuje starší verzi libstdc++ (nějakou dobu šla doinstalovat z repozitářů, dnes nevím). Ta hra je opensource, ale narazíš na to, že využívá starou verzi SDL, která si nerozumí s Wayland (komunita ale pracuje na wrapper knihovně převádějící volání SDL 1.2 na SDL 2).
U Apple je to pochopitelnější, ten mění architekturu CPU jako ponožky - podle toho, co je zrovna nejlepší (Motorola --> PowerPC --> x86 --> ARM). Navíc Rosetta 1 (běh PowerPC aplikací na x86) nebyla ani od Apple, byl to zaplacený software od externí firmy a licence jim vypršela - Apple ji nechtěl prodlužovat. Beztak Apple razí heslo, že aplikace, která není přebuildovaná aspoň jednou za rok, je mrtvá a potenciálně nebezpečná. Na takové máš použít např. virtualizaci. Já si třeba na Windows PC ozkoušel MacOS X 10.1, 10.2, 10.3, 10.4, 10.5, 10.6, 10.7, 10.8, 10.9, 10.10, 10.15 a teď pro vývoj používám virtálku macOS 11 Big Sur (abych mohl buildovat univerzální binárky Intel+ARM). Ty PowerPC verze jsem si zkoušel v dnes již zapomenutém emulátoru PearPC, kde sice nefungovala např. síť, ale mně šlo jen o základní představu, jaký daný OS byl - včetně naživo vidět historii jejich změn v designu. Pro zajímavost: 10.0 nebyl finální systém, např. nebyla ještě OpenGL akcelerace toho prostředí Aqua.
8. 1. 2022, 01:14 editováno autorem komentáře
Z mé zkušenosti na M1 Rosseta2 funguje velmi dobře. Zatím jsem nenarazil na nic co by v ni nefungovalo a co nemá arm nativní build. Pokud vím, tak v ni bez problémů fungovali i MS Office, ty však již dnes mají arm64 build. Ja osobně v Rosetta2 provozuji OBS Studio víceméně bez problémů a taktéž Visual Studio for Mac, tady ale verze 2022 bude také arm64 nativní.
Třeba většina produktů Adobe ne. Apple jim dal vývojářskou 64bit verzi Carbon, ale nakonec si to rozmyslel a do finální verze OS ji nedal. Adobe už nestihlo UI předělat na Cocoa, tak se macařům smáli PCčkáři, že mají furt jen 32bit verzi. A tohle nebyly jen produkty Adobe - spousta aplikací zůstala v Carbon od posledního nutného velkého přepsání UI. Carbon byl oblíbený taky v C/C++ aplikacích a obecně těch, které nebyly v ObjC (každý jazyk umí volat knihovny s Cčkovým interfacem). Protože se autoři nemuseli učit další jazyk (ObjC) a psát "glue" vrstvu.