diff --git a/Core/Config.cpp b/Core/Config.cpp index 78d8eb7b8f..744695e058 100644 --- a/Core/Config.cpp +++ b/Core/Config.cpp @@ -55,11 +55,6 @@ static const char *logSectionName = "LogDebug"; static const char *logSectionName = "Log"; #endif - -#ifdef IOS -extern bool iosCanUseJit; -#endif - struct ConfigSetting { enum Type { TYPE_TERMINATOR, @@ -314,11 +309,8 @@ static int DefaultNumWorkers() { return cpu_info.num_cores; } -// TODO: Default to IRJit on iOS when it's done. static int DefaultCpuCore() { -#ifdef IOS - return (int)(iosCanUseJit ? CPUCore::JIT : CPUCore::INTERPRETER); -#elif defined(ARM) || defined(ARM64) || defined(_M_IX86) || defined(_M_X64) +#if defined(ARM) || defined(ARM64) || defined(_M_IX86) || defined(_M_X64) return (int)CPUCore::JIT; #else return (int)CPUCore::INTERPRETER; @@ -326,9 +318,7 @@ static int DefaultCpuCore() { } static bool DefaultCodeGen() { -#ifdef IOS - return iosCanUseJit ? true : false; -#elif defined(ARM) || defined(ARM64) || defined(_M_IX86) || defined(_M_X64) +#if defined(ARM) || defined(ARM64) || defined(_M_IX86) || defined(_M_X64) return true; #else return false; diff --git a/UI/GameSettingsScreen.cpp b/UI/GameSettingsScreen.cpp index c82f9c1113..bef66c4c0f 100644 --- a/UI/GameSettingsScreen.cpp +++ b/UI/GameSettingsScreen.cpp @@ -67,11 +67,6 @@ #include "gfx/gl_common.h" #endif -#ifdef IOS -extern bool iosCanUseJit; -extern bool targetIsJailbroken; -#endif - extern bool VulkanMayBeAvailable(); GameSettingsScreen::GameSettingsScreen(std::string gamePath, std::string gameID, bool editThenRestore) diff --git a/UI/NativeApp.cpp b/UI/NativeApp.cpp index 7ad706a0bc..1c51566224 100644 --- a/UI/NativeApp.cpp +++ b/UI/NativeApp.cpp @@ -130,11 +130,6 @@ std::string config_filename; bool g_graphicsInited; -#ifdef IOS -bool iosCanUseJit; -bool targetIsJailbroken; -#endif - // Really need to clean this mess of globals up... but instead I add more :P bool g_TakeScreenshot; static bool isOuya; diff --git a/ios/ViewController.mm b/ios/ViewController.mm index c49a550710..2ec8d7e7a7 100644 --- a/ios/ViewController.mm +++ b/ios/ViewController.mm @@ -6,7 +6,6 @@ // #import "ViewController.h" -#import "AudioEngine.h" #import #include @@ -31,10 +30,6 @@ #define IS_IPAD() ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) #define IS_IPHONE() ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone) -#ifndef kCFCoreFoundationVersionNumber_IOS_9_0 -#define kCFCoreFoundationVersionNumber_IOS_9_0 1240.10 -#endif - class IOSDummyGraphicsContext : public DummyGraphicsContext { public: IOSDummyGraphicsContext() { @@ -54,17 +49,12 @@ private: Draw::DrawContext *draw_; }; -float dp_xscale = 1.0f; -float dp_yscale = 1.0f; +static float dp_xscale = 1.0f; +static float dp_yscale = 1.0f; -double lastSelectPress = 0.0f; -double lastStartPress = 0.0f; -bool simulateAnalog = false; - -extern ScreenManager *screenManager; - -extern bool iosCanUseJit; -extern bool targetIsJailbroken; +static double lastSelectPress = 0.0f; +static double lastStartPress = 0.0f; +static bool simulateAnalog = false; __unsafe_unretained static ViewController* sharedViewController; static GraphicsContext *graphicsContext; @@ -75,10 +65,7 @@ static GraphicsContext *graphicsContext; } @property (nonatomic, strong) EAGLContext* context; -@property (nonatomic, strong) NSString* documentsPath; -@property (nonatomic, strong) NSString* bundlePath; @property (nonatomic, strong) NSMutableArray* touches; -@property (nonatomic) AudioEngine* audioEngine; //@property (nonatomic) iCadeReaderView* iCadeView; #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_6_1 @property (nonatomic) GCController *gameController __attribute__((weak_import)); @@ -87,39 +74,12 @@ static GraphicsContext *graphicsContext; @end @implementation ViewController --(bool) isArm64 { - size_t size; - cpu_type_t type; - size = sizeof(type); - sysctlbyname("hw.cputype", &type, &size, NULL, 0); - return type == CPU_TYPE_ARM64; -} -(id) init { self = [super init]; if (self) { sharedViewController = self; self.touches = [NSMutableArray array]; - self.documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; - self.bundlePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingString:@"/assets/"]; - - iosCanUseJit = true; - targetIsJailbroken = false; - NSArray *jailPath = [NSArray arrayWithObjects: - @"/Applications/Cydia.app", - @"/private/var/lib/apt", - @"/private/var/stash", - @"/usr/sbin/sshd", - @"/usr/bin/sshd", nil]; - - for (NSString *string in jailPath) { - if ([[NSFileManager defaultManager] fileExistsAtPath:string]) { - // checking device jailbreak status in order to determine which message to show in GameSettingsScreen - targetIsJailbroken = true; - } - } - - NativeInit(0, NULL, [self.documentsPath UTF8String], [self.bundlePath UTF8String], NULL); iCadeToKeyMap[iCadeJoystickUp] = NKCODE_DPAD_UP; iCadeToKeyMap[iCadeJoystickRight] = NKCODE_DPAD_RIGHT; diff --git a/ios/main.mm b/ios/main.mm index c6eb2d3c7f..27f9cbac71 100644 --- a/ios/main.mm +++ b/ios/main.mm @@ -11,6 +11,7 @@ #import "PPSSPPUIApplication.h" #include "base/NativeApp.h" +#include "profiler/profiler.h" @interface UIApplication (Private) -(void) suspend; @@ -112,7 +113,15 @@ int main(int argc, char *argv[]) { // Simulates a debugger. Makes it possible to use JIT (though only W^X) syscall(SYS_ptrace, 0 /*PTRACE_TRACEME*/, 0, 0, 0); + + PROFILE_INIT(); + @autoreleasepool { - return UIApplicationMain(argc, argv, NSStringFromClass([PPSSPPUIApplication class]), NSStringFromClass([AppDelegate class])); + NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; + NSString *bundlePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingString:@"/assets/"]; + + NativeInit(argc, (const char**)argv, documentsPath.UTF8String, bundlePath.UTF8String, NULL); + + return UIApplicationMain(argc, argv, NSStringFromClass([PPSSPPUIApplication class]), NSStringFromClass([AppDelegate class])); } }