mirror of
https://github.com/CTCaer/RetroArch.git
synced 2024-12-23 11:18:25 +00:00
(iOS) Implement iOS runloop now through CADisplayLink
This commit is contained in:
parent
7b22c397f9
commit
498fa2dd21
@ -14,6 +14,7 @@
|
||||
501881EE184BB54C006F665D /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 501881ED184BB54C006F665D /* CoreMedia.framework */; };
|
||||
5041BAF41A9D40D000A77A33 /* GameController.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 963C3C33186E3DED00A6EB1E /* GameController.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
50521A441AA23BF500185CC9 /* griffin_objc.m in Sources */ = {isa = PBXBuildFile; fileRef = 50521A431AA23BF500185CC9 /* griffin_objc.m */; };
|
||||
50C3B1AE1AB1107200F478D3 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50C3B1AD1AB1107100F478D3 /* QuartzCore.framework */; };
|
||||
50CCC828185E0E7D001F5BC8 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50CCC827185E0E7D001F5BC8 /* CoreLocation.framework */; };
|
||||
50D00E8E19D117C400EBA71E /* cc_resampler_neon.S in Sources */ = {isa = PBXBuildFile; fileRef = 50D00E8D19D117C400EBA71E /* cc_resampler_neon.S */; };
|
||||
50E7189F184B88AA001956CE /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50E7189E184B88AA001956CE /* CoreVideo.framework */; };
|
||||
@ -45,6 +46,7 @@
|
||||
501881EB184BAD6D006F665D /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
|
||||
501881ED184BB54C006F665D /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; };
|
||||
50521A431AA23BF500185CC9 /* griffin_objc.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = griffin_objc.m; path = ../../griffin/griffin_objc.m; sourceTree = "<group>"; };
|
||||
50C3B1AD1AB1107100F478D3 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
|
||||
50CCC827185E0E7D001F5BC8 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; };
|
||||
50D00E8D19D117C400EBA71E /* cc_resampler_neon.S */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.asm; name = cc_resampler_neon.S; path = ../../audio/drivers_resampler/cc_resampler_neon.S; sourceTree = "<group>"; };
|
||||
50E7189E184B88AA001956CE /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; };
|
||||
@ -79,6 +81,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
50C3B1AE1AB1107200F478D3 /* QuartzCore.framework in Frameworks */,
|
||||
5041BAF41A9D40D000A77A33 /* GameController.framework in Frameworks */,
|
||||
696012F219F3389A006A1088 /* CoreText.framework in Frameworks */,
|
||||
50CCC828185E0E7D001F5BC8 /* CoreLocation.framework in Frameworks */,
|
||||
@ -149,6 +152,7 @@
|
||||
96AFAE2816C1D4EA009DE44C /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
50C3B1AD1AB1107100F478D3 /* QuartzCore.framework */,
|
||||
696012F119F3389A006A1088 /* CoreText.framework */,
|
||||
963C3C33186E3DED00A6EB1E /* GameController.framework */,
|
||||
50CCC827185E0E7D001F5BC8 /* CoreLocation.framework */,
|
||||
@ -252,7 +256,7 @@
|
||||
ORGANIZATIONNAME = RetroArch;
|
||||
TargetAttributes = {
|
||||
96AFAE2416C1D4EA009DE44C = {
|
||||
DevelopmentTeam = 778HQV8ZV4;
|
||||
DevelopmentTeam = YLQUB5DVUQ;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -451,8 +455,8 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
|
||||
CLANG_CXX_LIBRARY = "libstdc++";
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CODE_SIGN_RESOURCE_RULES_PATH = "$(SDKROOT)/ResourceRules.plist";
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = NO;
|
||||
GCC_PREFIX_HEADER = "";
|
||||
@ -499,6 +503,7 @@
|
||||
"-D_LZMA_UINT32_IS_ULONG",
|
||||
);
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
VALID_ARCHS = "armv7 armv7s";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
@ -514,8 +519,8 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
|
||||
CLANG_CXX_LIBRARY = "libstdc++";
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
CODE_SIGN_IDENTITY = "iPhone Developer";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
CODE_SIGN_RESOURCE_RULES_PATH = "$(SDKROOT)/ResourceRules.plist";
|
||||
GCC_PRECOMPILE_PREFIX_HEADER = NO;
|
||||
GCC_PREFIX_HEADER = "";
|
||||
@ -599,6 +604,7 @@
|
||||
"-D_LZMA_UINT32_IS_ULONG",
|
||||
);
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE = "";
|
||||
VALID_ARCHS = "armv7 armv7s";
|
||||
WRAPPER_EXTENSION = app;
|
||||
};
|
||||
|
@ -284,36 +284,34 @@ static void rarch_main_event_pump(void)
|
||||
}while(result == kCFRunLoopRunHandledSource);
|
||||
}
|
||||
|
||||
- (void) rarch_main
|
||||
- (void) rarch_draw:(id)sender
|
||||
{
|
||||
int ret = 0;
|
||||
while (ret != -1)
|
||||
{
|
||||
rarch_main_event_pump();
|
||||
|
||||
ret = rarch_main_iterate();
|
||||
|
||||
if (ret == -1)
|
||||
break;
|
||||
|
||||
if (g_runloop.is_idle)
|
||||
continue;
|
||||
#if 0
|
||||
if (g_runloop.is_menu && !menu_display_update_pending())
|
||||
continue;
|
||||
#endif
|
||||
|
||||
if (g_view)
|
||||
[g_view display];
|
||||
}
|
||||
|
||||
rarch_main_event_pump();
|
||||
|
||||
ret = rarch_main_iterate();
|
||||
|
||||
if (ret == -1)
|
||||
goto exit;
|
||||
|
||||
if (g_runloop.is_idle)
|
||||
return;
|
||||
|
||||
if (g_view)
|
||||
[g_view display];
|
||||
|
||||
return;
|
||||
|
||||
exit:
|
||||
main_exit_save_config();
|
||||
main_exit(NULL);
|
||||
}
|
||||
|
||||
- (void) apple_start_iteration
|
||||
{
|
||||
[self performSelectorOnMainThread:@selector(rarch_main) withObject:nil waitUntilDone:NO];
|
||||
[[CADisplayLink displayLinkWithTarget:self
|
||||
selector:@selector(rarch_draw:)] addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
|
||||
}
|
||||
|
||||
- (void) apple_stop_iteration
|
||||
|
Loading…
Reference in New Issue
Block a user