diff --git a/rpcs3/main.cpp b/rpcs3/main.cpp index 349db34673..c4546ae770 100644 --- a/rpcs3/main.cpp +++ b/rpcs3/main.cpp @@ -60,6 +60,13 @@ DYNAMIC_IMPORT("ntdll.dll", NtSetTimerResolution, NTSTATUS(ULONG DesiredResoluti #if defined(__APPLE__) #include +// sysinfo_darwin.mm +namespace Darwin_Version +{ + extern int getNSmajorVersion(); + extern int getNSminorVersion(); + extern int getNSpatchVersion(); +} #endif #include "Utilities/Config.h" @@ -519,6 +526,13 @@ int main(int argc, char** argv) } #endif +#ifdef __APPLE__ + if ((Darwin_Version::getNSmajorVersion() == 14 && Darwin_Version::getNSminorVersion() < 3) && (utils::get_cpu_brand().rfind("VirtualApple", 0) == 0)) + { + report_fatal_error("Unsupported Rosetta version.\nPlease update macOS to a supported version."); + } +#endif + ensure(thread_ctrl::is_main(), "Not main thread"); // Initialize TSC freq (in case it isn't)