├── AMDFramebufferUtility.app └── Contents │ ├── Frameworks │ ├── IDEBundleInjection.framework │ │ ├── IDEBundleInjection │ │ ├── Resources │ │ └── Versions │ │ │ ├── A │ │ │ ├── IDEBundleInjection │ │ │ ├── Resources │ │ │ │ ├── Info.plist │ │ │ │ └── version.plist │ │ │ └── _CodeSignature │ │ │ │ └── CodeResources │ │ │ └── Current │ ├── XCTest.framework │ │ ├── Headers │ │ ├── Modules │ │ ├── Resources │ │ ├── Versions │ │ │ ├── A │ │ │ │ ├── Headers │ │ │ │ │ ├── XCAbstractTest.h │ │ │ │ │ ├── XCTest.h │ │ │ │ │ ├── XCTestAssertions.h │ │ │ │ │ ├── XCTestAssertionsImpl.h │ │ │ │ │ ├── XCTestCase+AsynchronousTesting.h │ │ │ │ │ ├── XCTestCase.h │ │ │ │ │ ├── XCTestCaseRun.h │ │ │ │ │ ├── XCTestDefines.h │ │ │ │ │ ├── XCTestErrors.h │ │ │ │ │ ├── XCTestLog.h │ │ │ │ │ ├── XCTestObservation.h │ │ │ │ │ ├── XCTestObservationCenter.h │ │ │ │ │ ├── XCTestObserver.h │ │ │ │ │ ├── XCTestProbe.h │ │ │ │ │ ├── XCTestRun.h │ │ │ │ │ ├── XCTestSuite.h │ │ │ │ │ ├── XCTestSuiteRun.h │ │ │ │ │ ├── XCUIApplication.h │ │ │ │ │ ├── XCUICoordinate.h │ │ │ │ │ ├── XCUIDevice.h │ │ │ │ │ ├── XCUIElement.h │ │ │ │ │ ├── XCUIElementAttributes.h │ │ │ │ │ ├── XCUIElementQuery.h │ │ │ │ │ ├── XCUIElementTypeQueryProvider.h │ │ │ │ │ ├── XCUIElementTypes.h │ │ │ │ │ ├── XCUIKeyboardKeys.h │ │ │ │ │ └── XCUIRemote.h │ │ │ │ ├── Modules │ │ │ │ │ └── module.modulemap │ │ │ │ ├── Resources │ │ │ │ │ ├── Info.plist │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ └── InfoPlist.strings │ │ │ │ │ └── version.plist │ │ │ │ ├── XCTest │ │ │ │ ├── XPCServices │ │ │ │ │ ├── XCUIRecorderService.xpc │ │ │ │ │ │ └── Contents │ │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ │ ├── MacOS │ │ │ │ │ │ │ └── XCUIRecorderService │ │ │ │ │ │ │ ├── _CodeSignature │ │ │ │ │ │ │ └── CodeResources │ │ │ │ │ │ │ └── version.plist │ │ │ │ │ └── xctestSymbolicator.xpc │ │ │ │ │ │ └── Contents │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ ├── MacOS │ │ │ │ │ │ └── xctestSymbolicator │ │ │ │ │ │ ├── _CodeSignature │ │ │ │ │ │ └── CodeResources │ │ │ │ │ │ └── version.plist │ │ │ │ └── _CodeSignature │ │ │ │ │ └── CodeResources │ │ │ └── Current │ │ ├── XCTest │ │ └── XPCServices │ ├── libswiftAppKit.dylib │ ├── libswiftCore.dylib │ ├── libswiftCoreData.dylib │ ├── libswiftCoreGraphics.dylib │ ├── libswiftCoreImage.dylib │ ├── libswiftDarwin.dylib │ ├── libswiftDispatch.dylib │ ├── libswiftFoundation.dylib │ ├── libswiftIOKit.dylib │ └── libswiftObjectiveC.dylib │ ├── Info.plist │ ├── MacOS │ └── AMDFramebufferUtility │ ├── PkgInfo │ ├── PlugIns │ └── AMDFramebufferUtilityTests.xctest │ │ └── Contents │ │ ├── Frameworks │ │ ├── libswiftAppKit.dylib │ │ ├── libswiftCore.dylib │ │ ├── libswiftCoreData.dylib │ │ ├── libswiftCoreGraphics.dylib │ │ ├── libswiftCoreImage.dylib │ │ ├── libswiftDarwin.dylib │ │ ├── libswiftDispatch.dylib │ │ ├── libswiftFoundation.dylib │ │ ├── libswiftIOKit.dylib │ │ ├── libswiftObjectiveC.dylib │ │ └── libswiftXCTest.dylib │ │ ├── Info.plist │ │ ├── MacOS │ │ └── AMDFramebufferUtilityTests │ │ └── _CodeSignature │ │ └── CodeResources │ ├── Resources │ ├── AppIcon.icns │ ├── Base.lproj │ │ ├── Localizable.strings │ │ └── Main.storyboardc │ │ │ ├── Info.plist │ │ │ ├── MainMenu.nib │ │ │ ├── NSViewController-xOo-Nf-X08.nib │ │ │ ├── NSViewController-yK3-wr-Mkd.nib │ │ │ ├── NSWindowController-B8D-0N-5wS.nib │ │ │ ├── XfG-lQ-9wD-view-m2S-Jp-Qdl.nib │ │ │ ├── xOo-Nf-X08-view-NJ6-qX-Vca.nib │ │ │ └── yK3-wr-Mkd-view-rDv-xr-Ry1.nib │ ├── CardInfo.plist │ ├── OfflineFB16.plist │ ├── OfflineFB24.plist │ ├── en.lproj │ │ └── Localizable.strings │ ├── getSystemFB16 │ ├── getSystemFB24 │ ├── logo.png │ ├── otool │ ├── radeon_bios_decode │ ├── redsock_bios_decoder │ └── zh-Hans.lproj │ │ ├── Localizable.strings │ │ └── Main.strings │ └── _CodeSignature │ └── CodeResources ├── AMDFramebufferUtility.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── jogle.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── xcdebugger │ │ └── Expressions.xcexplist └── xcuserdata │ └── jogle.xcuserdatad │ ├── xcdebugger │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ ├── AMDFramebufferUtility.xcscheme │ └── xcschememanagement.plist ├── AMDFramebufferUtility ├── AppDelegate.swift ├── Base.lproj │ └── Main.storyboard ├── CardInfo.plist ├── ConnectorData.swift ├── Images.xcassets │ └── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── logo128.png │ │ ├── logo16.png │ │ ├── logo256-1.png │ │ ├── logo256.png │ │ ├── logo32-1.png │ │ ├── logo32.png │ │ ├── logo512.png │ │ └── logo64.png ├── Info.plist ├── OfflineFB16.plist ├── OfflineFB24.plist ├── ResultViewController.swift ├── ViewController.swift ├── en.lproj │ └── Main.strings ├── getSystemFB16 ├── getSystemFB24 ├── logo.png ├── otool ├── radeon_bios_decode ├── redsock_bios_decoder └── zh-Hans.lproj │ └── Main.strings ├── AMDFramebufferUtilityTests ├── AMDFramebufferUtilityTests.swift └── Info.plist ├── Base.lproj └── Localizable.strings ├── README.md ├── en.lproj └── Localizable.strings ├── getSystemFB16.c ├── getSystemFB16.php ├── getSystemFB24.c └── zh-Hans.lproj └── Localizable.strings /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/IDEBundleInjection: -------------------------------------------------------------------------------- 1 | Versions/Current/IDEBundleInjection -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/A/IDEBundleInjection: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/A/IDEBundleInjection -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/A/Resources/Info.plist -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/A/Resources/version.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildVersion 6 | 18 7 | CFBundleShortVersionString 8 | 5.0 9 | CFBundleVersion 10 | 10004 11 | ProjectName 12 | IDEBundleInjection 13 | SourceVersion 14 | 10004000000000000 15 | 16 | 17 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/A/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | Resources/Info.plist 8 | 9 | mDmh41W6Jr9M55C+PqDdy+NEQnA= 10 | 11 | Resources/version.plist 12 | 13 | HMGKSMOMJVvH2IMYBPK8MnyXmws= 14 | 15 | 16 | files2 17 | 18 | Resources/Info.plist 19 | 20 | hash 21 | 22 | mDmh41W6Jr9M55C+PqDdy+NEQnA= 23 | 24 | hash2 25 | 26 | 0ZmwZ6xaBa9vYRu0Ojib0RL5XPrQg6gXR0ZpAvrAVh8= 27 | 28 | 29 | Resources/version.plist 30 | 31 | hash 32 | 33 | HMGKSMOMJVvH2IMYBPK8MnyXmws= 34 | 35 | hash2 36 | 37 | L0ApN4rcAjEa15dL7mC8O/gQIFfWH3nYXFwwHiXnP/Y= 38 | 39 | 40 | 41 | rules 42 | 43 | ^Resources/ 44 | 45 | ^Resources/.*\.lproj/ 46 | 47 | optional 48 | 49 | weight 50 | 1000 51 | 52 | ^Resources/.*\.lproj/locversion.plist$ 53 | 54 | omit 55 | 56 | weight 57 | 1100 58 | 59 | ^Resources/Base\.lproj/ 60 | 61 | weight 62 | 1010 63 | 64 | ^version.plist$ 65 | 66 | 67 | rules2 68 | 69 | .*\.dSYM($|/) 70 | 71 | weight 72 | 11 73 | 74 | ^(.*/)?\.DS_Store$ 75 | 76 | omit 77 | 78 | weight 79 | 2000 80 | 81 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 82 | 83 | nested 84 | 85 | weight 86 | 10 87 | 88 | ^.* 89 | 90 | ^Info\.plist$ 91 | 92 | omit 93 | 94 | weight 95 | 20 96 | 97 | ^PkgInfo$ 98 | 99 | omit 100 | 101 | weight 102 | 20 103 | 104 | ^Resources/ 105 | 106 | weight 107 | 20 108 | 109 | ^Resources/.*\.lproj/ 110 | 111 | optional 112 | 113 | weight 114 | 1000 115 | 116 | ^Resources/.*\.lproj/locversion.plist$ 117 | 118 | omit 119 | 120 | weight 121 | 1100 122 | 123 | ^Resources/Base\.lproj/ 124 | 125 | weight 126 | 1010 127 | 128 | ^[^/]+$ 129 | 130 | nested 131 | 132 | weight 133 | 10 134 | 135 | ^embedded\.provisionprofile$ 136 | 137 | weight 138 | 20 139 | 140 | ^version\.plist$ 141 | 142 | weight 143 | 20 144 | 145 | 146 | 147 | 148 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/IDEBundleInjection.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Modules: -------------------------------------------------------------------------------- 1 | Versions/Current/Modules -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCAbstractTest.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | NS_ASSUME_NONNULL_BEGIN 35 | 36 | @class XCTestRun; 37 | 38 | /*! 39 | * @class XCTest 40 | * 41 | * An abstract base class for testing. XCTestCase and XCTestSuite extend XCTest to provide 42 | * for creating, managing, and executing tests. Most developers will not need to subclass 43 | * XCTest directly. 44 | */ 45 | @interface XCTest : NSObject { 46 | #ifndef __OBJC2__ 47 | @private 48 | id _internal; 49 | #endif 50 | } 51 | 52 | /*! 53 | * @property testCaseCount 54 | * Number of test cases. Must be overridden by subclasses. 55 | */ 56 | @property (readonly) NSUInteger testCaseCount; 57 | 58 | /*! 59 | * @property name 60 | * Test's name. Must be overridden by subclasses. 61 | */ 62 | @property (readonly, copy, nullable) NSString *name; 63 | 64 | /*! 65 | * @property testRunClass 66 | * The XCTestRun subclass that will be instantiated when the test is run to hold 67 | * the test's results. Must be overridden by subclasses. 68 | */ 69 | @property (readonly, nullable) Class testRunClass; 70 | 71 | /*! 72 | * @property testRun 73 | * The test run object that executed the test, an instance of testRunClass. If the test has not yet been run, this will be nil. 74 | */ 75 | #if XCT_NULLABLE_AVAILABLE 76 | @property (readonly, nullable) XCTestRun *testRun; 77 | #else 78 | @property (readonly) XCTestRun *testRun; 79 | #endif 80 | 81 | /*! 82 | * @method -performTest: 83 | * The method through which tests are executed. Must be overridden by subclasses. 84 | */ 85 | - (void)performTest:(XCTestRun *)run; 86 | 87 | /*! 88 | * @method -run 89 | * Deprecated: use -runTest instead. 90 | */ 91 | - (XCTestRun *)run DEPRECATED_ATTRIBUTE; 92 | 93 | /*! 94 | * @method -runTest 95 | * Creates an instance of the testRunClass and passes it as a parameter to -performTest:. 96 | */ 97 | - (void)runTest; 98 | 99 | /*! 100 | * @method -setUp 101 | * Setup method called before the invocation of each test method in the class. 102 | */ 103 | - (void)setUp; 104 | 105 | /*! 106 | * @method -tearDown 107 | * Teardown method called after the invocation of each test method in the class. 108 | */ 109 | - (void)tearDown; 110 | 111 | @end 112 | 113 | NS_ASSUME_NONNULL_END 114 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTest.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | #import 34 | 35 | #import 36 | #import 37 | #import 38 | #import 39 | #import 40 | #import 41 | #import 42 | #import 43 | #import 44 | #import 45 | #import 46 | #import 47 | #import 48 | #import 49 | 50 | #import 51 | #import 52 | #import 53 | #import 54 | #import 55 | #import 56 | #import 57 | #import 58 | #import 59 | #import 60 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestCase+AsynchronousTesting.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | NS_ASSUME_NONNULL_BEGIN 8 | 9 | /*! 10 | * @class XCTestExpectation 11 | * 12 | * @discussion 13 | * Expectations represent specific conditions in asynchronous testing. 14 | */ 15 | @interface XCTestExpectation : NSObject { 16 | #ifndef __OBJC2__ 17 | id _internalImplementation; 18 | #endif 19 | } 20 | 21 | /*! 22 | * @method -fulfill 23 | * 24 | * @discussion 25 | * Call -fulfill to mark an expectation as having been met. It's an error to call 26 | * -fulfill on an expectation that has already been fulfilled or when the test case 27 | * that vended the expectation has already completed. 28 | */ 29 | - (void)fulfill; 30 | 31 | @end 32 | 33 | /*! 34 | * @category AsynchronousTesting 35 | * 36 | * @discussion 37 | * This category introduces support for asynchronous testing in XCTestCase. The mechanism 38 | * allows you to specify one or more "expectations" that will occur asynchronously 39 | * as a result of actions in the test. Once all expectations have been set, a "wait" 40 | * API is called that will block execution of subsequent test code until all expected 41 | * conditions have been fulfilled or a timeout occurs. 42 | */ 43 | @interface XCTestCase (AsynchronousTesting) 44 | 45 | /*! 46 | * @method -expectationWithDescription: 47 | * 48 | * @param description 49 | * This string will be displayed in the test log to help diagnose failures. 50 | * 51 | * @discussion 52 | * Creates and returns an expectation associated with the test case. 53 | */ 54 | - (XCTestExpectation *)expectationWithDescription:(NSString *)description; 55 | 56 | /*! 57 | * @typedef XCWaitCompletionHandler 58 | * A block to be invoked when a call to -waitForExpectationsWithTimeout:handler: times out or has 59 | * had all associated expectations fulfilled. 60 | * 61 | * @param error 62 | * If the wait timed out or a failure was raised while waiting, the error's code 63 | * will specify the type of failure. Otherwise error will be nil. 64 | */ 65 | #if XCT_NULLABLE_AVAILABLE 66 | typedef void (^XCWaitCompletionHandler)(NSError * __nullable error); 67 | #else 68 | typedef void (^XCWaitCompletionHandler)(NSError *error); 69 | #endif 70 | 71 | /*! 72 | * @method -waitForExpectationsWithTimeout:handler: 73 | * 74 | * @param timeout 75 | * The amount of time within which all expectations must be fulfilled. 76 | * 77 | * @param handler 78 | * If provided, the handler will be invoked both on timeout or fulfillment of all 79 | * expectations. Timeout is always treated as a test failure. 80 | * 81 | * @discussion 82 | * -waitForExpectationsWithTimeout:handler: creates a point of synchronization in the flow of a 83 | * test. Only one -waitForExpectationsWithTimeout:handler: can be active at any given time, but 84 | * multiple discrete sequences of { expectations -> wait } can be chained together. 85 | * 86 | * -waitForExpectationsWithTimeout:handler: runs the run loop while handling events until all expectations 87 | * are fulfilled or the timeout is reached. Clients should not manipulate the run 88 | * loop while using this API. 89 | */ 90 | #if XCT_NULLABLE_AVAILABLE 91 | - (void)waitForExpectationsWithTimeout:(NSTimeInterval)timeout handler:(nullable XCWaitCompletionHandler)handler; 92 | #else 93 | - (void)waitForExpectationsWithTimeout:(NSTimeInterval)timeout handler:(XCWaitCompletionHandler)handler; 94 | #endif 95 | 96 | #pragma mark Convenience APIs 97 | 98 | /*! 99 | * @method -keyValueObservingExpectationForObject:keyPath:expectedValue: 100 | * 101 | * @discussion 102 | * A convenience method for asynchronous tests that use Key Value Observing to detect changes 103 | * to values on an object. This variant takes an expected value and observes changes on the object 104 | * until the keyPath's value matches the expected value using -[NSObject isEqual:]. If 105 | * other comparisions are needed, use the variant below that takes a handler block. 106 | * 107 | * @param objectToObserve 108 | * The object to observe. 109 | * 110 | * @param keyPath 111 | * The key path to observe. 112 | * 113 | * @param expectedValue 114 | * Expected value of the keyPath for the object. The expectation will fulfill itself when the 115 | * keyPath is equal, as tested using -[NSObject isEqual:]. If nil, the expectation will be 116 | * fulfilled by the first change to the key path of the observed object. 117 | * 118 | * @return 119 | * Creates and returns an expectation associated with the test case. 120 | */ 121 | #if XCT_NULLABLE_AVAILABLE 122 | - (XCTestExpectation *)keyValueObservingExpectationForObject:(id)objectToObserve keyPath:(NSString *)keyPath expectedValue:(nullable id)expectedValue; 123 | #else 124 | - (XCTestExpectation *)keyValueObservingExpectationForObject:(id)objectToObserve keyPath:(NSString *)keyPath expectedValue:(id)expectedValue; 125 | #endif 126 | 127 | /*! 128 | * @typedef 129 | * A block to be invoked when a change is observed for the keyPath of the observed object. 130 | * 131 | * @param observedObject 132 | * The observed object, provided to avoid block capture issues. 133 | * 134 | * @param change 135 | * The KVO change dictionary. 136 | * 137 | * @return 138 | * Return YES if the expectation is fulfilled, NO if it is not. 139 | */ 140 | typedef BOOL (^XCKeyValueObservingExpectationHandler)(id observedObject, NSDictionary *change); 141 | 142 | /*! 143 | * @method -keyValueObservingExpectationForObject:keyPath:handler: 144 | * 145 | * @discussion 146 | * Variant of the convenience for tests that use Key Value Observing. Takes a handler 147 | * block instead of an expected value. Every KVO change will run the handler block until 148 | * it returns YES (or the wait times out). Returning YES from the block will fulfill the 149 | * expectation. XCTAssert and related APIs can be used in the block to report a failure. 150 | * 151 | * @param objectToObserve 152 | * The object to observe. 153 | * 154 | * @param keyPath 155 | * The key path to observe. 156 | * 157 | * @param handler 158 | * Optional handler, /see XCKeyValueObservingExpectationHandler. If not provided, the expectation will 159 | * be fulfilled by the first change to the key path of the observed object. 160 | * 161 | * @return 162 | * Creates and returns an expectation associated with the test case. 163 | */ 164 | #if XCT_NULLABLE_AVAILABLE 165 | - (XCTestExpectation *)keyValueObservingExpectationForObject:(id)objectToObserve keyPath:(NSString *)keyPath handler:(nullable XCKeyValueObservingExpectationHandler)handler; 166 | #else 167 | - (XCTestExpectation *)keyValueObservingExpectationForObject:(id)objectToObserve keyPath:(NSString *)keyPath handler:(XCKeyValueObservingExpectationHandler)handler; 168 | #endif 169 | 170 | /*! 171 | * @typedef 172 | * A block to be invoked when a notification matching the specified name is observed 173 | * from the object. 174 | * 175 | * @param notification 176 | * The notification object. 177 | * 178 | * @return 179 | * Return YES if the expectation is fulfilled, NO if it is not. 180 | */ 181 | typedef BOOL (^XCNotificationExpectationHandler)(NSNotification *notification); 182 | 183 | /*! 184 | * @method -expectationForNotification:object:handler: 185 | * 186 | * @discussion 187 | * A convenience method for asynchronous tests that observe NSNotifications. 188 | * 189 | * @param notificationName 190 | * The notification to register for. 191 | * 192 | * @param objectToObserve 193 | * The object to observe. 194 | * 195 | * @param handler 196 | * Optional handler, /see XCNotificationExpectationHandler. If not provided, the expectation 197 | * will be fulfilled by the first notification matching the specified name from the 198 | * observed object. 199 | * 200 | * @return 201 | * Creates and returns an expectation associated with the test case. 202 | */ 203 | #if XCT_NULLABLE_AVAILABLE 204 | - (XCTestExpectation *)expectationForNotification:(NSString *)notificationName object:(nullable id)objectToObserve handler:(nullable XCNotificationExpectationHandler)handler; 205 | #else 206 | - (XCTestExpectation *)expectationForNotification:(NSString *)notificationName object:(id)objectToObserve handler:(XCNotificationExpectationHandler)handler; 207 | #endif 208 | 209 | /*! 210 | * @typedef 211 | * Handler called when evaluating the predicate against the object returns true. If the handler is not 212 | * provided the first successful evaluation will fulfill the expectation. If provided, the handler can 213 | * override that behavior which leaves the caller responsible for fulfilling the expectation. 214 | */ 215 | typedef BOOL (^XCPredicateExpectationHandler)(); 216 | 217 | /*! 218 | * @method -expectationForPredicate:evaluatedWithObject:handler: 219 | * Creates an expectation that is fulfilled if the predicate returns true when evaluated with the given 220 | * object. The expectation periodically evaluates the predicate and also may use notifications or other 221 | * events to optimistically re-evaluate. 222 | */ 223 | #if XCT_NULLABLE_AVAILABLE 224 | - (XCTestExpectation *)expectationForPredicate:(NSPredicate *)predicate evaluatedWithObject:(id)object handler:(nullable XCPredicateExpectationHandler)handler; 225 | #else 226 | - (XCTestExpectation *)expectationForPredicate:(NSPredicate *)predicate evaluatedWithObject:(id)object handler:(XCPredicateExpectationHandler)handler; 227 | #endif 228 | 229 | @end 230 | 231 | NS_ASSUME_NONNULL_END 232 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestCase.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | #import 34 | 35 | NS_ASSUME_NONNULL_BEGIN 36 | 37 | @class XCTestSuite; 38 | @class XCTestCaseRun; 39 | 40 | #if XCT_UI_TESTING_AVAILABLE 41 | @class XCUIElement; 42 | #endif 43 | 44 | /*! 45 | * @class XCTestCase 46 | * XCTestCase is a concrete subclass of XCTest that should be the override point for 47 | * most developers creating tests for their projects. A test case subclass can have 48 | * multiple test methods and supports setup and tear down that executes for every test 49 | * method as well as class level setup and tear down. 50 | * 51 | * To define a test case: 52 | * 53 | * • Create a subclass of XCTestCase. 54 | * • Implement -test methods. 55 | * • Optionally define instance variables or properties that store the state of the test. 56 | * • Optionally initialize state by overriding -setUp 57 | * • Optionally clean-up after a test by overriding -tearDown. 58 | * 59 | * Test methods are instance methods meeting these requirements: 60 | * • accepting no parameters 61 | * • returning no value 62 | * • prefixed with 'test' 63 | * 64 | * For example: 65 | 66 | - (void)testSomething; 67 | 68 | * Test methods are automatically recognized as test cases by the XCTest framework. 69 | * Each XCTestCase subclass's defaultTestSuite is a XCTestSuite which includes these 70 | * tests. Test method implementations usually contain assertions that must be verified 71 | * for the test to pass, for example: 72 | 73 | @interface MathTest : XCTestCase { 74 | @private 75 | float f1; 76 | float f2; 77 | } 78 | 79 | - (void)testAddition; 80 | 81 | @end 82 | 83 | @implementation MathTest 84 | 85 | - (void)setUp 86 | { 87 | f1 = 2.0; 88 | f2 = 3.0; 89 | } 90 | 91 | - (void)testAddition 92 | { 93 | XCTAssertTrue (f1 + f2 == 5.0); 94 | } 95 | @end 96 | */ 97 | @interface XCTestCase : XCTest { 98 | #ifndef __OBJC2__ 99 | @private 100 | id _internalImplementation; 101 | #endif 102 | } 103 | 104 | /*! 105 | * @method +testCaseWithInvocation: 106 | */ 107 | #if XCT_NULLABLE_AVAILABLE 108 | + (instancetype)testCaseWithInvocation:(nullable NSInvocation *)invocation; 109 | #else 110 | + (instancetype)testCaseWithInvocation:(NSInvocation *)invocation; 111 | #endif 112 | 113 | /*! 114 | * @method -initWithInvocation: 115 | */ 116 | #if XCT_NULLABLE_AVAILABLE 117 | - (instancetype)initWithInvocation:(nullable NSInvocation *)invocation; 118 | #else 119 | - (instancetype)initWithInvocation:(NSInvocation *)invocation; 120 | #endif 121 | 122 | /*! 123 | * @method +testCaseWithSelector: 124 | */ 125 | + (instancetype)testCaseWithSelector:(SEL)selector; 126 | 127 | /*! 128 | * @method -initWithSelector: 129 | */ 130 | - (instancetype)initWithSelector:(SEL)selector; 131 | 132 | /*! 133 | * @property invocation 134 | * The invocation used when this test is run. 135 | */ 136 | #if XCT_NULLABLE_AVAILABLE 137 | @property (strong, nullable) NSInvocation *invocation; 138 | #else 139 | @property (strong) NSInvocation *invocation; 140 | #endif 141 | 142 | /*! 143 | * @method -invokeTest 144 | * Invoking a test performs its setUp, invocation, and tearDown. In general this 145 | * should not be called directly. 146 | */ 147 | - (void)invokeTest; 148 | 149 | /*! 150 | * @property continueAfterFailure 151 | * The test case behavior after a failure. Defaults to YES. 152 | */ 153 | @property BOOL continueAfterFailure; 154 | 155 | /*! 156 | * @method -recordFailureWithDescription:inFile:atLine:expected: 157 | * Records a failure in the execution of the test and is used by all test assertions. 158 | * 159 | * @param description The description of the failure being reported. 160 | * 161 | * @param filePath The file path to the source file where the failure being reported 162 | * was encountered. 163 | * 164 | * @param lineNumber The line number in the source file at filePath where the 165 | * failure being reported was encountered. 166 | * 167 | * @param expected YES if the failure being reported was the result of a failed assertion, 168 | * NO if it was the result of an uncaught exception. 169 | * 170 | */ 171 | - (void)recordFailureWithDescription:(NSString *)description inFile:(NSString *)filePath atLine:(NSUInteger)lineNumber expected:(BOOL)expected; 172 | 173 | /*! 174 | * @method +testInvocations 175 | * Invocations for each test method in the test case. 176 | */ 177 | #if XCT_GENERICS_AVAILABLE 178 | + (NSArray *)testInvocations; 179 | #else 180 | + (NSArray *)testInvocations; 181 | #endif 182 | 183 | #pragma mark - Measuring Performance Metrics 184 | 185 | /*! 186 | * @const XCTPerformanceMetric_WallClockTime 187 | * Records wall clock time in seconds between startMeasuring/stopMeasuring. 188 | */ 189 | XCT_EXPORT NSString * const XCTPerformanceMetric_WallClockTime; 190 | 191 | /*! 192 | * @method +defaultPerformanceMetrics 193 | * The names of the performance metrics to measure when invoking -measureBlock:. Returns XCTPerformanceMetric_WallClockTime by default. Subclasses can override this to change the behavior of -measureBlock: 194 | */ 195 | #if XCT_GENERICS_AVAILABLE 196 | + (NSArray *)defaultPerformanceMetrics; 197 | #else 198 | + (NSArray *)defaultPerformanceMetrics; 199 | #endif 200 | 201 | /*! 202 | * @method -measureBlock: 203 | * 204 | * Call from a test method to measure resources (+defaultPerformanceMetrics) used by the 205 | * block in the current process. 206 | 207 | - (void)testPerformanceOfMyFunction { 208 | 209 | [self measureBlock:^{ 210 | // Do that thing you want to measure. 211 | MyFunction(); 212 | }]; 213 | } 214 | 215 | * @param block A block whose performance to measure. 216 | */ 217 | - (void)measureBlock:(void (^)(void))block; 218 | 219 | /*! 220 | * @method -measureMetrics:automaticallyStartMeasuring:forBlock: 221 | * 222 | * Call from a test method to measure resources (XCTPerformanceMetrics) used by the 223 | * block in the current process. Each metric will be measured across calls to the block. 224 | * The number of times the block will be called is undefined and may change in the 225 | * future. For one example of why, as long as the requested performance metrics do 226 | * not interfere with each other the API will measure all metrics across the same 227 | * calls to the block. If the performance metrics may interfere the API will measure 228 | * them separately. 229 | 230 | - (void)testMyFunction2_WallClockTime { 231 | [self measureMetrics:[[self class] defaultPerformanceMetrics] automaticallyStartMeasuring:NO forBlock:^{ 232 | 233 | // Do setup work that needs to be done for every iteration but you don't want to measure before the call to -startMeasuring 234 | SetupSomething(); 235 | [self startMeasuring]; 236 | 237 | // Do that thing you want to measure. 238 | MyFunction(); 239 | [self stopMeasuring]; 240 | 241 | // Do teardown work that needs to be done for every iteration but you don't want to measure after the call to -stopMeasuring 242 | TeardownSomething(); 243 | }]; 244 | } 245 | 246 | * Caveats: 247 | * • If YES was passed for automaticallyStartMeasuring and -startMeasuring is called 248 | * anyway, the test will fail. 249 | * • If NO was passed for automaticallyStartMeasuring then -startMeasuring must be 250 | * called once and only once before the end of the block or the test will fail. 251 | * • If -stopMeasuring is called multiple times during the block the test will fail. 252 | * 253 | * @param metrics An array of NSStrings (XCTPerformanceMetrics) to measure. Providing an unrecognized string is a test failure. 254 | * 255 | * @param automaticallyStartMeasuring If NO, XCTestCase will not take any measurements until -startMeasuring is called. 256 | * 257 | * @param block A block whose performance to measure. 258 | */ 259 | #if XCT_GENERICS_AVAILABLE 260 | - (void)measureMetrics:(NSArray *)metrics automaticallyStartMeasuring:(BOOL)automaticallyStartMeasuring forBlock:(void (^)(void))block; 261 | #else 262 | - (void)measureMetrics:(NSArray *)metrics automaticallyStartMeasuring:(BOOL)automaticallyStartMeasuring forBlock:(void (^)(void))block; 263 | #endif 264 | 265 | /*! 266 | * @method -startMeasuring 267 | * Call this from within a measure block to set the beginning of the critical section. 268 | * Measurement of metrics will start at this point. 269 | */ 270 | - (void)startMeasuring; 271 | 272 | /*! 273 | * @method -stopMeasuring 274 | * Call this from within a measure block to set the ending of the critical section. 275 | * Measurement of metrics will stop at this point. 276 | */ 277 | - (void)stopMeasuring; 278 | 279 | #pragma mark - UI Testing Support 280 | #if XCT_UI_TESTING_AVAILABLE 281 | 282 | /*! Adds a handler to the current context. Returns a token that can be used to unregister the handler. Handlers are invoked in the reverse order in which they are added until one of the handlers returns true, indicating that it has handled the alert. 283 | @param handlerDescription Explanation of the behavior and purpose of this handler, mainly used for debugging and analysis. 284 | @param handler Handler block for asynchronous UI such as alerts and other dialogs. Handlers should return true if they handled the UI, false if they did not. The handler is passed an XCUIElement representing the top level UI element for the alert. 285 | */ 286 | - (id )addUIInterruptionMonitorWithDescription:(NSString *)handlerDescription handler:(BOOL (^)(XCUIElement *interruptingElement))handler; 287 | 288 | /*! Removes a handler using the token provided when it was added. */ 289 | - (void)removeUIInterruptionMonitor:(id )monitor; 290 | 291 | #endif 292 | 293 | @end 294 | 295 | @interface XCTestCase (XCTestSuiteExtensions) 296 | 297 | /*! 298 | * @method +defaultTestSuite 299 | * Returns a test suite containing test cases for all of the tests in the class. 300 | */ 301 | + (XCTestSuite *)defaultTestSuite; 302 | 303 | /*! 304 | * @method +setUp 305 | * Setup method called before the invocation of any test method in the class. 306 | */ 307 | + (void)setUp; 308 | 309 | /*! 310 | * @method +testDown 311 | * Teardown method called after the invocation of every test method in the class. 312 | */ 313 | + (void)tearDown; 314 | 315 | @end 316 | 317 | NS_ASSUME_NONNULL_END 318 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestCaseRun.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | NS_ASSUME_NONNULL_BEGIN 35 | 36 | @class XCTestCase; 37 | 38 | @interface XCTestCaseRun : XCTestRun 39 | 40 | - (void)recordFailureInTest:(XCTestCase *)testCase withDescription:(NSString *)description inFile:(NSString *)filePath atLine:(NSUInteger)lineNumber expected:(BOOL)expected DEPRECATED_ATTRIBUTE; 41 | 42 | @end 43 | 44 | NS_ASSUME_NONNULL_END 45 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestDefines.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | #if defined(__cplusplus) 35 | #define XCT_EXPORT extern "C" 36 | #else 37 | #define XCT_EXPORT extern 38 | #endif 39 | 40 | #if __has_feature(objc_generics) 41 | #define XCT_GENERICS_AVAILABLE 1 42 | #endif 43 | 44 | #if __has_feature(nullability) 45 | #define XCT_NULLABLE_AVAILABLE 1 46 | #endif 47 | 48 | #if (!defined(__OBJC_GC__) || (defined(__OBJC_GC__) && ! __OBJC_GC__)) && (defined(__OBJC2__) && __OBJC2__) && (!defined (TARGET_OS_WATCH) || (defined(TARGET_OS_WATCH) && ! TARGET_OS_WATCH)) 49 | #ifndef XCT_UI_TESTING_AVAILABLE 50 | #define XCT_UI_TESTING_AVAILABLE 1 51 | #endif 52 | #endif 53 | 54 | #ifndef XCT_NULLABLE_AVAILABLE 55 | #define XCT_NULLABLE_AVAILABLE 0 56 | #endif 57 | 58 | #ifndef XCT_GENERICS_AVAILABLE 59 | #define XCT_GENERICS_AVAILABLE 0 60 | #endif 61 | 62 | #ifndef XCT_UI_TESTING_AVAILABLE 63 | #define XCT_UI_TESTING_AVAILABLE 0 64 | #endif 65 | 66 | #if TARGET_OS_SIMULATOR 67 | #define XCTEST_SIMULATOR_UNAVAILABLE(_msg) __attribute__((availability(ios,unavailable,message=_msg))) 68 | #else 69 | #define XCTEST_SIMULATOR_UNAVAILABLE(_msg) 70 | #endif 71 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestErrors.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | /*! 8 | * @const XCTestErrorDomain 9 | * Domain for errors provided by the XCTest framework. 10 | */ 11 | XCT_EXPORT NSString *const XCTestErrorDomain; 12 | 13 | /*! 14 | * @typedef XCTestErrorCode 15 | * Error codes used with errors in the XCTestErrorDomain. 16 | * 17 | * @constant XCTestErrorCodeTimeoutWhileWaiting Indicates that a call to -waitForExpectationsWithTimeout:handler: timed out. 18 | * @constant XCTestErrorCodeFailureWhileWaiting Indicates that a failure assertion was raised while waiting in -waitForExpectationsWithTimeout:handler:. 19 | */ 20 | typedef NS_ENUM(NSInteger, XCTestErrorCode) { 21 | XCTestErrorCodeTimeoutWhileWaiting, 22 | XCTestErrorCodeFailureWhileWaiting, 23 | }; 24 | 25 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestLog.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | /*! 35 | * XCTestLog is deprecated. 36 | */ 37 | 38 | DEPRECATED_ATTRIBUTE 39 | #pragma clang diagnostic push 40 | #pragma clang diagnostic ignored "-Wdeprecated-declarations" 41 | @interface XCTestLog : XCTestObserver 42 | #pragma clang diagnostic pop 43 | 44 | @property (readonly, strong) NSFileHandle *logFileHandle; 45 | - (void)testLogWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2); 46 | - (void)testLogWithFormat:(NSString *)format arguments:(va_list)arguments NS_FORMAT_FUNCTION(1,0); 47 | 48 | @end 49 | 50 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestObservation.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | NS_ASSUME_NONNULL_BEGIN 8 | 9 | @class XCTestSuite, XCTestCase; 10 | 11 | /*! 12 | * @protocol XCTestObservation 13 | * 14 | * Objects conforming to XCTestObservation can register to be notified of the progress of test runs. See XCTestObservationCenter 15 | * for details on registration. 16 | * 17 | * Progress events are delivered in the following sequence: 18 | * 19 | * -testBundleWillStart: // exactly once per test bundle 20 | * -testSuiteWillStart: // exactly once per test suite 21 | * -testCaseWillStart: // exactly once per test case 22 | * -testCase:didFailWithDescription:... // zero or more times per test case, any time between test case start and finish 23 | * -testCaseDidFinish: // exactly once per test case 24 | * -testSuite:didFailWithDescription:... // zero or more times per test suite, any time between test suite start and finish 25 | * -testSuiteDidFinish: // exactly once per test suite 26 | * -testBundleDidFinish: // exactly once per test bundle 27 | */ 28 | @protocol XCTestObservation 29 | @optional 30 | 31 | /*! 32 | * @method -testBundleWillStart: 33 | * 34 | * Sent immediately before tests begin as a hook for any pre-testing setup. 35 | * 36 | * @param testBundle The bundle containing the tests that were executed. 37 | */ 38 | - (void)testBundleWillStart:(NSBundle *)testBundle; 39 | 40 | /*! 41 | * @method -testBundleDidFinish: 42 | * 43 | * Sent immediately after all tests have finished as a hook for any post-testing activity. The test process will generally 44 | * exit after this method returns, so if there is long running and/or asynchronous work to be done after testing, be sure 45 | * to implement this method in a way that it blocks until all such activity is complete. 46 | * 47 | * @param testBundle The bundle containing the tests that were executed. 48 | */ 49 | - (void)testBundleDidFinish:(NSBundle *)testBundle; 50 | 51 | /*! 52 | * @method -testSuiteWillStart: 53 | * 54 | * Sent when a test suite starts executing. 55 | * 56 | * @param testSuite The test suite that started. Additional information can be retrieved from the associated XCTestRun. 57 | */ 58 | - (void)testSuiteWillStart:(XCTestSuite *)testSuite; 59 | 60 | /*! 61 | * @method -testSuiteDidFail:withDescription:inFile:atLine: 62 | * 63 | * Sent when a test suite reports a failure. Suite failures are most commonly reported during suite-level setup and teardown 64 | * whereas failures during tests are reported for the test case alone and are not reported as suite failures. 65 | * 66 | * @param testSuite The test suite that failed. Additional information can be retrieved from the associated XCTestRun. 67 | * @param description A textual description of the failure. 68 | * @param filePath The path of file where the failure occurred, nil if unknown. 69 | * @param lineNumber The line where the failure was reported. 70 | */ 71 | #if XCT_NULLABLE_AVAILABLE 72 | - (void)testSuite:(XCTestSuite *)testSuite didFailWithDescription:(NSString *)description inFile:(nullable NSString *)filePath atLine:(NSUInteger)lineNumber; 73 | #else 74 | - (void)testSuite:(XCTestSuite *)testSuite didFailWithDescription:(NSString *)description inFile:(NSString *)filePath atLine:(NSUInteger)lineNumber; 75 | #endif 76 | 77 | /*! 78 | * @method -testSuiteDidFinish: 79 | * 80 | * Sent when a test suite finishes executing. 81 | * 82 | * @param testSuite The test suite that finished. Additional information can be retrieved from the associated XCTestRun. 83 | */ 84 | - (void)testSuiteDidFinish:(XCTestSuite *)testSuite; 85 | 86 | /*! 87 | * @method -testCaseWillStart: 88 | * 89 | * Sent when a test case starts executing. 90 | * 91 | * @param testCase The test case that started. Additional information can be retrieved from the associated XCTestRun. 92 | */ 93 | - (void)testCaseWillStart:(XCTestCase *)testCase; 94 | 95 | /*! 96 | * @method -testCaseDidFail:withDescription:inFile:atLine: 97 | * 98 | * Sent when a test case reports a failure. 99 | * 100 | * @param testCase The test case that failed. Additional information can be retrieved from the associated XCTestRun. 101 | * @param description A textual description of the failure. 102 | * @param filePath The path of file where the failure occurred, nil if unknown. 103 | * @param lineNumber The line where the failure was reported. 104 | */ 105 | #if XCT_NULLABLE_AVAILABLE 106 | - (void)testCase:(XCTestCase *)testCase didFailWithDescription:(NSString *)description inFile:(nullable NSString *)filePath atLine:(NSUInteger)lineNumber; 107 | #else 108 | - (void)testCase:(XCTestCase *)testCase didFailWithDescription:(NSString *)description inFile:(NSString *)filePath atLine:(NSUInteger)lineNumber; 109 | #endif 110 | 111 | /*! 112 | * @method -testCaseDidFinish: 113 | * 114 | * Sent when a test case finishes executing. 115 | * 116 | * @param testCase The test case that finished. Additional information can be retrieved from the associated XCTestRun. 117 | */ 118 | - (void)testCaseDidFinish:(XCTestCase *)testCase; 119 | 120 | @end 121 | 122 | NS_ASSUME_NONNULL_END 123 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestObservationCenter.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #import 8 | 9 | NS_ASSUME_NONNULL_BEGIN 10 | 11 | /*! 12 | * @class XCTestObservationCenter 13 | * 14 | * The XCTestObservationCenter distributes information about the progress of test runs to registered 15 | * observers. Observers can be any object conforming to the XCTestObservation protocol. 16 | * 17 | * If an NSPrincipalClass is declared in the test bundle's Info.plist, XCTest automatically creates a 18 | * single instance of that class when the test bundle is loaded. This instance provides a means to register 19 | * observers or do other pretesting global set up. 20 | * 21 | * Observers must be registered manually. The NSPrincipalClass instance is not automatically 22 | * registered as an observer even if the class conforms to . 23 | */ 24 | @interface XCTestObservationCenter : NSObject { 25 | #ifndef __OBJC2__ 26 | @private 27 | id _internalImplementation; 28 | #endif 29 | } 30 | 31 | /*! 32 | * @method +sharedTestObservationCenter 33 | * 34 | * @return The shared XCTestObservationCenter singleton instance. 35 | */ 36 | + (XCTestObservationCenter *)sharedTestObservationCenter; 37 | 38 | /*! 39 | * @method -addTestObserver: 40 | * 41 | * Register an object conforming to XCTestObservation as an observer for the current test session. Observers may be added 42 | * at any time, but will not receive events that occurred before they were registered. The observation center maintains a strong 43 | * reference to observers. 44 | * 45 | * Events may be delivered to observers in any order - given observers A and B, A may be notified of a test failure before 46 | * or after B. Any ordering dependencies or serialization requirements must be managed by clients. 47 | */ 48 | - (void)addTestObserver:(id )testObserver; 49 | 50 | /*! 51 | * @method -removeTestObserver: 52 | * 53 | * Unregister an object conforming to XCTestObservation as an observer for the current test session. 54 | */ 55 | - (void)removeTestObserver:(id )testObserver; 56 | 57 | @end 58 | 59 | NS_ASSUME_NONNULL_END 60 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestObserver.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | @class XCTestRun; 35 | 36 | /*! 37 | * XCTestObserver is deprecated. 38 | */ 39 | DEPRECATED_ATTRIBUTE 40 | @interface XCTestObserver : NSObject 41 | 42 | - (void)startObserving; 43 | - (void)stopObserving; 44 | - (void)testSuiteDidStart:(XCTestRun *)testRun; 45 | - (void)testSuiteDidStop:(XCTestRun *)testRun; 46 | - (void)testCaseDidStart:(XCTestRun *)testRun; 47 | - (void)testCaseDidStop:(XCTestRun *)testRun; 48 | - (void)testCaseDidFail:(XCTestRun *)testRun withDescription:(NSString *)description inFile:(NSString *)filePath atLine:(NSUInteger)lineNumber; 49 | 50 | @end 51 | 52 | /*! 53 | * XCTestObserverClassKey is deprecated. 54 | */ 55 | XCT_EXPORT NSString * const XCTestObserverClassKey DEPRECATED_ATTRIBUTE; 56 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestProbe.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | #import 35 | 36 | XCT_EXPORT int XCTSelfTestMain(void) DEPRECATED_ATTRIBUTE; 37 | 38 | DEPRECATED_ATTRIBUTE 39 | @interface XCTestProbe : NSObject 40 | 41 | + (BOOL)isTesting; 42 | 43 | @end 44 | 45 | XCT_EXPORT NSString * const XCTestedUnitPath DEPRECATED_ATTRIBUTE; 46 | XCT_EXPORT NSString * const XCTestScopeKey DEPRECATED_ATTRIBUTE; 47 | XCT_EXPORT NSString * const XCTestScopeAll DEPRECATED_ATTRIBUTE; 48 | XCT_EXPORT NSString * const XCTestScopeNone DEPRECATED_ATTRIBUTE; 49 | XCT_EXPORT NSString * const XCTestScopeSelf DEPRECATED_ATTRIBUTE; 50 | XCT_EXPORT NSString * const XCTestToolKey DEPRECATED_ATTRIBUTE; 51 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestRun.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | NS_ASSUME_NONNULL_BEGIN 35 | 36 | /*! 37 | * @class XCTestRun 38 | * A test run collects information about the execution of a test. Failures in explicit 39 | * test assertions are classified as "expected", while failures from unrelated or 40 | * uncaught exceptions are classified as "unexpected". 41 | */ 42 | @interface XCTestRun : NSObject { 43 | #ifndef __OBJC2__ 44 | @private 45 | id _internalTestRun; 46 | #endif 47 | } 48 | 49 | /*! 50 | * @method +testRunWithTest: 51 | * Class factory method for the XCTestRun class. 52 | * 53 | * @param test An XCTest instance. 54 | * 55 | * @return A test run for the provided test. 56 | */ 57 | + (instancetype)testRunWithTest:(XCTest *)test; 58 | 59 | /*! 60 | * @method -initWithTest: 61 | * Designated initializer for the XCTestRun class. 62 | * 63 | * @param test An XCTest instance. 64 | * 65 | * @return A test run for the provided test. 66 | */ 67 | - (instancetype)initWithTest:(XCTest *)test NS_DESIGNATED_INITIALIZER; 68 | 69 | /*! 70 | * @property test 71 | * The test instance provided when the test run was initialized. 72 | */ 73 | @property (readonly, strong) XCTest *test; 74 | 75 | /*! 76 | * @method -start 77 | * Start a test run. Must not be called more than once. 78 | */ 79 | - (void)start; 80 | 81 | /*! 82 | * @method -stop 83 | * Stop a test run. Must not be called unless the run has been started. Must not be called more than once. 84 | */ 85 | - (void)stop; 86 | 87 | /*! 88 | * @property startDate 89 | * The time at which the test run was started, or nil. 90 | */ 91 | #if XCT_NULLABLE_AVAILABLE 92 | @property (readonly, copy, nullable) NSDate *startDate; 93 | #else 94 | @property (readonly, copy) NSDate *startDate; 95 | #endif 96 | 97 | /*! 98 | * @property stopDate 99 | * The time at which the test run was stopped, or nil. 100 | */ 101 | #if XCT_NULLABLE_AVAILABLE 102 | @property (readonly, copy, nullable) NSDate *stopDate; 103 | #else 104 | @property (readonly, copy) NSDate *stopDate; 105 | #endif 106 | 107 | /*! 108 | * @property totalDuration 109 | * The number of seconds that elapsed between when the run was started and when it was stopped. 110 | */ 111 | @property (readonly) NSTimeInterval totalDuration; 112 | 113 | /*! 114 | * @property testDuration 115 | * The number of seconds that elapsed between when the run was started and when it was stopped. 116 | */ 117 | @property (readonly) NSTimeInterval testDuration; 118 | 119 | /*! 120 | * @property testCaseCount 121 | * The number of tests in the run. 122 | */ 123 | @property (readonly) NSUInteger testCaseCount; 124 | 125 | /*! 126 | * @property executionCount 127 | * The number of test executions recorded during the run. 128 | */ 129 | @property (readonly) NSUInteger executionCount; 130 | 131 | /*! 132 | * @property failureCount 133 | * The number of test failures recorded during the run. 134 | */ 135 | @property (readonly) NSUInteger failureCount; 136 | 137 | /*! 138 | * @property unexpectedExceptionCount 139 | * The number of uncaught exceptions recorded during the run. 140 | */ 141 | @property (readonly) NSUInteger unexpectedExceptionCount; 142 | 143 | /*! 144 | * @property totalFailureCount 145 | * The total number of test failures and uncaught exceptions recorded during the run. 146 | */ 147 | @property (readonly) NSUInteger totalFailureCount; 148 | 149 | /*! 150 | * @property hasSucceeded 151 | * YES if all tests in the run completed their execution without recording any failures, otherwise NO. 152 | */ 153 | @property (readonly) BOOL hasSucceeded; 154 | 155 | /*! 156 | * @method -recordFailureWithDescription:inFile:atLine:expected: 157 | * Records a failure in the execution of the test for this test run. Must not be called 158 | * unless the run has been started. Must not be called if the test run has been stopped. 159 | * 160 | * @param description The description of the failure being reported. 161 | * 162 | * @param filePath The file path to the source file where the failure being reported 163 | * was encountered or nil if unknown. 164 | * 165 | * @param lineNumber The line number in the source file at filePath where the 166 | * failure being reported was encountered. 167 | * 168 | * @param expected YES if the failure being reported was the result of a failed assertion, 169 | * NO if it was the result of an uncaught exception. 170 | * 171 | */ 172 | #if XCT_NULLABLE_AVAILABLE 173 | - (void)recordFailureWithDescription:(NSString *)description inFile:(nullable NSString *)filePath atLine:(NSUInteger)lineNumber expected:(BOOL)expected; 174 | #else 175 | - (void)recordFailureWithDescription:(NSString *)description inFile:(NSString *)filePath atLine:(NSUInteger)lineNumber expected:(BOOL)expected; 176 | #endif 177 | 178 | @end 179 | 180 | NS_ASSUME_NONNULL_END 181 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestSuite.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | NS_ASSUME_NONNULL_BEGIN 35 | 36 | /*! 37 | * @class XCTestSuite 38 | * A concrete subclass of XCTest, XCTestSuite is a collection of test cases. Suites 39 | * are usually managed by the IDE, but XCTestSuite also provides API for dynamic test 40 | * and suite management: 41 | 42 | XCTestSuite *suite = [XCTestSuite testSuiteWithName:@"My tests"]; 43 | [suite addTest:[MathTest testCaseWithSelector:@selector(testAdd)]]; 44 | [suite addTest:[MathTest testCaseWithSelector:@selector(testDivideByZero)]]; 45 | 46 | * Alternatively, a test suite can extract the tests to be run automatically. To do so, 47 | * pass the class of your test case class to the suite's constructor: 48 | 49 | XCTestSuite *suite = [XCTestSuite testSuiteForTestCaseClass:[MathTest class]]; 50 | 51 | * This creates a suite with all the methods starting with "test" that take no arguments. 52 | * Also, a test suite of all the test cases found in the runtime can be created automatically: 53 | 54 | XCTestSuite *suite = [XCTestSuite defaultTestSuite]; 55 | 56 | * This creates a suite of suites with all the XCTestCase subclasses methods that start 57 | * with "test" and take no arguments. 58 | */ 59 | @interface XCTestSuite : XCTest { 60 | #ifndef __OBJC2__ 61 | @private 62 | NSString *_name; 63 | #if XCT_GENERICS_AVAILABLE 64 | NSMutableArray <__kindof XCTest *> *_tests; 65 | #else 66 | NSMutableArray *_tests; 67 | #endif 68 | #endif 69 | } 70 | 71 | + (instancetype)defaultTestSuite; 72 | + (instancetype)testSuiteForBundlePath:(NSString *)bundlePath; 73 | + (instancetype)testSuiteForTestCaseWithName:(NSString *)name; 74 | + (instancetype)testSuiteForTestCaseClass:(Class)testCaseClass; 75 | 76 | + (instancetype)testSuiteWithName:(NSString *)name; 77 | - (instancetype)initWithName:(NSString *)name; 78 | 79 | - (void)addTest:(XCTest *)test; 80 | 81 | #if XCT_GENERICS_AVAILABLE 82 | @property (readonly, copy) NSArray <__kindof XCTest *> *tests; 83 | #else 84 | @property (readonly, copy) NSArray *tests; 85 | #endif 86 | 87 | @end 88 | 89 | NS_ASSUME_NONNULL_END 90 | 91 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCTestSuiteRun.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2013-2015 Apple Inc. All rights reserved. 3 | // 4 | // Copyright (c) 1997-2005, Sen:te (Sente SA). All rights reserved. 5 | // 6 | // Use of this source code is governed by the following license: 7 | // 8 | // Redistribution and use in source and binary forms, with or without modification, 9 | // are permitted provided that the following conditions are met: 10 | // 11 | // (1) Redistributions of source code must retain the above copyright notice, 12 | // this list of conditions and the following disclaimer. 13 | // 14 | // (2) Redistributions in binary form must reproduce the above copyright notice, 15 | // this list of conditions and the following disclaimer in the documentation 16 | // and/or other materials provided with the distribution. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' 19 | // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 21 | // IN NO EVENT SHALL Sente SA OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 23 | // OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 | // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 25 | // OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 | // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | // 28 | // Note: this license is equivalent to the FreeBSD license. 29 | // 30 | // This notice may not be removed from this file. 31 | 32 | #import 33 | 34 | NS_ASSUME_NONNULL_BEGIN 35 | 36 | @interface XCTestSuiteRun : XCTestRun { 37 | #ifndef __OBJC2__ 38 | @private 39 | #if XCT_GENERICS_AVAILABLE 40 | NSMutableArray *_testRuns; 41 | #else 42 | NSMutableArray *_testRuns; 43 | #endif 44 | #endif 45 | } 46 | 47 | #if XCT_GENERICS_AVAILABLE 48 | @property (readonly, copy) NSArray *testRuns; 49 | #else 50 | @property (readonly, copy) NSArray *testRuns; 51 | #endif 52 | 53 | - (void)addTestRun:(XCTestRun *)testRun; 54 | 55 | @end 56 | 57 | NS_ASSUME_NONNULL_END 58 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIApplication.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | #import 7 | 8 | NS_ASSUME_NONNULL_BEGIN 9 | 10 | #if XCT_UI_TESTING_AVAILABLE 11 | 12 | NS_CLASS_AVAILABLE(10_11, 9_0) 13 | 14 | /*! Proxy for an application. The information identifying the application is specified in the Xcode target settings as the "Target Application". */ 15 | @interface XCUIApplication : XCUIElement 16 | 17 | /*! 18 | * Launches the application. This call is synchronous and when it returns the application is launched 19 | * and ready to handle user events. Any failure in the launch sequence is reported as a test failure 20 | * and halts the test at this point. If the application is already running, this call will first 21 | * terminate the existing instance to ensure clean state of the launched instance. 22 | */ 23 | - (void)launch; 24 | 25 | /*! 26 | * Terminates any running instance of the application. If the application has an existing debug session 27 | * via Xcode, the termination is implemented as a halt via that debug connection. Otherwise, a SIGKILL 28 | * is sent to the process. 29 | */ 30 | - (void)terminate; 31 | 32 | /*! 33 | * The arguments that will be passed to the application on launch. If not modified, these are the 34 | * arguments that Xcode will pass on launch. Those arguments can be changed, added to, or removed. 35 | * Unlike NSTask, it is legal to modify these arguments after the application has been launched. These 36 | * changes will not affect the current launch session, but will take effect the next time the application 37 | * is launched. 38 | */ 39 | @property (nonatomic, copy) NSArray *launchArguments; 40 | 41 | /*! 42 | * The environment that will be passed to the application on launch. If not modified, this is the 43 | * environment that Xcode will pass on launch. Those variables can be changed, added to, or removed. 44 | * Unlike NSTask, it is legal to modify the environment after the application has been launched. These 45 | * changes will not affect the current launch session, but will take effect the next time the application 46 | * is launched. 47 | */ 48 | @property (nonatomic, copy) NSDictionary *launchEnvironment; 49 | 50 | @end 51 | 52 | #endif 53 | 54 | NS_ASSUME_NONNULL_END 55 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUICoordinate.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #if TARGET_OS_IPHONE 8 | #import 9 | #else 10 | #import 11 | #endif 12 | 13 | 14 | NS_ASSUME_NONNULL_BEGIN 15 | 16 | #if XCT_UI_TESTING_AVAILABLE && !TARGET_OS_TV 17 | 18 | @class XCUIElement; 19 | 20 | NS_CLASS_AVAILABLE(10_11, 9_0) 21 | 22 | /*! A coordinate represents a location on screen, relative to some element. Coordinates are dynamic, just like the elements to which they refer, and may compute different screen locations at different times, or be invalid if the referenced element does not exist. */ 23 | @interface XCUICoordinate : NSObject 24 | 25 | /*! Coordinates are never instantiated directly. Instead, they are created by elements or by other coordinates. */ 26 | - (instancetype)init NS_UNAVAILABLE; 27 | 28 | /*! The element that the coordinate is based on, either directly or via the coordinate from which it was derived. */ 29 | @property (readonly) XCUIElement *referencedElement; 30 | 31 | /*! The dynamically computed value of the coordinate's location on screen. Note that this value is dependent on the current frame of the referenced element; if the element's frame changes, so will the value returned by this property. If the referenced element does exist when this is called, it will fail the test; check the referenced element's exists property if the element may not be present. */ 32 | @property (readonly) CGPoint screenPoint; 33 | 34 | /*! Creates a new coordinate with an absolute offset in points from the original coordinate. */ 35 | - (XCUICoordinate *)coordinateWithOffset:(CGVector)offsetVector; 36 | 37 | #if TARGET_OS_IPHONE 38 | - (void)tap; 39 | - (void)doubleTap; 40 | - (void)pressForDuration:(NSTimeInterval)duration; 41 | - (void)pressForDuration:(NSTimeInterval)duration thenDragToCoordinate:(XCUICoordinate *)otherCoordinate; 42 | #else 43 | - (void)hover; 44 | - (void)click; 45 | - (void)doubleClick; 46 | - (void)rightClick; 47 | - (void)clickForDuration:(NSTimeInterval)duration thenDragToCoordinate:(XCUICoordinate *)otherCoordinate; 48 | - (void)scrollByDeltaX:(CGFloat)deltaX deltaY:(CGFloat)deltaY; 49 | #endif 50 | 51 | @end 52 | 53 | #endif 54 | 55 | NS_ASSUME_NONNULL_END 56 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIDevice.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #if XCT_UI_TESTING_AVAILABLE 8 | 9 | #if TARGET_OS_IPHONE 10 | 11 | #import 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | /*! 16 | * @enum XCUIDeviceButton 17 | * 18 | * Represents a physical button on a device. 19 | * 20 | * @note Some buttons are not available in the Simulator, and should not be used in your tests. 21 | * You can use a block like this: 22 | * 23 | * #if !TARGET_OS_SIMULATOR 24 | * // test code that depends on buttons not available in the Simulator 25 | * #endif 26 | * 27 | * in your test code to ensure it does not call unavailable APIs. 28 | */ 29 | typedef NS_ENUM(NSInteger, XCUIDeviceButton) { 30 | XCUIDeviceButtonHome = 1, 31 | XCUIDeviceButtonVolumeUp XCTEST_SIMULATOR_UNAVAILABLE("This API is not available in the Simulator, see the XCUIDeviceButton documentation for details.") = 2, 32 | XCUIDeviceButtonVolumeDown XCTEST_SIMULATOR_UNAVAILABLE("This API is not available in the Simulator, see the XCUIDeviceButton documentation for details.") = 3 33 | }; 34 | 35 | /*! Represents a device, providing an interface for simulating events involving physical buttons and device state. */ 36 | NS_CLASS_AVAILABLE(NA, 9_0) 37 | @interface XCUIDevice : NSObject 38 | 39 | /*! The current device. */ 40 | + (XCUIDevice *)sharedDevice; 41 | 42 | #if TARGET_OS_IOS 43 | /*! The orientation of the device. */ 44 | @property (nonatomic) UIDeviceOrientation orientation; 45 | #endif 46 | 47 | /*! Simulates the user pressing a physical button. */ 48 | - (void)pressButton:(XCUIDeviceButton)button; 49 | 50 | @end 51 | 52 | NS_ASSUME_NONNULL_END 53 | 54 | #endif 55 | 56 | #endif 57 | 58 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIElement.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #if TARGET_OS_IPHONE 8 | #import 9 | #else 10 | #import 11 | #endif 12 | 13 | #import 14 | #import 15 | 16 | NS_ASSUME_NONNULL_BEGIN 17 | 18 | #if XCT_UI_TESTING_AVAILABLE 19 | 20 | NS_ENUM_AVAILABLE(10_11, 9_0) 21 | typedef NS_OPTIONS(NSUInteger, XCUIKeyModifierFlags) { 22 | XCUIKeyModifierNone = 0, 23 | XCUIKeyModifierAlphaShift = (1UL << 0), 24 | XCUIKeyModifierShift = (1UL << 1), 25 | XCUIKeyModifierControl = (1UL << 2), 26 | XCUIKeyModifierAlternate = (1UL << 3), 27 | XCUIKeyModifierOption = XCUIKeyModifierAlternate, 28 | XCUIKeyModifierCommand = (1UL << 4), 29 | }; 30 | 31 | @class XCUIElementQuery; 32 | @class XCUICoordinate; 33 | 34 | /*! 35 | * @class XCUIElement (/seealso XCUIElementAttributes) 36 | * Elements are objects encapsulating the information needed to dynamically locate a user interface 37 | * element in an application. Elements are described in terms of queries /seealso XCUIElementQuery. 38 | */ 39 | NS_CLASS_AVAILABLE(10_11, 9_0) 40 | @interface XCUIElement : NSObject 41 | 42 | /*! Test to determine if the element exists. */ 43 | @property (readonly) BOOL exists; 44 | 45 | /*! Whether or not a hit point can be computed for the element for the purpose of synthesizing events. */ 46 | @property (readonly, getter = isHittable) BOOL hittable; 47 | 48 | /*! Returns a query for all descendants of the element matching the specified type. */ 49 | - (XCUIElementQuery *)descendantsMatchingType:(XCUIElementType)type; 50 | 51 | /*! Returns a query for direct children of the element matching the specified type. */ 52 | - (XCUIElementQuery *)childrenMatchingType:(XCUIElementType)type; 53 | 54 | #if !TARGET_OS_TV 55 | /*! Creates and returns a new coordinate that will compute its screen point by adding the offset multiplied by the size of the element’s frame to the origin of the element’s frame. */ 56 | - (XCUICoordinate *)coordinateWithNormalizedOffset:(CGVector)normalizedOffset; 57 | #endif 58 | 59 | /*! 60 | @discussion 61 | Provides debugging information about the element. The data in the string will vary based on the 62 | time at which it is captured, but it may include any of the following as well as additional data: 63 | • Values for the elements attributes. 64 | • The entire tree of descendants rooted at the element. 65 | • The element's query. 66 | This data should be used for debugging only - depending on any of the data as part of a test is unsupported. 67 | */ 68 | @property (readonly, copy) NSString *debugDescription; 69 | 70 | @end 71 | 72 | #pragma mark - Event Synthesis 73 | 74 | /*! 75 | * @category Events 76 | * Events that can be synthesized relative to an XCUIElement object. When an event API is called, the element 77 | * will be resolved. If zero or multiple matches are found, an error will be raised. 78 | */ 79 | @interface XCUIElement (XCUIElementEventSynthesis) 80 | 81 | /*! 82 | * Types a string into the element. The element or a descendant must have keyboard focus; otherwise an 83 | * error is raised. 84 | * 85 | * This API discards any modifiers set in the current context by +performWithKeyModifiers:block: so that 86 | * it strictly interprets the provided text. To input keys with modifier flags, use -typeKey:modifierFlags:. 87 | */ 88 | - (void)typeText:(NSString *)text; 89 | 90 | #if TARGET_OS_TV 91 | #elif TARGET_OS_IOS 92 | 93 | /*! 94 | * Sends a tap event to a hittable point computed for the element. 95 | */ 96 | - (void)tap; 97 | 98 | /*! 99 | * Sends a double tap event to a hittable point computed for the element. 100 | */ 101 | - (void)doubleTap; 102 | 103 | /*! 104 | * Sends a two finger tap event to a hittable point computed for the element. 105 | */ 106 | - (void)twoFingerTap; 107 | 108 | /*! 109 | * Sends one or more taps with one of more touch points. 110 | * 111 | * @param numberOfTaps 112 | * The number of taps. 113 | * 114 | * @param numberOfTouches 115 | * The number of touch points. 116 | */ 117 | - (void)tapWithNumberOfTaps:(NSUInteger)numberOfTaps numberOfTouches:(NSUInteger)numberOfTouches; 118 | 119 | /*! 120 | * Sends a long press gesture to a hittable point computed for the element, holding for the specified duration. 121 | * 122 | * @param duration 123 | * Duration in seconds. 124 | */ 125 | - (void)pressForDuration:(NSTimeInterval)duration; 126 | 127 | /*! 128 | * Initiates a press-and-hold gesture that then drags to another element, suitable for table cell reordering and similar operations. 129 | * @param duration 130 | * Duration of the initial press-and-hold. 131 | * @param otherElement 132 | * The element to finish the drag gesture over. In the example of table cell reordering, this would be the reorder element of the destination row. 133 | */ 134 | - (void)pressForDuration:(NSTimeInterval)duration thenDragToElement:(XCUIElement *)otherElement; 135 | 136 | /*! 137 | * Sends a swipe-up gesture. 138 | */ 139 | - (void)swipeUp; 140 | 141 | /*! 142 | * Sends a swipe-down gesture. 143 | */ 144 | - (void)swipeDown; 145 | 146 | /*! 147 | * Sends a swipe-left gesture. 148 | */ 149 | - (void)swipeLeft; 150 | 151 | /*! 152 | * Sends a swipe-right gesture. 153 | */ 154 | - (void)swipeRight; 155 | 156 | /*! 157 | * Sends a pinching gesture with two touches. 158 | * 159 | * The system makes a best effort to synthesize the requested scale and velocity: absolute accuracy is not guaranteed. 160 | * Some values may not be possible based on the size of the element's frame - these will result in test failures. 161 | * 162 | * @param scale 163 | * The scale of the pinch gesture. Use a scale between 0 and 1 to "pinch close" or zoom out and a scale greater than 1 to "pinch open" or zoom in. 164 | * 165 | * @param velocity 166 | * The velocity of the pinch in scale factor per second. 167 | */ 168 | - (void)pinchWithScale:(CGFloat)scale velocity:(CGFloat)velocity; 169 | 170 | /*! 171 | * Sends a rotation gesture with two touches. 172 | * 173 | * The system makes a best effort to synthesize the requested rotation and velocity: absolute accuracy is not guaranteed. 174 | * Some values may not be possible based on the size of the element's frame - these will result in test failures. 175 | * 176 | * @param rotation 177 | * The rotation of the gesture in radians. 178 | * 179 | * @param velocity 180 | * The velocity of the rotation gesture in radians per second. 181 | */ 182 | - (void)rotate:(CGFloat)rotation withVelocity:(CGFloat)velocity; 183 | 184 | #elif TARGET_OS_MAC 185 | 186 | /*! 187 | * Moves the cursor over the element. 188 | */ 189 | - (void)hover; 190 | 191 | /*! 192 | * Sends a click event to a hittable point computed for the element. 193 | */ 194 | - (void)click; 195 | 196 | /*! 197 | * Sends a double click event to a hittable point computed for the element. 198 | */ 199 | - (void)doubleClick; 200 | 201 | /*! 202 | * Sends a right click event to a hittable point computed for the element. 203 | */ 204 | - (void)rightClick; 205 | 206 | /*! 207 | * Clicks and holds for a specified duration (generally long enough to start a drag operation) then drags 208 | * to the other element. 209 | */ 210 | - (void)clickForDuration:(NSTimeInterval)duration thenDragToElement:(XCUIElement *)otherElement; 211 | 212 | /*! 213 | * Hold modifier keys while the given block runs. This method pushes and pops the modifiers as global state 214 | * without need for reference to a particular element. Inside the block, elements can be clicked on, dragged 215 | * from, typed into, etc. 216 | */ 217 | + (void)performWithKeyModifiers:(XCUIKeyModifierFlags)flags block:(void (^)(void))block; 218 | 219 | /*! 220 | * Types a single key with the specified modifier flags. Although `key` is a string, it must represent 221 | * a single key on a physical keyboard; strings that resolve to multiple keys will raise an error at runtime. 222 | * In addition to literal string key representations like "a", "6", and "[", keys such as the arrow keys, 223 | * command, control, option, and function keys can be typed using constants defined for them in XCUIKeyboardKeys.h 224 | */ 225 | - (void)typeKey:(NSString *)key modifierFlags:(XCUIKeyModifierFlags)flags; 226 | 227 | /*! 228 | * Scroll the view the specified pixels, x and y. 229 | */ 230 | - (void)scrollByDeltaX:(CGFloat)deltaX deltaY:(CGFloat)deltaY; 231 | 232 | #endif 233 | 234 | @end 235 | 236 | /*! This category on XCUIElement provides functionality for automating UISlider and NSSlider. */ 237 | @interface XCUIElement (XCUIElementTypeSlider) 238 | 239 | /*! Manipulates the UI to change the displayed value of the slider to one based on a normalized position. 0 corresponds to the minimum value of the slider, 1 corresponds to its maximum value. The adjustment is a "best effort" to move the indicator to the desired position; absolute fidelity is not guaranteed. */ 240 | - (void)adjustToNormalizedSliderPosition:(CGFloat)normalizedSliderPosition; 241 | 242 | /*! Returns the position of the slider's indicator as a normalized value where 0 corresponds to the minimum value of the slider and 1 corresponds to its maximum value. */ 243 | @property (readonly) CGFloat normalizedSliderPosition; 244 | 245 | @end 246 | 247 | #if TARGET_OS_IOS 248 | 249 | /*! This category on XCUIElement provides functionality for automating the picker wheels of UIPickerViews and UIDatePickers. */ 250 | @interface XCUIElement (XCUIElementTypePickerWheel) 251 | 252 | /*! Changes the displayed value for the picker wheel. Will generate a test failure if the specified value is not available. */ 253 | - (void)adjustToPickerWheelValue:(NSString *)pickerWheelValue; 254 | 255 | @end 256 | 257 | #endif 258 | 259 | #endif 260 | 261 | NS_ASSUME_NONNULL_END 262 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIElementAttributes.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | #import 7 | 8 | #if XCT_UI_TESTING_AVAILABLE 9 | 10 | #if TARGET_OS_IPHONE 11 | 12 | #import 13 | 14 | typedef NS_ENUM(NSInteger, XCUIUserInterfaceSizeClass) { 15 | XCUIUserInterfaceSizeClassUnspecified = UIUserInterfaceSizeClassUnspecified, 16 | XCUIUserInterfaceSizeClassCompact = UIUserInterfaceSizeClassCompact, 17 | XCUIUserInterfaceSizeClassRegular = UIUserInterfaceSizeClassRegular, 18 | }; 19 | 20 | #else 21 | 22 | #import 23 | 24 | typedef NS_ENUM(NSInteger, XCUIUserInterfaceSizeClass) { 25 | XCUIUserInterfaceSizeClassUnspecified = 0, 26 | }; 27 | 28 | #endif 29 | 30 | NS_ASSUME_NONNULL_BEGIN 31 | 32 | /*! Protocol describing the attributes exposed on user interface elements and available during query matching. These attributes represent data exposed to the Accessibility system. */ 33 | @protocol XCUIElementAttributes 34 | 35 | /*! The accessibility identifier. */ 36 | @property (readonly) NSString *identifier; 37 | 38 | /*! The frame of the element in the screen coordinate space. */ 39 | @property (readonly) CGRect frame; 40 | 41 | /*! The raw value attribute of the element. Depending on the element, the actual type can vary. */ 42 | @property (readonly, nullable) id value; 43 | 44 | /*! The title attribute of the element. */ 45 | @property (readonly, copy) NSString *title; 46 | 47 | /*! The label attribute of the element. */ 48 | @property (readonly, copy) NSString *label; 49 | 50 | /*! The type of the element. /seealso XCUIElementType. */ 51 | @property (readonly) XCUIElementType elementType; 52 | 53 | /*! Whether or not the element is enabled for user interaction. */ 54 | @property (readonly, getter = isEnabled) BOOL enabled; 55 | 56 | /*! The horizontal size class of the element. */ 57 | @property (readonly) XCUIUserInterfaceSizeClass horizontalSizeClass; 58 | 59 | /*! The vertical size class of the element. */ 60 | @property (readonly) XCUIUserInterfaceSizeClass verticalSizeClass; 61 | 62 | /*! The value that is displayed when the element has no value. */ 63 | @property (readonly, nullable) NSString *placeholderValue; 64 | 65 | /*! Whether or not the element is selected. */ 66 | @property (readonly, getter = isSelected) BOOL selected; 67 | 68 | #if TARGET_OS_TV 69 | /*! Whether or not the elment has UI focus. */ 70 | @property (readonly) BOOL hasFocus; 71 | #endif 72 | 73 | @end 74 | 75 | NS_ASSUME_NONNULL_END 76 | 77 | #endif 78 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIElementQuery.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #if XCT_UI_TESTING_AVAILABLE 8 | 9 | #import 10 | #import 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | XCT_EXPORT NSString *XCUIIdentifierCloseWindow; 15 | XCT_EXPORT NSString *XCUIIdentifierMinimizeWindow; 16 | XCT_EXPORT NSString *XCUIIdentifierZoomWindow; 17 | XCT_EXPORT NSString *XCUIIdentifierFullScreenWindow; 18 | 19 | @class XCUIElement; 20 | 21 | /*! Object for locating elements that can be chained with other queries. */ 22 | NS_CLASS_AVAILABLE(10_11, 9_0) 23 | @interface XCUIElementQuery : NSObject 24 | 25 | /*! Returns an element that will use the query for resolution. */ 26 | @property (readonly) XCUIElement *element; 27 | 28 | /*! Evaluates the query at the time it is called and returns the number of matches found. */ 29 | @property (readonly) NSUInteger count; 30 | 31 | /*! Returns an element that will resolve to the index into the query's result set. */ 32 | - (XCUIElement *)elementAtIndex:(NSUInteger)index NS_DEPRECATED(10_11, 10_11, 9_0, 9_0, "Use elementBoundByIndex instead."); 33 | 34 | /*! Returns an element that will use the index into the query's results to determine which underlying accessibility element it is matched with. */ 35 | - (XCUIElement *)elementBoundByIndex:(NSUInteger)index; 36 | 37 | /*! Returns an element that matches the predicate. The predicate will be evaluated against objects of type id. */ 38 | - (XCUIElement *)elementMatchingPredicate:(NSPredicate *)predicate; 39 | 40 | /*! Returns an element that matches the type and identifier. */ 41 | - (XCUIElement *)elementMatchingType:(XCUIElementType)elementType identifier:(nullable NSString *)identifier; 42 | 43 | /*! Keyed subscripting is implemented as a shortcut for matching an identifier only. For example, app.descendants["Foo"] -> XCUIElement. */ 44 | - (XCUIElement *)objectForKeyedSubscript:(NSString *)key; 45 | 46 | /*! Immediately evaluates the query and returns an array of elements bound to the resulting accessibility elements. */ 47 | @property (readonly, copy) NSArray *allElementsBoundByAccessibilityElement; 48 | 49 | /*! Immediately evaluates the query and returns an array of elements bound by the index of each result. */ 50 | @property (readonly, copy) NSArray *allElementsBoundByIndex; 51 | 52 | /*! Returns a new query that finds the descendants of all the elements found by the receiver. */ 53 | - (XCUIElementQuery *)descendantsMatchingType:(XCUIElementType)type; 54 | 55 | /*! Returns a new query that finds the direct children of all the elements found by the receiver. */ 56 | - (XCUIElementQuery *)childrenMatchingType:(XCUIElementType)type; 57 | 58 | /*! Returns a new query that applies the specified attributes or predicate to the receiver. The predicate will be evaluated against objects of type id. */ 59 | - (XCUIElementQuery *)matchingPredicate:(NSPredicate *)predicate; 60 | - (XCUIElementQuery *)matchingType:(XCUIElementType)elementType identifier:(nullable NSString *)identifier; 61 | - (XCUIElementQuery *)matchingIdentifier:(NSString *)identifier; 62 | 63 | /*! Returns a new query for finding elements that contain a descendant matching the specification. The predicate will be evaluated against objects of type id. */ 64 | - (XCUIElementQuery *)containingPredicate:(NSPredicate *)predicate; 65 | - (XCUIElementQuery *)containingType:(XCUIElementType)elementType identifier:(nullable NSString *)identifier; 66 | 67 | /*! 68 | @discussion 69 | Provides debugging information about the query. The data in the string will vary based on the time 70 | at which it is captured, but it may include any of the following as well as additional data: 71 | • A description of each step of the query. 72 | • Information about the inputs and matched outputs of each step of the query. 73 | This data should be used for debugging only - depending on any of the data as part of a test is unsupported. 74 | */ 75 | @property (readonly, copy) NSString *debugDescription; 76 | 77 | @end 78 | 79 | NS_ASSUME_NONNULL_END 80 | 81 | #endif 82 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIElementTypeQueryProvider.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #if XCT_UI_TESTING_AVAILABLE 8 | 9 | NS_ASSUME_NONNULL_BEGIN 10 | 11 | @class XCUIElementQuery; 12 | 13 | @protocol XCUIElementTypeQueryProvider 14 | 15 | @property (readonly, copy) XCUIElementQuery *groups; 16 | @property (readonly, copy) XCUIElementQuery *windows; 17 | @property (readonly, copy) XCUIElementQuery *sheets; 18 | @property (readonly, copy) XCUIElementQuery *drawers; 19 | @property (readonly, copy) XCUIElementQuery *alerts; 20 | @property (readonly, copy) XCUIElementQuery *dialogs; 21 | @property (readonly, copy) XCUIElementQuery *buttons; 22 | @property (readonly, copy) XCUIElementQuery *radioButtons; 23 | @property (readonly, copy) XCUIElementQuery *radioGroups; 24 | @property (readonly, copy) XCUIElementQuery *checkBoxes; 25 | @property (readonly, copy) XCUIElementQuery *disclosureTriangles; 26 | @property (readonly, copy) XCUIElementQuery *popUpButtons; 27 | @property (readonly, copy) XCUIElementQuery *comboBoxes; 28 | @property (readonly, copy) XCUIElementQuery *menuButtons; 29 | @property (readonly, copy) XCUIElementQuery *toolbarButtons; 30 | @property (readonly, copy) XCUIElementQuery *popovers; 31 | @property (readonly, copy) XCUIElementQuery *keyboards; 32 | @property (readonly, copy) XCUIElementQuery *keys; 33 | @property (readonly, copy) XCUIElementQuery *navigationBars; 34 | @property (readonly, copy) XCUIElementQuery *tabBars; 35 | @property (readonly, copy) XCUIElementQuery *tabGroups; 36 | @property (readonly, copy) XCUIElementQuery *toolbars; 37 | @property (readonly, copy) XCUIElementQuery *statusBars; 38 | @property (readonly, copy) XCUIElementQuery *tables; 39 | @property (readonly, copy) XCUIElementQuery *tableRows; 40 | @property (readonly, copy) XCUIElementQuery *tableColumns; 41 | @property (readonly, copy) XCUIElementQuery *outlines; 42 | @property (readonly, copy) XCUIElementQuery *outlineRows; 43 | @property (readonly, copy) XCUIElementQuery *browsers; 44 | @property (readonly, copy) XCUIElementQuery *collectionViews; 45 | @property (readonly, copy) XCUIElementQuery *sliders; 46 | @property (readonly, copy) XCUIElementQuery *pageIndicators; 47 | @property (readonly, copy) XCUIElementQuery *progressIndicators; 48 | @property (readonly, copy) XCUIElementQuery *activityIndicators; 49 | @property (readonly, copy) XCUIElementQuery *segmentedControls; 50 | @property (readonly, copy) XCUIElementQuery *pickers; 51 | @property (readonly, copy) XCUIElementQuery *pickerWheels; 52 | @property (readonly, copy) XCUIElementQuery *switches; 53 | @property (readonly, copy) XCUIElementQuery *toggles; 54 | @property (readonly, copy) XCUIElementQuery *links; 55 | @property (readonly, copy) XCUIElementQuery *images; 56 | @property (readonly, copy) XCUIElementQuery *icons; 57 | @property (readonly, copy) XCUIElementQuery *searchFields; 58 | @property (readonly, copy) XCUIElementQuery *scrollViews; 59 | @property (readonly, copy) XCUIElementQuery *scrollBars; 60 | @property (readonly, copy) XCUIElementQuery *staticTexts; 61 | @property (readonly, copy) XCUIElementQuery *textFields; 62 | @property (readonly, copy) XCUIElementQuery *secureTextFields; 63 | @property (readonly, copy) XCUIElementQuery *datePickers; 64 | @property (readonly, copy) XCUIElementQuery *textViews; 65 | @property (readonly, copy) XCUIElementQuery *menus; 66 | @property (readonly, copy) XCUIElementQuery *menuItems; 67 | @property (readonly, copy) XCUIElementQuery *menuBars; 68 | @property (readonly, copy) XCUIElementQuery *menuBarItems; 69 | @property (readonly, copy) XCUIElementQuery *maps; 70 | @property (readonly, copy) XCUIElementQuery *webViews; 71 | @property (readonly, copy) XCUIElementQuery *steppers; 72 | @property (readonly, copy) XCUIElementQuery *incrementArrows; 73 | @property (readonly, copy) XCUIElementQuery *decrementArrows; 74 | @property (readonly, copy) XCUIElementQuery *tabs; 75 | @property (readonly, copy) XCUIElementQuery *timelines; 76 | @property (readonly, copy) XCUIElementQuery *ratingIndicators; 77 | @property (readonly, copy) XCUIElementQuery *valueIndicators; 78 | @property (readonly, copy) XCUIElementQuery *splitGroups; 79 | @property (readonly, copy) XCUIElementQuery *splitters; 80 | @property (readonly, copy) XCUIElementQuery *relevanceIndicators; 81 | @property (readonly, copy) XCUIElementQuery *colorWells; 82 | @property (readonly, copy) XCUIElementQuery *helpTags; 83 | @property (readonly, copy) XCUIElementQuery *mattes; 84 | @property (readonly, copy) XCUIElementQuery *dockItems; 85 | @property (readonly, copy) XCUIElementQuery *rulers; 86 | @property (readonly, copy) XCUIElementQuery *rulerMarkers; 87 | @property (readonly, copy) XCUIElementQuery *grids; 88 | @property (readonly, copy) XCUIElementQuery *levelIndicators; 89 | @property (readonly, copy) XCUIElementQuery *cells; 90 | @property (readonly, copy) XCUIElementQuery *layoutAreas; 91 | @property (readonly, copy) XCUIElementQuery *layoutItems; 92 | @property (readonly, copy) XCUIElementQuery *handles; 93 | @property (readonly, copy) XCUIElementQuery *otherElements; 94 | 95 | @end 96 | 97 | NS_ASSUME_NONNULL_END 98 | 99 | #endif 100 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIElementTypes.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | 7 | #if XCT_UI_TESTING_AVAILABLE 8 | 9 | NS_ENUM_AVAILABLE(10_11, 9_0) 10 | typedef NS_ENUM(NSUInteger, XCUIElementType) { 11 | XCUIElementTypeAny = 0, 12 | XCUIElementTypeOther = 1, 13 | XCUIElementTypeApplication = 2, 14 | XCUIElementTypeGroup = 3, 15 | XCUIElementTypeWindow = 4, 16 | XCUIElementTypeSheet = 5, 17 | XCUIElementTypeDrawer = 6, 18 | XCUIElementTypeAlert = 7, 19 | XCUIElementTypeDialog = 8, 20 | XCUIElementTypeButton = 9, 21 | XCUIElementTypeRadioButton = 10, 22 | XCUIElementTypeRadioGroup = 11, 23 | XCUIElementTypeCheckBox = 12, 24 | XCUIElementTypeDisclosureTriangle = 13, 25 | XCUIElementTypePopUpButton = 14, 26 | XCUIElementTypeComboBox = 15, 27 | XCUIElementTypeMenuButton = 16, 28 | XCUIElementTypeToolbarButton = 17, 29 | XCUIElementTypePopover = 18, 30 | XCUIElementTypeKeyboard = 19, 31 | XCUIElementTypeKey = 20, 32 | XCUIElementTypeNavigationBar = 21, 33 | XCUIElementTypeTabBar = 22, 34 | XCUIElementTypeTabGroup = 23, 35 | XCUIElementTypeToolbar = 24, 36 | XCUIElementTypeStatusBar = 25, 37 | XCUIElementTypeTable = 26, 38 | XCUIElementTypeTableRow = 27, 39 | XCUIElementTypeTableColumn = 28, 40 | XCUIElementTypeOutline = 29, 41 | XCUIElementTypeOutlineRow = 30, 42 | XCUIElementTypeBrowser = 31, 43 | XCUIElementTypeCollectionView = 32, 44 | XCUIElementTypeSlider = 33, 45 | XCUIElementTypePageIndicator = 34, 46 | XCUIElementTypeProgressIndicator = 35, 47 | XCUIElementTypeActivityIndicator = 36, 48 | XCUIElementTypeSegmentedControl = 37, 49 | XCUIElementTypePicker = 38, 50 | XCUIElementTypePickerWheel = 39, 51 | XCUIElementTypeSwitch = 40, 52 | XCUIElementTypeToggle = 41, 53 | XCUIElementTypeLink = 42, 54 | XCUIElementTypeImage = 43, 55 | XCUIElementTypeIcon = 44, 56 | XCUIElementTypeSearchField = 45, 57 | XCUIElementTypeScrollView = 46, 58 | XCUIElementTypeScrollBar = 47, 59 | XCUIElementTypeStaticText = 48, 60 | XCUIElementTypeTextField = 49, 61 | XCUIElementTypeSecureTextField = 50, 62 | XCUIElementTypeDatePicker = 51, 63 | XCUIElementTypeTextView = 52, 64 | XCUIElementTypeMenu = 53, 65 | XCUIElementTypeMenuItem = 54, 66 | XCUIElementTypeMenuBar = 55, 67 | XCUIElementTypeMenuBarItem = 56, 68 | XCUIElementTypeMap = 57, 69 | XCUIElementTypeWebView = 58, 70 | XCUIElementTypeIncrementArrow = 59, 71 | XCUIElementTypeDecrementArrow = 60, 72 | XCUIElementTypeTimeline = 61, 73 | XCUIElementTypeRatingIndicator = 62, 74 | XCUIElementTypeValueIndicator = 63, 75 | XCUIElementTypeSplitGroup = 64, 76 | XCUIElementTypeSplitter = 65, 77 | XCUIElementTypeRelevanceIndicator = 66, 78 | XCUIElementTypeColorWell = 67, 79 | XCUIElementTypeHelpTag = 68, 80 | XCUIElementTypeMatte = 69, 81 | XCUIElementTypeDockItem = 70, 82 | XCUIElementTypeRuler = 71, 83 | XCUIElementTypeRulerMarker = 72, 84 | XCUIElementTypeGrid = 73, 85 | XCUIElementTypeLevelIndicator = 74, 86 | XCUIElementTypeCell = 75, 87 | XCUIElementTypeLayoutArea = 76, 88 | XCUIElementTypeLayoutItem = 77, 89 | XCUIElementTypeHandle = 78, 90 | XCUIElementTypeStepper = 79, 91 | XCUIElementTypeTab = 80, 92 | }; 93 | 94 | #endif 95 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIKeyboardKeys.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | #import 7 | 8 | #if XCT_UI_TESTING_AVAILABLE 9 | 10 | /*! 11 | Constants for use with -[XCUIElement typeKey:modifierFlags:], 12 | representing keys that have no textual representation. These comprise 13 | the set of control, function, and modifier keys found on most keyboards. 14 | */ 15 | 16 | extern NSString *const XCUIKeyboardKeyDelete; 17 | extern NSString *const XCUIKeyboardKeyReturn; 18 | extern NSString *const XCUIKeyboardKeyEnter; 19 | extern NSString *const XCUIKeyboardKeyTab; 20 | extern NSString *const XCUIKeyboardKeySpace; 21 | extern NSString *const XCUIKeyboardKeyEscape; 22 | 23 | extern NSString *const XCUIKeyboardKeyUpArrow; 24 | extern NSString *const XCUIKeyboardKeyDownArrow; 25 | extern NSString *const XCUIKeyboardKeyLeftArrow; 26 | extern NSString *const XCUIKeyboardKeyRightArrow; 27 | 28 | extern NSString *const XCUIKeyboardKeyF1; 29 | extern NSString *const XCUIKeyboardKeyF2; 30 | extern NSString *const XCUIKeyboardKeyF3; 31 | extern NSString *const XCUIKeyboardKeyF4; 32 | extern NSString *const XCUIKeyboardKeyF5; 33 | extern NSString *const XCUIKeyboardKeyF6; 34 | extern NSString *const XCUIKeyboardKeyF7; 35 | extern NSString *const XCUIKeyboardKeyF8; 36 | extern NSString *const XCUIKeyboardKeyF9; 37 | extern NSString *const XCUIKeyboardKeyF10; 38 | extern NSString *const XCUIKeyboardKeyF11; 39 | extern NSString *const XCUIKeyboardKeyF12; 40 | extern NSString *const XCUIKeyboardKeyF13; 41 | extern NSString *const XCUIKeyboardKeyF14; 42 | extern NSString *const XCUIKeyboardKeyF15; 43 | extern NSString *const XCUIKeyboardKeyF16; 44 | extern NSString *const XCUIKeyboardKeyF17; 45 | extern NSString *const XCUIKeyboardKeyF18; 46 | extern NSString *const XCUIKeyboardKeyF19; 47 | 48 | extern NSString *const XCUIKeyboardKeyForwardDelete; 49 | extern NSString *const XCUIKeyboardKeyHome; 50 | extern NSString *const XCUIKeyboardKeyEnd; 51 | extern NSString *const XCUIKeyboardKeyPageUp; 52 | extern NSString *const XCUIKeyboardKeyPageDown; 53 | extern NSString *const XCUIKeyboardKeyClear; 54 | extern NSString *const XCUIKeyboardKeyHelp; 55 | 56 | extern NSString *const XCUIKeyboardKeyCapsLock; 57 | extern NSString *const XCUIKeyboardKeyShift; 58 | extern NSString *const XCUIKeyboardKeyControl; 59 | extern NSString *const XCUIKeyboardKeyOption; 60 | extern NSString *const XCUIKeyboardKeyCommand; 61 | extern NSString *const XCUIKeyboardKeyRightShift; 62 | extern NSString *const XCUIKeyboardKeyRightControl; 63 | extern NSString *const XCUIKeyboardKeyRightOption; 64 | extern NSString *const XCUIKeyboardKeyRightCommand; 65 | extern NSString *const XCUIKeyboardKeySecondaryFn; 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Headers/XCUIRemote.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (c) 2014-2015 Apple Inc. All rights reserved. 3 | // 4 | 5 | #import 6 | #import 7 | 8 | NS_ASSUME_NONNULL_BEGIN 9 | 10 | #if XCT_UI_TESTING_AVAILABLE 11 | 12 | /*! 13 | * @enum XCUIRemoteButton 14 | * 15 | * A button on a physical remote control. 16 | */ 17 | typedef NS_ENUM(NSUInteger, XCUIRemoteButton) { 18 | XCUIRemoteButtonUp = 0, 19 | XCUIRemoteButtonDown = 1, 20 | XCUIRemoteButtonLeft = 2, 21 | XCUIRemoteButtonRight = 3, 22 | 23 | XCUIRemoteButtonSelect = 4, 24 | XCUIRemoteButtonMenu = 5, 25 | XCUIRemoteButtonPlayPause = 6, 26 | }; 27 | 28 | #if TARGET_OS_TV 29 | 30 | /*! 31 | * @class XCUIRemote 32 | * 33 | * Simulates interaction with a physical remote control. 34 | */ 35 | NS_CLASS_AVAILABLE_IOS(9_0) 36 | @interface XCUIRemote : NSObject 37 | 38 | /*! 39 | * The simulated physical remote control. 40 | */ 41 | + (instancetype)sharedRemote; 42 | 43 | /*! 44 | * Sends a momentary press of a button on a physical remote control. 45 | * 46 | * @param remoteButton 47 | * The button on the physical remote control for which to synthesize a press. 48 | */ 49 | - (void)pressButton:(XCUIRemoteButton)remoteButton; 50 | 51 | /*! 52 | * Sends a press and hold of a button on a physical remote control, holding for the specified duration. 53 | * 54 | * @param remoteButton 55 | * The button on the physical remote control for which to synthesize a press. 56 | * 57 | * @param duration 58 | * Duration in seconds. 59 | */ 60 | - (void)pressButton:(XCUIRemoteButton)remoteButton forDuration:(NSTimeInterval)duration; 61 | 62 | @end 63 | 64 | #endif 65 | 66 | #endif 67 | 68 | NS_ASSUME_NONNULL_END 69 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module XCTest { 2 | umbrella header "XCTest.h" 3 | requires objc 4 | export * 5 | } 6 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Resources/Info.plist -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Resources/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Resources/en.lproj/InfoPlist.strings -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/Resources/version.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildVersion 6 | 1 7 | CFBundleShortVersionString 8 | 1.0 9 | CFBundleVersion 10 | 10112 11 | ProjectName 12 | XCTest 13 | SourceVersion 14 | 10112000000000000 15 | 16 | 17 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XCTest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XCTest -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/XCUIRecorderService.xpc/Contents/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/XCUIRecorderService.xpc/Contents/Info.plist -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/XCUIRecorderService.xpc/Contents/MacOS/XCUIRecorderService: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/XCUIRecorderService.xpc/Contents/MacOS/XCUIRecorderService -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/XCUIRecorderService.xpc/Contents/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | version.plist 8 | 9 | AWkM2+DJ8NxA3QJNjiW71BHiufM= 10 | 11 | 12 | files2 13 | 14 | version.plist 15 | 16 | AWkM2+DJ8NxA3QJNjiW71BHiufM= 17 | 18 | 19 | rules 20 | 21 | ^Resources/ 22 | 23 | ^Resources/.*\.lproj/ 24 | 25 | optional 26 | 27 | weight 28 | 1000 29 | 30 | ^Resources/.*\.lproj/locversion.plist$ 31 | 32 | omit 33 | 34 | weight 35 | 1100 36 | 37 | ^version.plist$ 38 | 39 | 40 | rules2 41 | 42 | .*\.dSYM($|/) 43 | 44 | weight 45 | 11 46 | 47 | ^(.*/)?\.DS_Store$ 48 | 49 | omit 50 | 51 | weight 52 | 2000 53 | 54 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 55 | 56 | nested 57 | 58 | weight 59 | 10 60 | 61 | ^.* 62 | 63 | ^Info\.plist$ 64 | 65 | omit 66 | 67 | weight 68 | 20 69 | 70 | ^PkgInfo$ 71 | 72 | omit 73 | 74 | weight 75 | 20 76 | 77 | ^Resources/ 78 | 79 | weight 80 | 20 81 | 82 | ^Resources/.*\.lproj/ 83 | 84 | optional 85 | 86 | weight 87 | 1000 88 | 89 | ^Resources/.*\.lproj/locversion.plist$ 90 | 91 | omit 92 | 93 | weight 94 | 1100 95 | 96 | ^[^/]+$ 97 | 98 | nested 99 | 100 | weight 101 | 10 102 | 103 | ^embedded\.provisionprofile$ 104 | 105 | weight 106 | 20 107 | 108 | ^version\.plist$ 109 | 110 | weight 111 | 20 112 | 113 | 114 | 115 | 116 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/XCUIRecorderService.xpc/Contents/version.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildVersion 6 | 1 7 | CFBundleShortVersionString 8 | 1.0 9 | CFBundleVersion 10 | 1 11 | ProjectName 12 | XCTest 13 | SourceVersion 14 | 10112000000000000 15 | 16 | 17 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/xctestSymbolicator.xpc/Contents/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/xctestSymbolicator.xpc/Contents/Info.plist -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/xctestSymbolicator.xpc/Contents/MacOS/xctestSymbolicator: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/xctestSymbolicator.xpc/Contents/MacOS/xctestSymbolicator -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/xctestSymbolicator.xpc/Contents/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | version.plist 8 | 9 | AWkM2+DJ8NxA3QJNjiW71BHiufM= 10 | 11 | 12 | files2 13 | 14 | version.plist 15 | 16 | AWkM2+DJ8NxA3QJNjiW71BHiufM= 17 | 18 | 19 | rules 20 | 21 | ^Resources/ 22 | 23 | ^Resources/.*\.lproj/ 24 | 25 | optional 26 | 27 | weight 28 | 1000 29 | 30 | ^Resources/.*\.lproj/locversion.plist$ 31 | 32 | omit 33 | 34 | weight 35 | 1100 36 | 37 | ^version.plist$ 38 | 39 | 40 | rules2 41 | 42 | .*\.dSYM($|/) 43 | 44 | weight 45 | 11 46 | 47 | ^(.*/)?\.DS_Store$ 48 | 49 | omit 50 | 51 | weight 52 | 2000 53 | 54 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 55 | 56 | nested 57 | 58 | weight 59 | 10 60 | 61 | ^.* 62 | 63 | ^Info\.plist$ 64 | 65 | omit 66 | 67 | weight 68 | 20 69 | 70 | ^PkgInfo$ 71 | 72 | omit 73 | 74 | weight 75 | 20 76 | 77 | ^Resources/ 78 | 79 | weight 80 | 20 81 | 82 | ^Resources/.*\.lproj/ 83 | 84 | optional 85 | 86 | weight 87 | 1000 88 | 89 | ^Resources/.*\.lproj/locversion.plist$ 90 | 91 | omit 92 | 93 | weight 94 | 1100 95 | 96 | ^[^/]+$ 97 | 98 | nested 99 | 100 | weight 101 | 10 102 | 103 | ^embedded\.provisionprofile$ 104 | 105 | weight 106 | 20 107 | 108 | ^version\.plist$ 109 | 110 | weight 111 | 20 112 | 113 | 114 | 115 | 116 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/XPCServices/xctestSymbolicator.xpc/Contents/version.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildVersion 6 | 1 7 | CFBundleShortVersionString 8 | 1.0 9 | CFBundleVersion 10 | 1 11 | ProjectName 12 | XCTest 13 | SourceVersion 14 | 10112000000000000 15 | 16 | 17 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/A/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | Resources/Info.plist 8 | 9 | InazwhhA69680cutmrhgWTHoeVg= 10 | 11 | Resources/en.lproj/InfoPlist.strings 12 | 13 | hash 14 | 15 | WbY3O0G7IBs11w3Ll/yYYaDQvo8= 16 | 17 | optional 18 | 19 | 20 | Resources/version.plist 21 | 22 | ZOa6PsR9AUHsPgLHVSHb+O/9+4I= 23 | 24 | 25 | files2 26 | 27 | Headers/XCAbstractTest.h 28 | 29 | hash 30 | 31 | 5uVAxKt54MLW6NC721Ou4E5VdbA= 32 | 33 | hash2 34 | 35 | ccgZQcr++3RXEBci2eSWemqiprGL/PQ3J4KW3ZbqFAk= 36 | 37 | 38 | Headers/XCTest.h 39 | 40 | hash 41 | 42 | J/40JIWasorAJl8ehqWsKDIRe8s= 43 | 44 | hash2 45 | 46 | Iytt2wA0sPwVRlN5yjUiqI5/lbwzakQzMh4r8THq7xg= 47 | 48 | 49 | Headers/XCTestAssertions.h 50 | 51 | hash 52 | 53 | t430vwqgq3wiAocVV386i0N+lOY= 54 | 55 | hash2 56 | 57 | pGvrq4y/YqWUdlF2m6LpdEp5xPWAw5OzuiryWTlaF3I= 58 | 59 | 60 | Headers/XCTestAssertionsImpl.h 61 | 62 | hash 63 | 64 | HE6AZsSiKafvCZwy1E+Nz9eZ1AY= 65 | 66 | hash2 67 | 68 | u2YOgC9Y7IFkiJBJW8OETEZBKWkUTkO1l3B5F1UrsTM= 69 | 70 | 71 | Headers/XCTestCase+AsynchronousTesting.h 72 | 73 | hash 74 | 75 | szAnsvd6a5FmJK3Rd7GHUE+zD6Q= 76 | 77 | hash2 78 | 79 | A/m+K4kHYCOURKlVvMI+Hd1LWApBTDWvZ0+GsJ96osk= 80 | 81 | 82 | Headers/XCTestCase.h 83 | 84 | hash 85 | 86 | a+X7pEiPweigSlO/04evCASEVqA= 87 | 88 | hash2 89 | 90 | t8DHUjK3D3Dm0XtTmpWuQQWoDSY104mBijZHqRZssdQ= 91 | 92 | 93 | Headers/XCTestCaseRun.h 94 | 95 | hash 96 | 97 | /XUqDHA/BFdQDUxQU8Ft5LXo/Ps= 98 | 99 | hash2 100 | 101 | jEzXeXeFAbT7xbfbqjlf4yF+lZvOKKw9u0dhT8Lzpe4= 102 | 103 | 104 | Headers/XCTestDefines.h 105 | 106 | hash 107 | 108 | prtDP44JOQFIOtGvonzIO4tX34E= 109 | 110 | hash2 111 | 112 | IDrVNhGJ9L7NATXnphmm2ZmuIhdLS0lAnllM0GmLyxQ= 113 | 114 | 115 | Headers/XCTestErrors.h 116 | 117 | hash 118 | 119 | oZFqJmcKHuKZIgeKOwsFDxhfEEc= 120 | 121 | hash2 122 | 123 | bqmU7PnCm6GkYigcYehsZluZJau/3nfvDl9NneLn8NI= 124 | 125 | 126 | Headers/XCTestLog.h 127 | 128 | hash 129 | 130 | 9BU/gwbaKcfn2L9dfo2dHRFN6Bc= 131 | 132 | hash2 133 | 134 | Tu+6JYZZzftcXmUWH11IO9/jXCXi6QPeWDrL6izup6s= 135 | 136 | 137 | Headers/XCTestObservation.h 138 | 139 | hash 140 | 141 | bxfVjwijO6HVQKKnzhFvQQa76dU= 142 | 143 | hash2 144 | 145 | NXmNLNcHkHnSGe2p/0AnFfAnK+b8AhU5HUxTeceEK/Y= 146 | 147 | 148 | Headers/XCTestObservationCenter.h 149 | 150 | hash 151 | 152 | 0rP5BQIIjFP/HdaM97/A9mUteRg= 153 | 154 | hash2 155 | 156 | gJCADNWI0IDm5zuz+KL6LYNXWT0Lsxr4sEocmy5MPpc= 157 | 158 | 159 | Headers/XCTestObserver.h 160 | 161 | hash 162 | 163 | D2bzqa/eakvQSHJORM15iHntXxI= 164 | 165 | hash2 166 | 167 | zVLMt2ZZOcXySfJGTwvY7lVV0pQ7nKr2vDERVdTw+vg= 168 | 169 | 170 | Headers/XCTestProbe.h 171 | 172 | hash 173 | 174 | fIVR0xRsxMAabrJmeGX3hPDwL0Y= 175 | 176 | hash2 177 | 178 | FKXb32Ennc+6f3SkuVdo8bBNcIIWwryV5u5FmQYN8Fc= 179 | 180 | 181 | Headers/XCTestRun.h 182 | 183 | hash 184 | 185 | cjg6r+NJy2z/IjyKJPGmIDBFm68= 186 | 187 | hash2 188 | 189 | 2OBJkXtWX7dSr4IY6HkqB9T0j0wtnWH7rephkV4WNNA= 190 | 191 | 192 | Headers/XCTestSuite.h 193 | 194 | hash 195 | 196 | 0MZwfzMWlLFnYzNrPr2MS6bPTfA= 197 | 198 | hash2 199 | 200 | jTEvIlYx9RaksDZ9woxxLECslqzPOq1aSLzvSK4ggow= 201 | 202 | 203 | Headers/XCTestSuiteRun.h 204 | 205 | hash 206 | 207 | yTc+L3PJ+wxS4wyorpMQd7kNJvQ= 208 | 209 | hash2 210 | 211 | 9mDCSvcTl15y+0U9LZ+stw8HF9L/3/uqhGToB+iNeEU= 212 | 213 | 214 | Headers/XCUIApplication.h 215 | 216 | hash 217 | 218 | Dck9MbhtVGBeWIgQiEVEpTDtrTw= 219 | 220 | hash2 221 | 222 | JkLYYE7r3tU7HcoCggIpStg31BvV5II6XmzRc8UFwVY= 223 | 224 | 225 | Headers/XCUICoordinate.h 226 | 227 | hash 228 | 229 | rWeryK2BMCp9F3/mp9BKm7kg/1Q= 230 | 231 | hash2 232 | 233 | nUiZ2Tur0bUvr5aMb4C8rjGb93zvhtTZJCMSZxHXjKc= 234 | 235 | 236 | Headers/XCUIDevice.h 237 | 238 | hash 239 | 240 | 9pxehhPyrWb03igVA7PwEtgkzLM= 241 | 242 | hash2 243 | 244 | 4F7O+P7bZ4FDk3pTby8bo9q5G0cwibsG9cW8z0Q86HQ= 245 | 246 | 247 | Headers/XCUIElement.h 248 | 249 | hash 250 | 251 | uzgoVBBig+CJOMv+jyGE6Ou4lx0= 252 | 253 | hash2 254 | 255 | 9QxRETFinr/XJVF9/35Kukn15838D8MU72tFSQ8FMsw= 256 | 257 | 258 | Headers/XCUIElementAttributes.h 259 | 260 | hash 261 | 262 | kWitRD0ClLa1hUvctZ6Jw2DmOW8= 263 | 264 | hash2 265 | 266 | 9SI2mH0Fw8cgcd7e5L+9MJCRlhcVP03/Kb6JOrmb4DA= 267 | 268 | 269 | Headers/XCUIElementQuery.h 270 | 271 | hash 272 | 273 | owQe3VU8ucSdoJ7QiOvOS/rHAww= 274 | 275 | hash2 276 | 277 | NMskO3WW4aROu6ZaP7LKB1edLWw7YuhyYtZI3TmlriY= 278 | 279 | 280 | Headers/XCUIElementTypeQueryProvider.h 281 | 282 | hash 283 | 284 | DEWr4Nmwz7JAy6EydZYQIYgpTlE= 285 | 286 | hash2 287 | 288 | cbOnohF7eJyBVdhyKusSvWWBk4aKBh19HfZgfKFaVHE= 289 | 290 | 291 | Headers/XCUIElementTypes.h 292 | 293 | hash 294 | 295 | KfkqELrdD/Tb6UOCWX6a7rizJmE= 296 | 297 | hash2 298 | 299 | 7j1y+g8wo73vbn8tycgUCS4eC0reDvc610S59wmdbQM= 300 | 301 | 302 | Headers/XCUIKeyboardKeys.h 303 | 304 | hash 305 | 306 | RE/yMpRDrcsUljcKW/YgNGkt5Oc= 307 | 308 | hash2 309 | 310 | kzhkCi7cyiO5rkZQfIpV5T9SL10/XMLDvluf1CewgSQ= 311 | 312 | 313 | Headers/XCUIRemote.h 314 | 315 | hash 316 | 317 | GuQMu1KdZMJO3/yRBQHEbrVVv38= 318 | 319 | hash2 320 | 321 | OyKIhJNyDgDu6svFc+wfN7RH20nNS2xcd6wxQhKwNpc= 322 | 323 | 324 | Modules/module.modulemap 325 | 326 | hash 327 | 328 | 0hPLcrGRiL8HEYGWbYL+qhcqBZI= 329 | 330 | hash2 331 | 332 | jnKXP8AnVeA8lhMYYv9wWZO1A6Rn46h/Dz1jgopnxYQ= 333 | 334 | 335 | Resources/Info.plist 336 | 337 | hash 338 | 339 | InazwhhA69680cutmrhgWTHoeVg= 340 | 341 | hash2 342 | 343 | aGZeloA0Jsc2K7kAv3g9/Ps8uvA9jv6yiTPjOV+Zygw= 344 | 345 | 346 | Resources/en.lproj/InfoPlist.strings 347 | 348 | hash 349 | 350 | WbY3O0G7IBs11w3Ll/yYYaDQvo8= 351 | 352 | hash2 353 | 354 | csRKk47Q2InuM0gffz1DO94bvTX6/Kv9tWEkpwDOEco= 355 | 356 | optional 357 | 358 | 359 | Resources/version.plist 360 | 361 | hash 362 | 363 | ZOa6PsR9AUHsPgLHVSHb+O/9+4I= 364 | 365 | hash2 366 | 367 | kG93K6C9giDIQL2so9/SZu/vBA5FI7t1TX7tsnpqsYE= 368 | 369 | 370 | XPCServices/XCUIRecorderService.xpc 371 | 372 | cdhash 373 | 374 | cJC3PpGv17x4QXmH7HXhwwKq/3U= 375 | 376 | requirement 377 | identifier "com.apple.dt.XCUIRecorderService" and anchor apple 378 | 379 | XPCServices/xctestSymbolicator.xpc 380 | 381 | cdhash 382 | 383 | SljgOhaL6d1obBFY6lQ9IB7oK9g= 384 | 385 | requirement 386 | identifier "com.apple.dt.xctestSymbolicator" and anchor apple 387 | 388 | 389 | rules 390 | 391 | ^Resources/ 392 | 393 | ^Resources/.*\.lproj/ 394 | 395 | optional 396 | 397 | weight 398 | 1000 399 | 400 | ^Resources/.*\.lproj/locversion.plist$ 401 | 402 | omit 403 | 404 | weight 405 | 1100 406 | 407 | ^Resources/Base\.lproj/ 408 | 409 | weight 410 | 1010 411 | 412 | ^version.plist$ 413 | 414 | 415 | rules2 416 | 417 | .*\.dSYM($|/) 418 | 419 | weight 420 | 11 421 | 422 | ^(.*/)?\.DS_Store$ 423 | 424 | omit 425 | 426 | weight 427 | 2000 428 | 429 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 430 | 431 | nested 432 | 433 | weight 434 | 10 435 | 436 | ^.* 437 | 438 | ^Info\.plist$ 439 | 440 | omit 441 | 442 | weight 443 | 20 444 | 445 | ^PkgInfo$ 446 | 447 | omit 448 | 449 | weight 450 | 20 451 | 452 | ^Resources/ 453 | 454 | weight 455 | 20 456 | 457 | ^Resources/.*\.lproj/ 458 | 459 | optional 460 | 461 | weight 462 | 1000 463 | 464 | ^Resources/.*\.lproj/locversion.plist$ 465 | 466 | omit 467 | 468 | weight 469 | 1100 470 | 471 | ^Resources/Base\.lproj/ 472 | 473 | weight 474 | 1010 475 | 476 | ^[^/]+$ 477 | 478 | nested 479 | 480 | weight 481 | 10 482 | 483 | ^embedded\.provisionprofile$ 484 | 485 | weight 486 | 20 487 | 488 | ^version\.plist$ 489 | 490 | weight 491 | 20 492 | 493 | 494 | 495 | 496 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/XCTest: -------------------------------------------------------------------------------- 1 | Versions/Current/XCTest -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/XCTest.framework/XPCServices: -------------------------------------------------------------------------------- 1 | Versions/Current/XPCServices -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftAppKit.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftAppKit.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftCore.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftCore.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftCoreData.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftCoreData.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftCoreGraphics.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftCoreGraphics.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftCoreImage.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftCoreImage.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftDarwin.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftDarwin.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftDispatch.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftDispatch.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftFoundation.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftFoundation.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftIOKit.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftIOKit.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Frameworks/libswiftObjectiveC.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Frameworks/libswiftObjectiveC.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 16A270f 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | AMDFramebufferUtility 11 | CFBundleIconFile 12 | AppIcon 13 | CFBundleIdentifier 14 | JL.AMDFramebufferUtility 15 | CFBundleInfoDictionaryVersion 16 | 6.0 17 | CFBundleName 18 | AMDFramebufferUtility 19 | CFBundlePackageType 20 | APPL 21 | CFBundleShortVersionString 22 | 2.8 23 | CFBundleSignature 24 | ???? 25 | CFBundleSupportedPlatforms 26 | 27 | MacOSX 28 | 29 | CFBundleVersion 30 | 1 31 | DTCompiler 32 | com.apple.compilers.llvm.clang.1_0 33 | DTPlatformBuild 34 | 7D1014 35 | DTPlatformVersion 36 | GM 37 | DTSDKBuild 38 | 15E60 39 | DTSDKName 40 | macosx10.11 41 | DTXcode 42 | 0731 43 | DTXcodeBuild 44 | 7D1014 45 | LSMinimumSystemVersion 46 | 10.10 47 | NSHumanReadableCopyright 48 | Copyright © 2015年 joglelew. All rights reserved. 49 | NSMainStoryboardFile 50 | Main 51 | NSPrincipalClass 52 | NSApplication 53 | 54 | 55 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/MacOS/AMDFramebufferUtility: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/MacOS/AMDFramebufferUtility -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PkgInfo: -------------------------------------------------------------------------------- 1 | APPL???? -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftAppKit.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftAppKit.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCore.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCore.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCoreData.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCoreData.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCoreGraphics.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCoreGraphics.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCoreImage.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftCoreImage.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftDarwin.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftDarwin.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftDispatch.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftDispatch.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftFoundation.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftFoundation.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftIOKit.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftIOKit.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftObjectiveC.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftObjectiveC.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftXCTest.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Frameworks/libswiftXCTest.dylib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 16A270f 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | AMDFramebufferUtilityTests 11 | CFBundleIdentifier 12 | JL.AMDFramebufferUtilityTests 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | AMDFramebufferUtilityTests 17 | CFBundlePackageType 18 | BNDL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 7D1014 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 15E60 37 | DTSDKName 38 | macosx10.11 39 | DTXcode 40 | 0731 41 | DTXcodeBuild 42 | 7D1014 43 | 44 | 45 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/MacOS/AMDFramebufferUtilityTests: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/MacOS/AMDFramebufferUtilityTests -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/PlugIns/AMDFramebufferUtilityTests.xctest/Contents/_CodeSignature/CodeResources: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | files 6 | 7 | files2 8 | 9 | Frameworks/libswiftAppKit.dylib 10 | 11 | cdhash 12 | 13 | 5tB/i5ATmd7w1R1gqNOBVH5ULZE= 14 | 15 | requirement 16 | identifier "com.apple.dt.runtime.swiftAppKit" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 17 | 18 | Frameworks/libswiftCore.dylib 19 | 20 | cdhash 21 | 22 | eIrd+hwpS1d6Azmi78Ja9SPuANw= 23 | 24 | requirement 25 | identifier "com.apple.dt.runtime.swiftCore" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 26 | 27 | Frameworks/libswiftCoreData.dylib 28 | 29 | cdhash 30 | 31 | KWAXowTU1Uy7c0X6oqFEVHWHT20= 32 | 33 | requirement 34 | identifier "com.apple.dt.runtime.swiftCoreData" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 35 | 36 | Frameworks/libswiftCoreGraphics.dylib 37 | 38 | cdhash 39 | 40 | af6dRh29VoBLjggTXpdwRb7jeuQ= 41 | 42 | requirement 43 | identifier "com.apple.dt.runtime.swiftCoreGraphics" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 44 | 45 | Frameworks/libswiftCoreImage.dylib 46 | 47 | cdhash 48 | 49 | 00jvPlSMmoAx97ghb1GCeEWgkWU= 50 | 51 | requirement 52 | identifier "com.apple.dt.runtime.swiftCoreImage" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 53 | 54 | Frameworks/libswiftDarwin.dylib 55 | 56 | cdhash 57 | 58 | EJoPsouYoPLBRI6pELphcxqhxKI= 59 | 60 | requirement 61 | identifier "com.apple.dt.runtime.swiftDarwin" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 62 | 63 | Frameworks/libswiftDispatch.dylib 64 | 65 | cdhash 66 | 67 | MFhTlO0hKppsGe6rRdcxuGfbVig= 68 | 69 | requirement 70 | identifier "com.apple.dt.runtime.swiftDispatch" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 71 | 72 | Frameworks/libswiftFoundation.dylib 73 | 74 | cdhash 75 | 76 | STBPDwpJBPCBpWEHJJq9hUgJ73E= 77 | 78 | requirement 79 | identifier "com.apple.dt.runtime.swiftFoundation" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 80 | 81 | Frameworks/libswiftIOKit.dylib 82 | 83 | cdhash 84 | 85 | 6pO+zwalkKR6xhQokihzhzuS7VY= 86 | 87 | requirement 88 | identifier "com.apple.dt.runtime.swiftIOKit" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 89 | 90 | Frameworks/libswiftObjectiveC.dylib 91 | 92 | cdhash 93 | 94 | cZSaep11tjWcTwv/RvnephdD3GM= 95 | 96 | requirement 97 | identifier "com.apple.dt.runtime.swiftObjectiveC" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 98 | 99 | Frameworks/libswiftXCTest.dylib 100 | 101 | cdhash 102 | 103 | ErrkO6Apob8gER0pdtDetvgiimE= 104 | 105 | requirement 106 | identifier "com.apple.dt.runtime.swiftXCTest" and anchor apple generic and certificate leaf[subject.CN] = "Mac Developer: lvjiagao@outlook.com (3PRG8S872R)" and certificate 1[field.1.2.840.113635.100.6.2.1] /* exists */ 107 | 108 | 109 | rules 110 | 111 | ^Resources/ 112 | 113 | ^Resources/.*\.lproj/ 114 | 115 | optional 116 | 117 | weight 118 | 1000 119 | 120 | ^Resources/.*\.lproj/locversion.plist$ 121 | 122 | omit 123 | 124 | weight 125 | 1100 126 | 127 | ^Resources/Base\.lproj/ 128 | 129 | weight 130 | 1010 131 | 132 | ^version.plist$ 133 | 134 | 135 | rules2 136 | 137 | .*\.dSYM($|/) 138 | 139 | weight 140 | 11 141 | 142 | ^(.*/)?\.DS_Store$ 143 | 144 | omit 145 | 146 | weight 147 | 2000 148 | 149 | ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ 150 | 151 | nested 152 | 153 | weight 154 | 10 155 | 156 | ^.* 157 | 158 | ^Info\.plist$ 159 | 160 | omit 161 | 162 | weight 163 | 20 164 | 165 | ^PkgInfo$ 166 | 167 | omit 168 | 169 | weight 170 | 20 171 | 172 | ^Resources/ 173 | 174 | weight 175 | 20 176 | 177 | ^Resources/.*\.lproj/ 178 | 179 | optional 180 | 181 | weight 182 | 1000 183 | 184 | ^Resources/.*\.lproj/locversion.plist$ 185 | 186 | omit 187 | 188 | weight 189 | 1100 190 | 191 | ^Resources/Base\.lproj/ 192 | 193 | weight 194 | 1010 195 | 196 | ^[^/]+$ 197 | 198 | nested 199 | 200 | weight 201 | 10 202 | 203 | ^embedded\.provisionprofile$ 204 | 205 | weight 206 | 20 207 | 208 | ^version\.plist$ 209 | 210 | weight 211 | 20 212 | 213 | 214 | 215 | 216 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/AppIcon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/AppIcon.icns -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Localizable.strings -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/Info.plist -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/NSViewController-xOo-Nf-X08.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/NSViewController-xOo-Nf-X08.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/NSViewController-yK3-wr-Mkd.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/NSViewController-yK3-wr-Mkd.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/xOo-Nf-X08-view-NJ6-qX-Vca.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/xOo-Nf-X08-view-NJ6-qX-Vca.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/yK3-wr-Mkd-view-rDv-xr-Ry1.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/Base.lproj/Main.storyboardc/yK3-wr-Mkd-view-rDv-xr-Ry1.nib -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/en.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/en.lproj/Localizable.strings -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/getSystemFB16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/getSystemFB16 -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/getSystemFB24: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/getSystemFB24 -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/logo.png -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/otool: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/otool -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/radeon_bios_decode: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/radeon_bios_decode -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/redsock_bios_decoder: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/redsock_bios_decoder -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/zh-Hans.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.app/Contents/Resources/zh-Hans.lproj/Localizable.strings -------------------------------------------------------------------------------- /AMDFramebufferUtility.app/Contents/Resources/zh-Hans.lproj/Main.strings: -------------------------------------------------------------------------------- 1 | 2 | /* Class = "NSMenuItem"; title = "AMDFramebufferUtility"; ObjectID = "1Xt-HY-uBw"; */ 3 | "1Xt-HY-uBw.title" = "AMDFramebufferUtility"; 4 | 5 | /* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ 6 | "1b7-l0-nxx.title" = "Find"; 7 | 8 | /* Class = "NSTextFieldCell"; title = "The developers of Chameleon Bootloader (ati.c)"; ObjectID = "2U7-tk-3ST"; */ 9 | "2U7-tk-3ST.title" = "Chameleon Bootloader 的开发者 (ati.c)"; 10 | 11 | /* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ 12 | "2oI-Rn-ZJC.title" = "Transformations"; 13 | 14 | /* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ 15 | "3IN-sU-3Bg.title" = "Spelling"; 16 | 17 | /* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ 18 | "3rS-ZA-NoH.title" = "Speech"; 19 | 20 | /* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ 21 | "4EN-yA-p0u.title" = "Find"; 22 | 23 | /* Class = "NSMenuItem"; title = "Quit AMDFramebufferUtility"; ObjectID = "4sb-4s-VLi"; */ 24 | "4sb-4s-VLi.title" = "Quit AMDFramebufferUtility"; 25 | 26 | /* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ 27 | "5QF-Oa-p0T.title" = "Edit"; 28 | 29 | /* Class = "NSMenuItem"; title = "About AMDFramebufferUtility"; ObjectID = "5kV-Vb-QxS"; */ 30 | "5kV-Vb-QxS.title" = "About AMDFramebufferUtility"; 31 | 32 | /* Class = "NSTextFieldCell"; title = "Kext:"; ObjectID = "6DG-cC-g84"; */ 33 | "6DG-cC-g84.title" = "Kext: "; 34 | 35 | /* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ 36 | "6dh-zS-Vam.title" = "Redo"; 37 | 38 | /* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ 39 | "78Y-hA-62v.title" = "Correct Spelling Automatically"; 40 | 41 | /* Class = "NSTextFieldCell"; title = "Type"; ObjectID = "87s-4u-8Cf"; */ 42 | "87s-4u-8Cf.title" = "类型"; 43 | 44 | /* Class = "NSTextFieldCell"; title = "Please select the ROM of graphic card: "; ObjectID = "8vb-gl-TLO"; */ 45 | "8vb-gl-TLO.title" = "请选择您的显卡ROM文件:"; 46 | 47 | /* Class = "NSTextFieldCell"; title = "Original Framebuffer:"; ObjectID = "9Zu-h6-0Tq"; */ 48 | "9Zu-h6-0Tq.title" = "原始Framebuffer:"; 49 | 50 | /* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ 51 | "9ic-FL-obx.title" = "Substitutions"; 52 | 53 | /* Class = "NSButtonCell"; title = "Select"; ObjectID = "9kN-TC-pWJ"; */ 54 | "9kN-TC-pWJ.title" = "选择"; 55 | 56 | /* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ 57 | "9yt-4B-nSM.title" = "Smart Copy/Paste"; 58 | 59 | /* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ 60 | "AYu-sK-qS6.title" = "Main Menu"; 61 | 62 | /* Class = "NSTextFieldCell"; title = "Control Flag"; ObjectID = "Alk-ye-Ecv"; */ 63 | "Alk-ye-Ecv.title" = "控制标志"; 64 | 65 | /* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ 66 | "BOF-NM-1cW.title" = "Preferences…"; 67 | 68 | /* Class = "NSTextFieldCell"; title = "Unknown Status"; ObjectID = "BfL-Ic-Q7M"; */ 69 | "BfL-Ic-Q7M.title" = "未知状态"; 70 | 71 | /* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ 72 | "Bw7-FT-i3A.title" = "Save As…"; 73 | 74 | /* Class = "NSTextFieldCell"; title = "(Data was provided by this program)"; ObjectID = "CrD-xY-yVj"; */ 75 | "CrD-xY-yVj.title" = "(数据可能与您系统中的不同)"; 76 | 77 | /* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ 78 | "DVo-aG-piG.title" = "Close"; 79 | 80 | /* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ 81 | "Dv1-io-Yv7.title" = "Spelling and Grammar"; 82 | 83 | /* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ 84 | "F2S-fz-NVQ.title" = "Help"; 85 | 86 | /* Class = "NSMenuItem"; title = "AMDFramebufferUtility Help"; ObjectID = "FKE-Sm-Kum"; */ 87 | "FKE-Sm-Kum.title" = "AMDFramebufferUtility Help"; 88 | 89 | /* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ 90 | "FeM-D8-WVr.title" = "Substitutions"; 91 | 92 | /* Class = "NSTextFieldCell"; title = "Get framebuffer from: "; ObjectID = "Fxl-sp-rNH"; */ 93 | "Fxl-sp-rNH.title" = "Framebuffer获取来源:"; 94 | 95 | /* Class = "NSTextFieldCell"; title = "Thanks to: The developers of radeon_bios_decode, redsock_bios_decoder"; ObjectID = "Gtk-mk-gJk"; */ 96 | "Gtk-mk-gJk.title" = "致以感谢: radeon_bios_decode, redsock_bios_decoder的开发者"; 97 | 98 | /* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ 99 | "HFQ-gK-NFA.title" = "Text Replacement"; 100 | 101 | /* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ 102 | "HFo-cy-zxI.title" = "Show Spelling and Grammar"; 103 | 104 | /* Class = "NSTextFieldCell"; title = "Developer: ljg-pcbeta"; ObjectID = "HXF-J3-Cbk"; */ 105 | "HXF-J3-Cbk.title" = "开发者:ljg-pcbeta"; 106 | 107 | /* Class = "NSButtonCell"; title = "Show Connectors Data"; ObjectID = "I0n-I2-iY2"; */ 108 | "I0n-I2-iY2.title" = "显示接口数据"; 109 | 110 | /* Class = "NSTextFieldCell"; title = "txmit"; ObjectID = "I1S-xu-LIJ"; */ 111 | "I1S-xu-LIJ.title" = "txmit"; 112 | 113 | /* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ 114 | "IAo-SY-fd9.title" = "Open…"; 115 | 116 | /* Class = "NSWindow"; title = "AMD Framebuffer Utility"; ObjectID = "IQv-IB-iLA"; */ 117 | "IQv-IB-iLA.title" = "AMD Framebuffer Utility"; 118 | 119 | /* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ 120 | "KaW-ft-85H.title" = "Revert to Saved"; 121 | 122 | /* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ 123 | "Kd2-mp-pUS.title" = "Show All"; 124 | 125 | /* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ 126 | "LE2-aR-0XJ.title" = "Bring All to Front"; 127 | 128 | /* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ 129 | "NMo-om-nkz.title" = "Services"; 130 | 131 | /* Class = "NSSegmentedCell"; Nz1-yA-lx5.ibShadowedLabels[0] = "Reassign all hotplugin bits"; ObjectID = "Nz1-yA-lx5"; */ 132 | "Nz1-yA-lx5.ibShadowedLabels[0]" = "重新分配hotplugin"; 133 | 134 | /* Class = "NSSegmentedCell"; Nz1-yA-lx5.ibShadowedLabels[1] = "Use original hotplugin bits"; ObjectID = "Nz1-yA-lx5"; */ 135 | "Nz1-yA-lx5.ibShadowedLabels[1]" = "使用原始的hotplugin"; 136 | 137 | /* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ 138 | "OY7-WF-poV.title" = "Minimize"; 139 | 140 | /* Class = "NSMenuItem"; title = "Hide AMDFramebufferUtility"; ObjectID = "Olw-nP-bQN"; */ 141 | "Olw-nP-bQN.title" = "Hide AMDFramebufferUtility"; 142 | 143 | /* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ 144 | "OwM-mh-QMV.title" = "Find Previous"; 145 | 146 | /* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ 147 | "Oyz-dy-DGm.title" = "Stop Speaking"; 148 | 149 | /* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ 150 | "R4o-n2-Eq4.title" = "Zoom"; 151 | 152 | /* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ 153 | "Ruw-6m-B2m.title" = "Select All"; 154 | 155 | /* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ 156 | "S0p-oC-mLd.title" = "Jump to Selection"; 157 | 158 | /* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ 159 | "Td7-aD-5lo.title" = "Window"; 160 | 161 | /* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ 162 | "UEZ-Bs-lqG.title" = "Capitalize"; 163 | 164 | /* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ 165 | "Vdr-fp-XzO.title" = "Hide Others"; 166 | 167 | /* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ 168 | "W48-6f-4Dl.title" = "Edit"; 169 | 170 | /* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ 171 | "Was-JA-tGl.title" = "New"; 172 | 173 | /* Class = "NSMenuItem"; title = "Paste and Match Style"; ObjectID = "WeT-3V-zwk"; */ 174 | "WeT-3V-zwk.title" = "Paste and Match Style"; 175 | 176 | /* Class = "NSSegmentedCell"; WmC-gq-o9O.ibShadowedLabels[0] = "Use zero to fill placeholder bits "; ObjectID = "WmC-gq-o9O"; */ 177 | "WmC-gq-o9O.ibShadowedLabels[0]" = "用零填充占位符"; 178 | 179 | /* Class = "NSSegmentedCell"; WmC-gq-o9O.ibShadowedLabels[1] = "Keep original placeholder bits"; ObjectID = "WmC-gq-o9O"; */ 180 | "WmC-gq-o9O.ibShadowedLabels[1]" = "保持原有占位符"; 181 | 182 | /* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ 183 | "Xz5-n4-O0W.title" = "Find…"; 184 | 185 | /* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ 186 | "YEy-JH-Tfz.title" = "Find and Replace…"; 187 | 188 | /* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ 189 | "Ynk-f8-cLZ.title" = "Start Speaking"; 190 | 191 | /* Class = "NSTextFieldCell"; title = "Recommend Framebuffer to replace: "; ObjectID = "Zji-Fe-bZ7"; */ 192 | "Zji-Fe-bZ7.title" = "推荐替换的framebuffer:"; 193 | 194 | /* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ 195 | "aTl-1u-JFS.title" = "Print…"; 196 | 197 | /* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ 198 | "aUF-d1-5bR.title" = "Window"; 199 | 200 | /* Class = "NSTextFieldCell"; title = "SJ_UnderWater from TonyMacx86 (php script to get framebuffer)"; ObjectID = "asp-GA-m6i"; */ 201 | "asp-GA-m6i.title" = "SJ_UnderWater 来自 TonyMacx86论坛(获得framebuffer的php脚本)"; 202 | 203 | /* Class = "NSTextFieldCell"; title = "Graphic Card Info: "; ObjectID = "bO6-lJ-eBo"; */ 204 | "bO6-lJ-eBo.title" = "显卡信息:"; 205 | 206 | /* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ 207 | "bib-Uj-vzu.title" = "File"; 208 | 209 | /* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ 210 | "buJ-ug-pKt.title" = "Use Selection for Find"; 211 | 212 | /* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ 213 | "c8a-y6-VQd.title" = "Transformations"; 214 | 215 | /* Class = "NSMenuItem"; title = "Smart Links"; ObjectID = "cwL-P1-jid"; */ 216 | "cwL-P1-jid.title" = "Smart Links"; 217 | 218 | /* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ 219 | "d9M-CD-aMd.title" = "Make Lower Case"; 220 | 221 | /* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ 222 | "dMs-cI-mzQ.title" = "File"; 223 | 224 | /* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ 225 | "dRJ-4n-Yzg.title" = "Undo"; 226 | 227 | /* Class = "NSTextFieldCell"; title = "test"; ObjectID = "fge-yX-tp8"; */ 228 | "fge-yX-tp8.title" = "test"; 229 | 230 | /* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ 231 | "gVA-U4-sdL.title" = "Paste"; 232 | 233 | /* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ 234 | "hQb-2v-fYv.title" = "Smart Quotes"; 235 | 236 | /* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ 237 | "hz2-CU-CR7.title" = "Check Document Now"; 238 | 239 | /* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ 240 | "hz9-B4-Xy5.title" = "Services"; 241 | 242 | /* Class = "NSTextFieldCell"; title = "Testers neycwby09, maojinbing, beastfang from PCBeta"; ObjectID = "m7l-Tb-gbi"; */ 243 | "m7l-Tb-gbi.title" = "来自 PCBeta 论坛的大量测试者"; 244 | 245 | /* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ 246 | "mK6-2p-4JG.title" = "Check Grammar With Spelling"; 247 | 248 | /* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ 249 | "oas-Oc-fiZ.title" = "Open Recent"; 250 | 251 | /* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ 252 | "pa3-QI-u2k.title" = "Delete"; 253 | 254 | /* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ 255 | "pxx-59-PXV.title" = "Save…"; 256 | 257 | /* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ 258 | "q09-fT-Sye.title" = "Find Next"; 259 | 260 | /* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ 261 | "qIS-W8-SiK.title" = "Page Setup…"; 262 | 263 | /* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ 264 | "rbD-Rh-wIN.title" = "Check Spelling While Typing"; 265 | 266 | /* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ 267 | "rgM-f4-ycn.title" = "Smart Dashes"; 268 | 269 | /* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ 270 | "tRr-pd-1PS.title" = "Data Detectors"; 271 | 272 | /* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ 273 | "tXI-mr-wws.title" = "Open Recent"; 274 | 275 | /* Class = "NSTextFieldCell"; title = "Framebuffer of Your Graphics Card: "; ObjectID = "tfr-ny-FCj"; */ 276 | "tfr-ny-FCj.title" = "您显卡的framebuffer"; 277 | 278 | /* Class = "NSMenu"; title = "AMDFramebufferUtility"; ObjectID = "uQy-DD-JDr"; */ 279 | "uQy-DD-JDr.title" = "AMDFramebufferUtility"; 280 | 281 | /* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ 282 | "uRl-iY-unG.title" = "Cut"; 283 | 284 | /* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ 285 | "vNY-rz-j42.title" = "Clear Menu"; 286 | 287 | /* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ 288 | "vmV-6d-7jI.title" = "Make Upper Case"; 289 | 290 | /* Class = "NSTextFieldCell"; title = "senseid"; ObjectID = "wfK-MY-kTF"; */ 291 | "wfK-MY-kTF.title" = "senseid"; 292 | 293 | /* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ 294 | "wpr-3q-Mcd.title" = "Help"; 295 | 296 | /* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ 297 | "x3v-GG-iWU.title" = "Copy"; 298 | 299 | /* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ 300 | "xrE-MZ-jX0.title" = "Speech"; 301 | 302 | /* Class = "NSViewController"; title = "About AMD Framebuffer Utility"; ObjectID = "yK3-wr-Mkd"; */ 303 | "yK3-wr-Mkd.title" = "About AMD Framebuffer Utility"; 304 | 305 | /* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ 306 | "z6F-FW-3nz.title" = "Show Substitutions"; 307 | 308 | /* Class = "NSSegmentedCell"; zCG-xC-MNt.ibShadowedLabels[0] = "Keep order of connectors in ROM"; ObjectID = "zCG-xC-MNt"; */ 309 | "zCG-xC-MNt.ibShadowedLabels[0]" = "保持ROM中的接口顺序"; 310 | 311 | /* Class = "NSSegmentedCell"; zCG-xC-MNt.ibShadowedLabels[1] = "Insert into original framebuffer"; ObjectID = "zCG-xC-MNt"; */ 312 | "zCG-xC-MNt.ibShadowedLabels[1]" = "插入原始framebuffer"; 313 | 314 | /* Class = "NSTextFieldCell"; title = "enc"; ObjectID = "zPb-XL-jam"; */ 315 | "zPb-XL-jam.title" = "enc"; 316 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.xcodeproj/project.xcworkspace/xcuserdata/jogle.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility.xcodeproj/project.xcworkspace/xcuserdata/jogle.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /AMDFramebufferUtility.xcodeproj/project.xcworkspace/xcuserdata/jogle.xcuserdatad/xcdebugger/Expressions.xcexplist: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 7 | 8 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.xcodeproj/xcuserdata/jogle.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.xcodeproj/xcuserdata/jogle.xcuserdatad/xcschemes/AMDFramebufferUtility.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 44 | 45 | 47 | 53 | 54 | 55 | 56 | 57 | 63 | 64 | 65 | 66 | 67 | 68 | 78 | 80 | 86 | 87 | 88 | 89 | 92 | 93 | 94 | 95 | 96 | 97 | 103 | 105 | 111 | 112 | 113 | 114 | 116 | 117 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /AMDFramebufferUtility.xcodeproj/xcuserdata/jogle.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | AMDFramebufferUtility.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | 157A7B3C1B411DF000275C92 16 | 17 | primary 18 | 19 | 20 | 157A7B4E1B411DF100275C92 21 | 22 | primary 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /AMDFramebufferUtility/AppDelegate.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.swift 3 | // AMDFramebufferUtility 4 | // 5 | // Created by jogle on 15/6/29. 6 | // Copyright (c) 2015年 joglelew. All rights reserved. 7 | // 8 | 9 | import Cocoa 10 | 11 | @NSApplicationMain 12 | class AppDelegate: NSObject, NSApplicationDelegate { 13 | 14 | 15 | 16 | func applicationDidFinishLaunching(aNotification: NSNotification) { 17 | // Insert code here to initialize your application 18 | } 19 | 20 | func applicationWillTerminate(aNotification: NSNotification) { 21 | // Insert code here to tear down your application 22 | } 23 | 24 | 25 | } 26 | 27 | -------------------------------------------------------------------------------- /AMDFramebufferUtility/ConnectorData.swift: -------------------------------------------------------------------------------- 1 | // 2 | // ConnectorData.swift 3 | // AMDFrameBufferUtility 4 | // 5 | // Created by jogle on 15/6/28. 6 | // Copyright (c) 2015年 joglelew. All rights reserved. 7 | // 8 | 9 | import Foundation 10 | 11 | class Connector { 12 | static var placeholder = 0 13 | // 0 -> use 00 00 to fill 14 | // 1 -> keep origin 15 | static var hotpluginAssign = 0 16 | // 0 -> reassign from 01 (LVDS always be 00) 17 | // 1 -> keep origin 18 | static var keepOriginPostion = 0 19 | // 0 -> use the order from ROM 20 | // 1 -> fill into origin framebuffer 21 | 22 | var type: Int = 0 23 | // type = 0 -> Null 24 | // type = 1 -> Dual - DVI 25 | // type = 2 -> DisplayPort / eDP 26 | // type = 3 -> HDMI 27 | // type = 4 -> LVDS 28 | // type = 5 -> Single - DVI 29 | // type = 6 -> VGA 30 | 31 | var controlFlag: Int = 0 32 | // DDVI0 -> 0x0014(DVI-D) 33 | // DDVI1 -> 0x0214(DVI-I) 34 | // DDVI2 -> 0x0204(DVI-I Special) 35 | // DP0 -> 0x0304(High Resolution, duallink=0x2) 36 | // DP1 -> 0x0604(Normal, duallink=0x1) 37 | // HDMI0 -> 0x0204(Default) 38 | // LVDS0 -> 0x0040(Normal) 39 | // LVDS1 -> 0x0100(High Resolution) 40 | // SDVI0 -> 0x0014(DVI-D) 41 | // SDVI1 -> 0x0214(DVI-I) 42 | // VGA0 -> 0x0010(Default) 43 | 44 | var txmit: String = "" 45 | var enc: String = "" 46 | var hotplugin: String = "" 47 | var senseid: String = "00" 48 | 49 | func setType(type: Int) { 50 | self.type = type 51 | } 52 | 53 | func setControlFlag(controlFlag: Int) { 54 | self.controlFlag = controlFlag 55 | } 56 | 57 | func setSenseid(senseid: String) { 58 | self.senseid = senseid 59 | } 60 | 61 | func setTxmit(txmit: String) { 62 | self.txmit = txmit 63 | } 64 | 65 | func setEnc(enc: String) { 66 | self.enc = enc 67 | } 68 | 69 | func toString() -> String { 70 | var result = "" 71 | switch (type) { 72 | case 1: result += "DDVI " 73 | case 2: result += "DP " 74 | case 3: result += "HDMI " 75 | case 4: result += "LVDS " 76 | case 5: result += "SDVI " 77 | case 6: result += "VGA " 78 | default: result += "--- " 79 | } 80 | result += "txmit \(txmit) " 81 | result += "enc \(enc) " 82 | result += "senseid \(senseid)" 83 | return result 84 | } 85 | } -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "16x16", 5 | "idiom" : "mac", 6 | "filename" : "logo16.png", 7 | "scale" : "1x" 8 | }, 9 | { 10 | "size" : "16x16", 11 | "idiom" : "mac", 12 | "filename" : "logo32-1.png", 13 | "scale" : "2x" 14 | }, 15 | { 16 | "size" : "32x32", 17 | "idiom" : "mac", 18 | "filename" : "logo32.png", 19 | "scale" : "1x" 20 | }, 21 | { 22 | "size" : "32x32", 23 | "idiom" : "mac", 24 | "filename" : "logo64.png", 25 | "scale" : "2x" 26 | }, 27 | { 28 | "size" : "128x128", 29 | "idiom" : "mac", 30 | "filename" : "logo128.png", 31 | "scale" : "1x" 32 | }, 33 | { 34 | "size" : "128x128", 35 | "idiom" : "mac", 36 | "filename" : "logo256-1.png", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "size" : "256x256", 41 | "idiom" : "mac", 42 | "filename" : "logo256.png", 43 | "scale" : "1x" 44 | }, 45 | { 46 | "size" : "256x256", 47 | "idiom" : "mac", 48 | "filename" : "logo512.png", 49 | "scale" : "2x" 50 | }, 51 | { 52 | "idiom" : "mac", 53 | "size" : "512x512", 54 | "scale" : "1x" 55 | }, 56 | { 57 | "idiom" : "mac", 58 | "size" : "512x512", 59 | "scale" : "2x" 60 | } 61 | ], 62 | "info" : { 63 | "version" : 1, 64 | "author" : "xcode" 65 | } 66 | } -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo128.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo16.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo256-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo256-1.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo256.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo32-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo32-1.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo32.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo512.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/Images.xcassets/AppIcon.appiconset/logo64.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 2.8 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | LSMinimumSystemVersion 26 | $(MACOSX_DEPLOYMENT_TARGET) 27 | NSHumanReadableCopyright 28 | Copyright © 2015年 joglelew. All rights reserved. 29 | NSMainStoryboardFile 30 | Main 31 | NSPrincipalClass 32 | NSApplication 33 | 34 | 35 | -------------------------------------------------------------------------------- /AMDFramebufferUtility/getSystemFB16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/getSystemFB16 -------------------------------------------------------------------------------- /AMDFramebufferUtility/getSystemFB24: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/getSystemFB24 -------------------------------------------------------------------------------- /AMDFramebufferUtility/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/logo.png -------------------------------------------------------------------------------- /AMDFramebufferUtility/otool: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/otool -------------------------------------------------------------------------------- /AMDFramebufferUtility/radeon_bios_decode: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/radeon_bios_decode -------------------------------------------------------------------------------- /AMDFramebufferUtility/redsock_bios_decoder: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/JogleLew/amd-framebuffer-utility/b094fe44d92004636bae4a3339d785ca5f3b7b31/AMDFramebufferUtility/redsock_bios_decoder -------------------------------------------------------------------------------- /AMDFramebufferUtility/zh-Hans.lproj/Main.strings: -------------------------------------------------------------------------------- 1 | 2 | /* Class = "NSMenuItem"; title = "AMDFramebufferUtility"; ObjectID = "1Xt-HY-uBw"; */ 3 | "1Xt-HY-uBw.title" = "AMDFramebufferUtility"; 4 | 5 | /* Class = "NSMenu"; title = "Find"; ObjectID = "1b7-l0-nxx"; */ 6 | "1b7-l0-nxx.title" = "Find"; 7 | 8 | /* Class = "NSTextFieldCell"; title = "The developers of Chameleon Bootloader (ati.c)"; ObjectID = "2U7-tk-3ST"; */ 9 | "2U7-tk-3ST.title" = "Chameleon Bootloader 的开发者 (ati.c)"; 10 | 11 | /* Class = "NSMenuItem"; title = "Transformations"; ObjectID = "2oI-Rn-ZJC"; */ 12 | "2oI-Rn-ZJC.title" = "Transformations"; 13 | 14 | /* Class = "NSMenu"; title = "Spelling"; ObjectID = "3IN-sU-3Bg"; */ 15 | "3IN-sU-3Bg.title" = "Spelling"; 16 | 17 | /* Class = "NSMenu"; title = "Speech"; ObjectID = "3rS-ZA-NoH"; */ 18 | "3rS-ZA-NoH.title" = "Speech"; 19 | 20 | /* Class = "NSMenuItem"; title = "Find"; ObjectID = "4EN-yA-p0u"; */ 21 | "4EN-yA-p0u.title" = "Find"; 22 | 23 | /* Class = "NSMenuItem"; title = "Quit AMDFramebufferUtility"; ObjectID = "4sb-4s-VLi"; */ 24 | "4sb-4s-VLi.title" = "Quit AMDFramebufferUtility"; 25 | 26 | /* Class = "NSMenuItem"; title = "Edit"; ObjectID = "5QF-Oa-p0T"; */ 27 | "5QF-Oa-p0T.title" = "Edit"; 28 | 29 | /* Class = "NSMenuItem"; title = "About AMDFramebufferUtility"; ObjectID = "5kV-Vb-QxS"; */ 30 | "5kV-Vb-QxS.title" = "About AMDFramebufferUtility"; 31 | 32 | /* Class = "NSTextFieldCell"; title = "Kext:"; ObjectID = "6DG-cC-g84"; */ 33 | "6DG-cC-g84.title" = "Kext: "; 34 | 35 | /* Class = "NSMenuItem"; title = "Redo"; ObjectID = "6dh-zS-Vam"; */ 36 | "6dh-zS-Vam.title" = "Redo"; 37 | 38 | /* Class = "NSMenuItem"; title = "Correct Spelling Automatically"; ObjectID = "78Y-hA-62v"; */ 39 | "78Y-hA-62v.title" = "Correct Spelling Automatically"; 40 | 41 | /* Class = "NSTextFieldCell"; title = "Type"; ObjectID = "87s-4u-8Cf"; */ 42 | "87s-4u-8Cf.title" = "类型"; 43 | 44 | /* Class = "NSTextFieldCell"; title = "Please select the ROM of graphic card: "; ObjectID = "8vb-gl-TLO"; */ 45 | "8vb-gl-TLO.title" = "请选择您的显卡ROM文件:"; 46 | 47 | /* Class = "NSTextFieldCell"; title = "Original Framebuffer:"; ObjectID = "9Zu-h6-0Tq"; */ 48 | "9Zu-h6-0Tq.title" = "原始Framebuffer:"; 49 | 50 | /* Class = "NSMenuItem"; title = "Substitutions"; ObjectID = "9ic-FL-obx"; */ 51 | "9ic-FL-obx.title" = "Substitutions"; 52 | 53 | /* Class = "NSButtonCell"; title = "Select"; ObjectID = "9kN-TC-pWJ"; */ 54 | "9kN-TC-pWJ.title" = "选择"; 55 | 56 | /* Class = "NSMenuItem"; title = "Smart Copy/Paste"; ObjectID = "9yt-4B-nSM"; */ 57 | "9yt-4B-nSM.title" = "Smart Copy/Paste"; 58 | 59 | /* Class = "NSMenu"; title = "Main Menu"; ObjectID = "AYu-sK-qS6"; */ 60 | "AYu-sK-qS6.title" = "Main Menu"; 61 | 62 | /* Class = "NSTextFieldCell"; title = "Control Flag"; ObjectID = "Alk-ye-Ecv"; */ 63 | "Alk-ye-Ecv.title" = "控制标志"; 64 | 65 | /* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "BOF-NM-1cW"; */ 66 | "BOF-NM-1cW.title" = "Preferences…"; 67 | 68 | /* Class = "NSTextFieldCell"; title = "Unknown Status"; ObjectID = "BfL-Ic-Q7M"; */ 69 | "BfL-Ic-Q7M.title" = "未知状态"; 70 | 71 | /* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "Bw7-FT-i3A"; */ 72 | "Bw7-FT-i3A.title" = "Save As…"; 73 | 74 | /* Class = "NSTextFieldCell"; title = "(Data was provided by this program)"; ObjectID = "CrD-xY-yVj"; */ 75 | "CrD-xY-yVj.title" = "(数据可能与您系统中的不同)"; 76 | 77 | /* Class = "NSMenuItem"; title = "Close"; ObjectID = "DVo-aG-piG"; */ 78 | "DVo-aG-piG.title" = "Close"; 79 | 80 | /* Class = "NSMenuItem"; title = "Spelling and Grammar"; ObjectID = "Dv1-io-Yv7"; */ 81 | "Dv1-io-Yv7.title" = "Spelling and Grammar"; 82 | 83 | /* Class = "NSMenu"; title = "Help"; ObjectID = "F2S-fz-NVQ"; */ 84 | "F2S-fz-NVQ.title" = "Help"; 85 | 86 | /* Class = "NSMenuItem"; title = "AMDFramebufferUtility Help"; ObjectID = "FKE-Sm-Kum"; */ 87 | "FKE-Sm-Kum.title" = "AMDFramebufferUtility Help"; 88 | 89 | /* Class = "NSMenu"; title = "Substitutions"; ObjectID = "FeM-D8-WVr"; */ 90 | "FeM-D8-WVr.title" = "Substitutions"; 91 | 92 | /* Class = "NSTextFieldCell"; title = "Get framebuffer from: "; ObjectID = "Fxl-sp-rNH"; */ 93 | "Fxl-sp-rNH.title" = "Framebuffer获取来源:"; 94 | 95 | /* Class = "NSTextFieldCell"; title = "Thanks to: The developers of radeon_bios_decode, redsock_bios_decoder"; ObjectID = "Gtk-mk-gJk"; */ 96 | "Gtk-mk-gJk.title" = "致以感谢: radeon_bios_decode, redsock_bios_decoder的开发者"; 97 | 98 | /* Class = "NSMenuItem"; title = "Text Replacement"; ObjectID = "HFQ-gK-NFA"; */ 99 | "HFQ-gK-NFA.title" = "Text Replacement"; 100 | 101 | /* Class = "NSMenuItem"; title = "Show Spelling and Grammar"; ObjectID = "HFo-cy-zxI"; */ 102 | "HFo-cy-zxI.title" = "Show Spelling and Grammar"; 103 | 104 | /* Class = "NSTextFieldCell"; title = "Developer: ljg-pcbeta"; ObjectID = "HXF-J3-Cbk"; */ 105 | "HXF-J3-Cbk.title" = "开发者:ljg-pcbeta"; 106 | 107 | /* Class = "NSButtonCell"; title = "Show Connectors Data"; ObjectID = "I0n-I2-iY2"; */ 108 | "I0n-I2-iY2.title" = "显示接口数据"; 109 | 110 | /* Class = "NSTextFieldCell"; title = "txmit"; ObjectID = "I1S-xu-LIJ"; */ 111 | "I1S-xu-LIJ.title" = "txmit"; 112 | 113 | /* Class = "NSMenuItem"; title = "Open…"; ObjectID = "IAo-SY-fd9"; */ 114 | "IAo-SY-fd9.title" = "Open…"; 115 | 116 | /* Class = "NSWindow"; title = "AMD Framebuffer Utility"; ObjectID = "IQv-IB-iLA"; */ 117 | "IQv-IB-iLA.title" = "AMD Framebuffer Utility"; 118 | 119 | /* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "KaW-ft-85H"; */ 120 | "KaW-ft-85H.title" = "Revert to Saved"; 121 | 122 | /* Class = "NSMenuItem"; title = "Show All"; ObjectID = "Kd2-mp-pUS"; */ 123 | "Kd2-mp-pUS.title" = "Show All"; 124 | 125 | /* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "LE2-aR-0XJ"; */ 126 | "LE2-aR-0XJ.title" = "Bring All to Front"; 127 | 128 | /* Class = "NSMenuItem"; title = "Services"; ObjectID = "NMo-om-nkz"; */ 129 | "NMo-om-nkz.title" = "Services"; 130 | 131 | /* Class = "NSSegmentedCell"; Nz1-yA-lx5.ibShadowedLabels[0] = "Reassign all hotplugin bits"; ObjectID = "Nz1-yA-lx5"; */ 132 | "Nz1-yA-lx5.ibShadowedLabels[0]" = "重新分配hotplugin"; 133 | 134 | /* Class = "NSSegmentedCell"; Nz1-yA-lx5.ibShadowedLabels[1] = "Use original hotplugin bits"; ObjectID = "Nz1-yA-lx5"; */ 135 | "Nz1-yA-lx5.ibShadowedLabels[1]" = "使用原始的hotplugin"; 136 | 137 | /* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "OY7-WF-poV"; */ 138 | "OY7-WF-poV.title" = "Minimize"; 139 | 140 | /* Class = "NSMenuItem"; title = "Hide AMDFramebufferUtility"; ObjectID = "Olw-nP-bQN"; */ 141 | "Olw-nP-bQN.title" = "Hide AMDFramebufferUtility"; 142 | 143 | /* Class = "NSMenuItem"; title = "Find Previous"; ObjectID = "OwM-mh-QMV"; */ 144 | "OwM-mh-QMV.title" = "Find Previous"; 145 | 146 | /* Class = "NSMenuItem"; title = "Stop Speaking"; ObjectID = "Oyz-dy-DGm"; */ 147 | "Oyz-dy-DGm.title" = "Stop Speaking"; 148 | 149 | /* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "R4o-n2-Eq4"; */ 150 | "R4o-n2-Eq4.title" = "Zoom"; 151 | 152 | /* Class = "NSMenuItem"; title = "Select All"; ObjectID = "Ruw-6m-B2m"; */ 153 | "Ruw-6m-B2m.title" = "Select All"; 154 | 155 | /* Class = "NSMenuItem"; title = "Jump to Selection"; ObjectID = "S0p-oC-mLd"; */ 156 | "S0p-oC-mLd.title" = "Jump to Selection"; 157 | 158 | /* Class = "NSMenu"; title = "Window"; ObjectID = "Td7-aD-5lo"; */ 159 | "Td7-aD-5lo.title" = "Window"; 160 | 161 | /* Class = "NSMenuItem"; title = "Capitalize"; ObjectID = "UEZ-Bs-lqG"; */ 162 | "UEZ-Bs-lqG.title" = "Capitalize"; 163 | 164 | /* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "Vdr-fp-XzO"; */ 165 | "Vdr-fp-XzO.title" = "Hide Others"; 166 | 167 | /* Class = "NSMenu"; title = "Edit"; ObjectID = "W48-6f-4Dl"; */ 168 | "W48-6f-4Dl.title" = "Edit"; 169 | 170 | /* Class = "NSMenuItem"; title = "New"; ObjectID = "Was-JA-tGl"; */ 171 | "Was-JA-tGl.title" = "New"; 172 | 173 | /* Class = "NSMenuItem"; title = "Paste and Match Style"; ObjectID = "WeT-3V-zwk"; */ 174 | "WeT-3V-zwk.title" = "Paste and Match Style"; 175 | 176 | /* Class = "NSSegmentedCell"; WmC-gq-o9O.ibShadowedLabels[0] = "Use zero to fill placeholder bits "; ObjectID = "WmC-gq-o9O"; */ 177 | "WmC-gq-o9O.ibShadowedLabels[0]" = "用零填充占位符"; 178 | 179 | /* Class = "NSSegmentedCell"; WmC-gq-o9O.ibShadowedLabels[1] = "Keep original placeholder bits"; ObjectID = "WmC-gq-o9O"; */ 180 | "WmC-gq-o9O.ibShadowedLabels[1]" = "保持原有占位符"; 181 | 182 | /* Class = "NSMenuItem"; title = "Find…"; ObjectID = "Xz5-n4-O0W"; */ 183 | "Xz5-n4-O0W.title" = "Find…"; 184 | 185 | /* Class = "NSMenuItem"; title = "Find and Replace…"; ObjectID = "YEy-JH-Tfz"; */ 186 | "YEy-JH-Tfz.title" = "Find and Replace…"; 187 | 188 | /* Class = "NSMenuItem"; title = "Start Speaking"; ObjectID = "Ynk-f8-cLZ"; */ 189 | "Ynk-f8-cLZ.title" = "Start Speaking"; 190 | 191 | /* Class = "NSTextFieldCell"; title = "Recommend Framebuffer to replace: "; ObjectID = "Zji-Fe-bZ7"; */ 192 | "Zji-Fe-bZ7.title" = "推荐替换的framebuffer:"; 193 | 194 | /* Class = "NSMenuItem"; title = "Print…"; ObjectID = "aTl-1u-JFS"; */ 195 | "aTl-1u-JFS.title" = "Print…"; 196 | 197 | /* Class = "NSMenuItem"; title = "Window"; ObjectID = "aUF-d1-5bR"; */ 198 | "aUF-d1-5bR.title" = "Window"; 199 | 200 | /* Class = "NSTextFieldCell"; title = "SJ_UnderWater from TonyMacx86 (php script to get framebuffer)"; ObjectID = "asp-GA-m6i"; */ 201 | "asp-GA-m6i.title" = "SJ_UnderWater 来自 TonyMacx86论坛(获得framebuffer的php脚本)"; 202 | 203 | /* Class = "NSTextFieldCell"; title = "Graphic Card Info: "; ObjectID = "bO6-lJ-eBo"; */ 204 | "bO6-lJ-eBo.title" = "显卡信息:"; 205 | 206 | /* Class = "NSMenu"; title = "File"; ObjectID = "bib-Uj-vzu"; */ 207 | "bib-Uj-vzu.title" = "File"; 208 | 209 | /* Class = "NSMenuItem"; title = "Use Selection for Find"; ObjectID = "buJ-ug-pKt"; */ 210 | "buJ-ug-pKt.title" = "Use Selection for Find"; 211 | 212 | /* Class = "NSMenu"; title = "Transformations"; ObjectID = "c8a-y6-VQd"; */ 213 | "c8a-y6-VQd.title" = "Transformations"; 214 | 215 | /* Class = "NSMenuItem"; title = "Smart Links"; ObjectID = "cwL-P1-jid"; */ 216 | "cwL-P1-jid.title" = "Smart Links"; 217 | 218 | /* Class = "NSMenuItem"; title = "Make Lower Case"; ObjectID = "d9M-CD-aMd"; */ 219 | "d9M-CD-aMd.title" = "Make Lower Case"; 220 | 221 | /* Class = "NSMenuItem"; title = "File"; ObjectID = "dMs-cI-mzQ"; */ 222 | "dMs-cI-mzQ.title" = "File"; 223 | 224 | /* Class = "NSMenuItem"; title = "Undo"; ObjectID = "dRJ-4n-Yzg"; */ 225 | "dRJ-4n-Yzg.title" = "Undo"; 226 | 227 | /* Class = "NSTextFieldCell"; title = "test"; ObjectID = "fge-yX-tp8"; */ 228 | "fge-yX-tp8.title" = "test"; 229 | 230 | /* Class = "NSMenuItem"; title = "Paste"; ObjectID = "gVA-U4-sdL"; */ 231 | "gVA-U4-sdL.title" = "Paste"; 232 | 233 | /* Class = "NSMenuItem"; title = "Smart Quotes"; ObjectID = "hQb-2v-fYv"; */ 234 | "hQb-2v-fYv.title" = "Smart Quotes"; 235 | 236 | /* Class = "NSMenuItem"; title = "Check Document Now"; ObjectID = "hz2-CU-CR7"; */ 237 | "hz2-CU-CR7.title" = "Check Document Now"; 238 | 239 | /* Class = "NSMenu"; title = "Services"; ObjectID = "hz9-B4-Xy5"; */ 240 | "hz9-B4-Xy5.title" = "Services"; 241 | 242 | /* Class = "NSTextFieldCell"; title = "Testers neycwby09, maojinbing, beastfang from PCBeta"; ObjectID = "m7l-Tb-gbi"; */ 243 | "m7l-Tb-gbi.title" = "来自 PCBeta 论坛的大量测试者"; 244 | 245 | /* Class = "NSMenuItem"; title = "Check Grammar With Spelling"; ObjectID = "mK6-2p-4JG"; */ 246 | "mK6-2p-4JG.title" = "Check Grammar With Spelling"; 247 | 248 | /* Class = "NSMenu"; title = "Open Recent"; ObjectID = "oas-Oc-fiZ"; */ 249 | "oas-Oc-fiZ.title" = "Open Recent"; 250 | 251 | /* Class = "NSMenuItem"; title = "Delete"; ObjectID = "pa3-QI-u2k"; */ 252 | "pa3-QI-u2k.title" = "Delete"; 253 | 254 | /* Class = "NSMenuItem"; title = "Save…"; ObjectID = "pxx-59-PXV"; */ 255 | "pxx-59-PXV.title" = "Save…"; 256 | 257 | /* Class = "NSMenuItem"; title = "Find Next"; ObjectID = "q09-fT-Sye"; */ 258 | "q09-fT-Sye.title" = "Find Next"; 259 | 260 | /* Class = "NSMenuItem"; title = "Page Setup…"; ObjectID = "qIS-W8-SiK"; */ 261 | "qIS-W8-SiK.title" = "Page Setup…"; 262 | 263 | /* Class = "NSMenuItem"; title = "Check Spelling While Typing"; ObjectID = "rbD-Rh-wIN"; */ 264 | "rbD-Rh-wIN.title" = "Check Spelling While Typing"; 265 | 266 | /* Class = "NSMenuItem"; title = "Smart Dashes"; ObjectID = "rgM-f4-ycn"; */ 267 | "rgM-f4-ycn.title" = "Smart Dashes"; 268 | 269 | /* Class = "NSMenuItem"; title = "Data Detectors"; ObjectID = "tRr-pd-1PS"; */ 270 | "tRr-pd-1PS.title" = "Data Detectors"; 271 | 272 | /* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "tXI-mr-wws"; */ 273 | "tXI-mr-wws.title" = "Open Recent"; 274 | 275 | /* Class = "NSTextFieldCell"; title = "Framebuffer of Your Graphics Card: "; ObjectID = "tfr-ny-FCj"; */ 276 | "tfr-ny-FCj.title" = "您显卡的framebuffer"; 277 | 278 | /* Class = "NSMenu"; title = "AMDFramebufferUtility"; ObjectID = "uQy-DD-JDr"; */ 279 | "uQy-DD-JDr.title" = "AMDFramebufferUtility"; 280 | 281 | /* Class = "NSMenuItem"; title = "Cut"; ObjectID = "uRl-iY-unG"; */ 282 | "uRl-iY-unG.title" = "Cut"; 283 | 284 | /* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "vNY-rz-j42"; */ 285 | "vNY-rz-j42.title" = "Clear Menu"; 286 | 287 | /* Class = "NSMenuItem"; title = "Make Upper Case"; ObjectID = "vmV-6d-7jI"; */ 288 | "vmV-6d-7jI.title" = "Make Upper Case"; 289 | 290 | /* Class = "NSTextFieldCell"; title = "senseid"; ObjectID = "wfK-MY-kTF"; */ 291 | "wfK-MY-kTF.title" = "senseid"; 292 | 293 | /* Class = "NSMenuItem"; title = "Help"; ObjectID = "wpr-3q-Mcd"; */ 294 | "wpr-3q-Mcd.title" = "Help"; 295 | 296 | /* Class = "NSMenuItem"; title = "Copy"; ObjectID = "x3v-GG-iWU"; */ 297 | "x3v-GG-iWU.title" = "Copy"; 298 | 299 | /* Class = "NSMenuItem"; title = "Speech"; ObjectID = "xrE-MZ-jX0"; */ 300 | "xrE-MZ-jX0.title" = "Speech"; 301 | 302 | /* Class = "NSViewController"; title = "About AMD Framebuffer Utility"; ObjectID = "yK3-wr-Mkd"; */ 303 | "yK3-wr-Mkd.title" = "About AMD Framebuffer Utility"; 304 | 305 | /* Class = "NSMenuItem"; title = "Show Substitutions"; ObjectID = "z6F-FW-3nz"; */ 306 | "z6F-FW-3nz.title" = "Show Substitutions"; 307 | 308 | /* Class = "NSSegmentedCell"; zCG-xC-MNt.ibShadowedLabels[0] = "Keep order of connectors in ROM"; ObjectID = "zCG-xC-MNt"; */ 309 | "zCG-xC-MNt.ibShadowedLabels[0]" = "保持ROM中的接口顺序"; 310 | 311 | /* Class = "NSSegmentedCell"; zCG-xC-MNt.ibShadowedLabels[1] = "Insert into original framebuffer"; ObjectID = "zCG-xC-MNt"; */ 312 | "zCG-xC-MNt.ibShadowedLabels[1]" = "插入原始framebuffer"; 313 | 314 | /* Class = "NSTextFieldCell"; title = "enc"; ObjectID = "zPb-XL-jam"; */ 315 | "zPb-XL-jam.title" = "enc"; 316 | -------------------------------------------------------------------------------- /AMDFramebufferUtilityTests/AMDFramebufferUtilityTests.swift: -------------------------------------------------------------------------------- 1 | // 2 | // AMDFramebufferUtilityTests.swift 3 | // AMDFramebufferUtilityTests 4 | // 5 | // Created by jogle on 15/6/29. 6 | // Copyright (c) 2015年 joglelew. All rights reserved. 7 | // 8 | 9 | import Cocoa 10 | import XCTest 11 | 12 | class AMDFramebufferUtilityTests: XCTestCase { 13 | 14 | override func setUp() { 15 | super.setUp() 16 | // Put setup code here. This method is called before the invocation of each test method in the class. 17 | } 18 | 19 | override func tearDown() { 20 | // Put teardown code here. This method is called after the invocation of each test method in the class. 21 | super.tearDown() 22 | } 23 | 24 | func testExample() { 25 | // This is an example of a functional test case. 26 | XCTAssert(true, "Pass") 27 | } 28 | 29 | func testPerformanceExample() { 30 | // This is an example of a performance test case. 31 | self.measureBlock() { 32 | // Put the code you want to measure the time of here. 33 | } 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /AMDFramebufferUtilityTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /Base.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | /* 2 | Localizable.strings 3 | AMDFramebufferUtility 4 | 5 | Created by jogle on 15/6/30. 6 | Copyright (c) 2015年 joglelew. All rights reserved. 7 | */ 8 | 9 | GRAPHIC_CARD_INFO = "Graphic Card Info: "; 10 | RECOMMEND = "Recommend Framebuffer to replace: "; 11 | ORIGIN = "Origin Framebuffer: "; 12 | USER_FB = "Framebuffer Of Your Graphics Card: "; 13 | TYPE = "type"; 14 | SAVE_ALL = "Save All"; 15 | EXIT = "Exit"; 16 | PLEASE_WAIT = "Please wait..."; 17 | SELECT_FB = "Please select a framebuffer"; 18 | MOBILE = " (Mobile)"; 19 | CONTROLFLAG = "Control Flag"; 20 | CARD_INFO_NOT_FOUND = "Card Info Not Found!"; 21 | ID_IN_PLIST = "Found your card ID in kext"; 22 | ID_NOT_IN_PLIST = "Not found your card ID in kext"; 23 | CARD_NAME = "Card Name: "; 24 | PROGRAM_DATA = "Datas that program contains"; 25 | FROM_PARTITION = "From partition: "; 26 | DEFAULT = "Default"; 27 | NORMAL = "Normal"; 28 | HIGH_RESOLUTION = "High Resolution"; 29 | OLD_FRAMEBUFFER_LENGTH = "16 Bytes"; 30 | NEW_FRAMEBUFFER_LENGTH = "24 Bytes"; 31 | FB_LENGTH_TEXT = "Framebuffer length: "; -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AMD Framebuffer Utility 2 | 3 | For Hackintoshers! 4 | 5 | 1. Get Framebuffer informations from ROM of graphics card 6 | 1. Get origin Framebuffer informations from AMD kexts 7 | 1. Recommend suitable Framebuffer to users 8 | 1. Adjust your Framebuffer and show connectors information 9 | 10 | #System Requirement 11 | 12 | OS X 10.9+ (support macOS Sierra 10.12) 13 | 14 | #Guide Page (Chinese) 15 | 16 | http://bbs.pcbeta.com/viewthread-1637874-1-1.html 17 | 18 | #Release Page (Chinese) 19 | 20 | http://bbs.pcbeta.com/viewthread-1608818-1-1.html 21 | 22 | #Change Log 23 | 24 | 25 | V3.0 26 | 27 | 1. Support macOS Sierra 10.12 28 | 1. Update cards info 29 | 1. Fix crash bugs 30 | 31 | 32 | V2.0 33 | 34 | 1. Redesign the user interface 35 | 1. Rewrite code 36 | 1. Add function: check whether card id is in kext 37 | 38 | 39 | V1.0 40 | 41 | 1. Rewrite all program using Swift (Old One is abandoned) 42 | 1. Add function: Get origin Framebuffer informations from AMD kexts && Recommend suitable Framebuffer 43 | 44 | -------------------------------------------------------------------------------- /en.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | /* 2 | Localizable.strings 3 | AMDFramebufferUtility 4 | 5 | Created by jogle on 15/6/30. 6 | Copyright (c) 2015年 joglelew. All rights reserved. 7 | */ 8 | 9 | GRAPHIC_CARD_INFO = "Graphic Card Info: "; 10 | RECOMMEND = "Recommend Framebuffer to replace: "; 11 | ORIGIN = "Origin Framebuffer: "; 12 | USER_FB = "Framebuffer Of Your Graphics Card: "; 13 | TYPE = "type"; 14 | SAVE_ALL = "Save All"; 15 | EXIT = "Exit"; 16 | PLEASE_WAIT = "Please wait..."; 17 | SELECT_FB = "Please select a framebuffer"; 18 | MOBILE = " (Mobile)"; 19 | CONTROLFLAG = "Control Flag"; 20 | CARD_INFO_NOT_FOUND = "Card Info Not Found!"; 21 | ID_IN_PLIST = "Found your card ID in kext"; 22 | ID_NOT_IN_PLIST = "Not found your card ID in kext"; 23 | CARD_NAME = "Card Name: "; 24 | PROGRAM_DATA = "Datas that program contains"; 25 | FROM_PARTITION = "From partition: "; 26 | DEFAULT = "Default"; 27 | NORMAL = "Normal"; 28 | HIGH_RESOLUTION = "High Resolution"; 29 | OLD_FRAMEBUFFER_LENGTH = "16 Bytes"; 30 | NEW_FRAMEBUFFER_LENGTH = "24 Bytes"; 31 | FB_LENGTH_TEXT = "Framebuffer length: "; -------------------------------------------------------------------------------- /getSystemFB16.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | char partitionName[1024], otoolPath[1024]; 8 | char value[][9] = { 9 | "02000000", "04000000", "80000000", "10000000", 10 | "00020000", "00040000", "00080000"}; 11 | 12 | char type[][7] = {"LVDS", "DDVI", "SVIDEO", "VGA", "SDVI", "DP", "HDMI"}; 13 | 14 | int hasPrefix(char* src, char *prefix); 15 | int hexdec(char* addr); 16 | void handleBlank(char* dst, char* src); 17 | void findProperKext(); 18 | void runOtool(char* kextName); 19 | void processData(FILE* otoolResult, FILE* kextFile); 20 | 21 | int main(int argc, char const *argv[]) 22 | { 23 | // Argument[1] -> Partition Name 24 | // Argument[2] -> `otool` Path 25 | strcpy(partitionName, argv[1]); 26 | strcpy(otoolPath, argv[2]); 27 | if (argc != 3 || strlen(partitionName) > 100 || strlen(otoolPath) > 254) { 28 | return -1; 29 | } 30 | 31 | findProperKext(); 32 | return 0; 33 | } 34 | 35 | int hasPrefix(char* src, char *prefix) { 36 | // return 1 if src has prefix, return 0 otherwise. 37 | 38 | int i, flag = 1; 39 | if (strlen(src) < strlen(prefix)) 40 | return 0; 41 | for (i = 0; i < strlen(prefix); i++) 42 | if (src[i] != prefix[i]) { 43 | flag = 0; break; 44 | } 45 | return flag; 46 | } 47 | 48 | int hexdec(char* addr) { 49 | int i, result = 0; 50 | for (i = 0; i < strlen(addr); i++) { 51 | if (addr[i] >= '0' && addr[i] <= '9') 52 | result = 16 * result + addr[i] - '0'; 53 | else { 54 | result = 16 * result + addr[i] - 'a' + 10; 55 | } 56 | } 57 | return result; 58 | } 59 | 60 | void handleBlank(char* dst, char* src) { 61 | int i, j = 0; 62 | for (i = 0; i < strlen(src); i++) 63 | if (src[i] != ' ') 64 | dst[j++] = src[i]; 65 | else { 66 | dst[j++] = '\\'; 67 | dst[j++] = ' '; 68 | } 69 | dst[j] = '\0'; 70 | } 71 | 72 | void findProperKext() { 73 | int i, flag; 74 | char path[1024], kextName[255], ATIAMD[4], controller[11] = "Controller"; 75 | DIR *dir; 76 | struct dirent *ptr; 77 | 78 | // check AMD(10.10+) or ATI(10.9) 79 | sprintf(path, "/Volumes/%s/System/Library/Extensions/AMD6000Controller.kext", partitionName); 80 | (access(path, 0) == 0) ? strcpy(ATIAMD, "AMD") : strcpy(ATIAMD, "ATI"); 81 | 82 | // get all AMD*Controller / ATI*Controller 83 | sprintf(path, "/Volumes/%s/System/Library/Extensions/", partitionName); 84 | dir=opendir(path); 85 | while((ptr = readdir(dir)) != NULL) { 86 | if (strlen(ptr->d_name) < 22) continue; 87 | if (!hasPrefix(ptr->d_name, ATIAMD)) continue; // has prefix "AMD" / "ATI" 88 | 89 | flag = 0; 90 | for (i = 0; i < 10; i++) { // has suffix "Controller.kext" 91 | if (ptr->d_name[7 + i] != controller[i]) { 92 | flag = 1; break; 93 | } 94 | } 95 | if (flag) continue; 96 | printf("-------------------------%s-------------------------\n\n", ptr->d_name); 97 | strncpy(kextName, ptr->d_name, strlen(ptr->d_name) - 5); 98 | kextName[strlen(ptr->d_name) - 5] = '\0'; 99 | runOtool(kextName); 100 | } 101 | } 102 | 103 | void runOtool(char* kextName) { 104 | int pid, status; 105 | char t1[1024], t2[1024], instruction[1024], path[1024]; 106 | FILE* otoolResult, *kextFile; 107 | 108 | handleBlank(t1, otoolPath); 109 | handleBlank(t2, partitionName); 110 | sprintf(instruction, "sh -c \"%s -XvQt /Volumes/%s/System/Library/Extensions/%s.kext/Contents/MacOS/%s\"", 111 | t1, t2, kextName, kextName); 112 | sprintf(path, "/Volumes/%s/System/Library/Extensions/%s.kext/Contents/MacOS/%s", 113 | partitionName, kextName, kextName); 114 | if ((otoolResult = popen(instruction, "r")) == NULL) { 115 | fprintf(stderr,"error!/n"); 116 | return ; 117 | } 118 | if ((kextFile = fopen(path, "r")) == NULL) { 119 | fprintf(stderr,"error!/n"); 120 | return ; 121 | } 122 | processData(otoolResult, kextFile); 123 | } 124 | 125 | void processData(FILE* otoolResult, FILE* kextFile) { 126 | int flag, i, j, k, addr, offset, ports; 127 | char data[255], info[17] = "Info10createInfo"; 128 | char name[255], addrString[7], portString[3], offsetString[9], fbString[255], fb[10][40]; 129 | while (fgets(data, 255, otoolResult)) { 130 | if (!hasPrefix(data, "__ZN")) continue; // has prefix "__ZN" 131 | 132 | flag = 0; 133 | for (i = 0; i < strlen(data); i++) { // contains "Info10createInfo" 134 | if (data[i] != info[0]) continue; 135 | j = i + 1; 136 | while (j < strlen(data) && j - i < 17 && data[j] == info[j - i]) 137 | j++; 138 | if (j - i == 16) { 139 | flag = 1; break; 140 | } 141 | } 142 | if (!flag) continue; 143 | 144 | // get framebuffer name 145 | j = 4; 146 | while (data[j] >= '0' && data[j] <= '9') 147 | j++; 148 | for (k = j; k < i; k++) 149 | name[k - j] = data[k]; 150 | name[k- j] = '\0'; 151 | 152 | ports = -1; 153 | while (fgets(data, 255, otoolResult)) { 154 | flag = 0; 155 | if (hasPrefix(data, "ret")) break; // does not have prefix "ret" 156 | 157 | if (hasPrefix(data, "leaq")) { 158 | j = 0; 159 | while (data[j] != '(') 160 | j++; 161 | for (i = j - 6; i > 0 && i < j; i++) 162 | addrString[i - j + 6] = data[i]; 163 | addrString[6] = '\0'; 164 | addr = hexdec(addrString); 165 | } 166 | 167 | if (ports == -1 && hasPrefix(data, "movb")) { 168 | i = 0; 169 | while (i < strlen(data) && data[i] != '$') 170 | i++; 171 | if (i == strlen(data)) continue; 172 | if (data[i + 1] == '0' && data[i + 2] == 'x') 173 | i += 3; 174 | else continue; 175 | j = ++i; 176 | while (data[j] != ',') 177 | j++; 178 | for (k = i; k < j; k++) 179 | portString[k - i] = data[k]; 180 | portString[k - i] = '\0'; 181 | ports = hexdec(portString); 182 | } 183 | 184 | if (hasPrefix(data, "jl")) { 185 | for (i = strlen(data) - 9; i < strlen(data); i++) 186 | offsetString[i - strlen(data) + 9] = data[i]; 187 | offsetString[8] = '\0'; 188 | offset = hexdec(offsetString); 189 | } 190 | 191 | if (hasPrefix(data, "jmp")) { 192 | for (i = strlen(data) - 9; i < strlen(data); i++) 193 | offsetString[i - strlen(data) + 9] = data[i]; 194 | offsetString[8] = '\0'; 195 | offset = hexdec(offsetString) + 0x1A; 196 | } 197 | } 198 | 199 | addr += offset; 200 | printf("%s (%d) @ 0x%x\n", name, ports, addr); 201 | fseek(kextFile, addr, SEEK_SET); 202 | memset(fbString, 0, sizeof(fbString)); 203 | memset(fb, 0, sizeof(fb)); 204 | fread(fbString, 1, 16 * ports, kextFile); 205 | for (i = 0; i < ports; i++) { 206 | for (j = 0; j < 16; j++) { 207 | k = (int) fbString[i * 16 + j]; 208 | if (((k & 0x00F0) >> 4) < 10){ 209 | fb[i][2 * j] = ((k & 0x00F0) >> 4) + '0'; 210 | } 211 | else { 212 | fb[i][2 * j] = ((k & 0x00F0) >> 4) - 10 + 'a'; 213 | } 214 | if ((k & 0x000F) < 10){ 215 | fb[i][2 * j + 1] = (k & 0x000F) + '0'; 216 | } 217 | else { 218 | fb[i][2 * j + 1] = (k & 0x000F) - 10 + 'a'; 219 | } 220 | } 221 | } 222 | for (i = 0; i < ports; i++) { 223 | if (i > 0) printf(", "); 224 | flag = 1; 225 | for (j = 0; j < 7; j++) 226 | if (hasPrefix(fb[i], value[j])){ 227 | printf("%s", type[j]); flag = 0; break; 228 | } 229 | if (flag) 230 | printf("????"); 231 | } 232 | printf("\n"); 233 | for (i = 0; i < ports; i++) { 234 | printf("%s\n", fb[i]); 235 | } 236 | printf("\n"); 237 | } 238 | fclose(kextFile); 239 | pclose(otoolResult); 240 | } -------------------------------------------------------------------------------- /getSystemFB16.php: -------------------------------------------------------------------------------- 1 | 0){$s.=chr($h>>(8*$i)&0xFF);}return $s;} 5 | $ctype=array('02000000'=>'LVDS','04000000'=>'DDVI','80000000'=>'SVIDEO','10000000'=>'VGA','00020000'=>'SDVI','00040000'=>'DP','00080000'=>'HDMI','00100000'=>'????'); 6 | foreach(glob('/Volumes/'.$argv[1].'/System/Library/Extensions/'.(file_exists('/Volumes/'.$argv[1].'/System/Library/Extensions/AMD6000Controller.kext') ? 'AMD' : 'ATI').'*Controller.kext') as $file) { 7 | echo str_pad(substr(strrchr($file,'/'),1),72,'-',STR_PAD_BOTH)."\n\n"; 8 | $file=array_pop(glob("$file/Contents/MacOS/*")); 9 | $file1=str_replace(' ', '\ ', $file); 10 | $a=popen($argv[2]." -XvQt $file1",'r'); 11 | $b=fopen($file,'r'); 12 | while ($l=fgets($a)) { 13 | if (strncmp($l,'__ZN',4)!=0 || ($i=strpos($l,'Info10createInfo'))===false) continue; 14 | $f=new stdClass(); 15 | $f->name=substr($l,5+is_numeric($l[5]),$i-5-is_numeric($l[5])); 16 | while(($l=fgets($a)) && strpos($l,'ret')===false) { 17 | if (strpos($l,'leaq')!==false) $f->addr=hexdec(substr($l,6,strpos($l,'(')-6)); 18 | if (!isset($f->ports) && strpos($l,"movb\t$")!==false) $f->ports=hexdec(substr($l,strpos($l,'$'),strpos($l,',')-strpos($l,'$')))&0xFF; 19 | if (strpos($l,'jl')!==false) $i=hexdec(substr($l,4)); 20 | if (strpos($l,'jmp')!==false) $i=hexdec(substr($l,4)) + 0x1A; 21 | } 22 | $f->addr+=$i; 23 | echo "$f->name ($f->ports) @ 0x".dechex($f->addr)."\n"; 24 | $t=$p=array(); 25 | fseek($b,$f->addr); 26 | while($f->ports-- > 0) $p[]=$ctype[substr($t[]=toHex(fread($b,16)),0,8)]; 27 | echo implode(', ',$p)."\n"; 28 | echo implode("\n",$t)."\n\n"; 29 | } 30 | pclose($a); 31 | fclose($b); 32 | } -------------------------------------------------------------------------------- /getSystemFB24.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #define FBLEN 24 7 | 8 | char partitionName[1024], otoolPath[1024]; 9 | char value[][9] = { 10 | "02000000", "04000000", "80000000", "10000000", 11 | "00020000", "00040000", "00080000"}; 12 | 13 | char type[][7] = {"LVDS", "DDVI", "SVIDEO", "VGA", "SDVI", "DP", "HDMI"}; 14 | 15 | int hasPrefix(char* src, char *prefix); 16 | int hexdec(char* addr); 17 | void handleBlank(char* dst, char* src); 18 | void findProperKext(); 19 | void runOtool(char* kextName); 20 | void processData(FILE* otoolResult, FILE* kextFile); 21 | 22 | int main(int argc, char const *argv[]) 23 | { 24 | // Argument[1] -> Partition Name 25 | // Argument[2] -> `otool` Path 26 | strcpy(partitionName, argv[1]); 27 | strcpy(otoolPath, argv[2]); 28 | if (argc != 3 || strlen(partitionName) > 100 || strlen(otoolPath) > 254) { 29 | return -1; 30 | } 31 | 32 | findProperKext(); 33 | return 0; 34 | } 35 | 36 | int hasPrefix(char* src, char *prefix) { 37 | // return 1 if src has prefix, return 0 otherwise. 38 | 39 | int i, flag = 1; 40 | if (strlen(src) < strlen(prefix)) 41 | return 0; 42 | for (i = 0; i < strlen(prefix); i++) 43 | if (src[i] != prefix[i]) { 44 | flag = 0; break; 45 | } 46 | return flag; 47 | } 48 | 49 | int hexdec(char* addr) { 50 | int i, result = 0; 51 | for (i = 0; i < strlen(addr); i++) { 52 | if (addr[i] >= '0' && addr[i] <= '9') 53 | result = 16 * result + addr[i] - '0'; 54 | else { 55 | result = 16 * result + addr[i] - 'a' + 10; 56 | } 57 | } 58 | return result; 59 | } 60 | 61 | void handleBlank(char* dst, char* src) { 62 | int i, j = 0; 63 | for (i = 0; i < strlen(src); i++) 64 | if (src[i] != ' ') 65 | dst[j++] = src[i]; 66 | else { 67 | dst[j++] = '\\'; 68 | dst[j++] = ' '; 69 | } 70 | dst[j] = '\0'; 71 | } 72 | 73 | void findProperKext() { 74 | int i, flag; 75 | char path[1024], kextName[255], ATIAMD[4], controller[11] = "Controller"; 76 | DIR *dir; 77 | struct dirent *ptr; 78 | 79 | // check AMD(10.10+) or ATI(10.9) 80 | sprintf(path, "/Volumes/%s/System/Library/Extensions/AMD6000Controller.kext", partitionName); 81 | (access(path, 0) == 0) ? strcpy(ATIAMD, "AMD") : strcpy(ATIAMD, "ATI"); 82 | 83 | // get all AMD*Controller / ATI*Controller 84 | sprintf(path, "/Volumes/%s/System/Library/Extensions/", partitionName); 85 | dir=opendir(path); 86 | while((ptr = readdir(dir)) != NULL) { 87 | if (strlen(ptr->d_name) < 22) continue; 88 | if (!hasPrefix(ptr->d_name, ATIAMD)) continue; // has prefix "AMD" / "ATI" 89 | 90 | flag = 0; 91 | for (i = 0; i < 10; i++) { // has suffix "Controller.kext" 92 | if (ptr->d_name[7 + i] != controller[i]) { 93 | flag = 1; break; 94 | } 95 | } 96 | if (flag) continue; 97 | printf("-------------------------%s-------------------------\n\n", ptr->d_name); 98 | strncpy(kextName, ptr->d_name, strlen(ptr->d_name) - 5); 99 | kextName[strlen(ptr->d_name) - 5] = '\0'; 100 | runOtool(kextName); 101 | } 102 | } 103 | 104 | void runOtool(char* kextName) { 105 | int pid, status; 106 | char t1[1024], t2[1024], instruction[1024], path[1024]; 107 | FILE* otoolResult, *kextFile; 108 | 109 | handleBlank(t1, otoolPath); 110 | handleBlank(t2, partitionName); 111 | sprintf(instruction, "sh -c \"%s -XvQt /Volumes/%s/System/Library/Extensions/%s.kext/Contents/MacOS/%s\"", 112 | t1, t2, kextName, kextName); 113 | sprintf(path, "/Volumes/%s/System/Library/Extensions/%s.kext/Contents/MacOS/%s", 114 | partitionName, kextName, kextName); 115 | if ((otoolResult = popen(instruction, "r")) == NULL) { 116 | fprintf(stderr,"error!/n"); 117 | return ; 118 | } 119 | if ((kextFile = fopen(path, "r")) == NULL) { 120 | fprintf(stderr,"error!/n"); 121 | return ; 122 | } 123 | processData(otoolResult, kextFile); 124 | } 125 | 126 | void processData(FILE* otoolResult, FILE* kextFile) { 127 | int flag, i, j, k, addr, offset, ports; 128 | char data[255], info[17] = "Info10createInfo"; 129 | char name[255], addrString[7], portString[3], offsetString[9], fbString[255], fb[10][FBLEN * 2 + 1]; 130 | while (fgets(data, 255, otoolResult)) { 131 | if (!hasPrefix(data, "__ZN")) continue; // has prefix "__ZN" 132 | 133 | flag = 0; 134 | for (i = 0; i < strlen(data); i++) { // contains "Info10createInfo" 135 | if (data[i] != info[0]) continue; 136 | j = i + 1; 137 | while (j < strlen(data) && j - i < 17 && data[j] == info[j - i]) 138 | j++; 139 | if (j - i == 16) { 140 | flag = 1; break; 141 | } 142 | } 143 | if (!flag) continue; 144 | 145 | // get framebuffer name 146 | j = 4; 147 | while (data[j] >= '0' && data[j] <= '9') 148 | j++; 149 | for (k = j; k < i; k++) 150 | name[k - j] = data[k]; 151 | name[k- j] = '\0'; 152 | 153 | ports = -1; 154 | while (fgets(data, 255, otoolResult)) { 155 | flag = 0; 156 | if (hasPrefix(data, "ret")) break; // does not have prefix "ret" 157 | 158 | if (hasPrefix(data, "leaq")) { 159 | j = 0; 160 | while (data[j] != '(') 161 | j++; 162 | for (i = j - 6; i > 0 && i < j; i++) 163 | addrString[i - j + 6] = data[i]; 164 | addrString[6] = '\0'; 165 | addr = hexdec(addrString); 166 | } 167 | 168 | if (ports == -1 && hasPrefix(data, "movb")) { 169 | i = 0; 170 | while (i < strlen(data) && data[i] != '$') 171 | i++; 172 | if (i == strlen(data)) continue; 173 | if (data[i + 1] == '0' && data[i + 2] == 'x') 174 | i += 3; 175 | else continue; 176 | j = ++i; 177 | while (data[j] != ',') 178 | j++; 179 | for (k = i; k < j; k++) 180 | portString[k - i] = data[k]; 181 | portString[k - i] = '\0'; 182 | ports = hexdec(portString); 183 | } 184 | 185 | if (hasPrefix(data, "jl")) { 186 | for (i = strlen(data) - 9; i < strlen(data); i++) 187 | offsetString[i - strlen(data) + 9] = data[i]; 188 | offsetString[8] = '\0'; 189 | offset = hexdec(offsetString); 190 | } 191 | 192 | if (hasPrefix(data, "jmp")) { 193 | for (i = strlen(data) - 9; i < strlen(data); i++) 194 | offsetString[i - strlen(data) + 9] = data[i]; 195 | offsetString[8] = '\0'; 196 | offset = hexdec(offsetString) + 0x1A; 197 | } 198 | } 199 | 200 | addr += offset; 201 | printf("%s (%d) @ 0x%x\n", name, ports, addr); 202 | fseek(kextFile, addr, SEEK_SET); 203 | memset(fbString, 0, sizeof(fbString)); 204 | memset(fb, 0, sizeof(fb)); 205 | fread(fbString, 1, FBLEN * ports, kextFile); 206 | for (i = 0; i < ports; i++) { 207 | for (j = 0; j < FBLEN; j++) { 208 | k = (int) fbString[i * FBLEN + j]; 209 | if (((k & 0x00F0) >> 4) < 10){ 210 | fb[i][2 * j] = ((k & 0x00F0) >> 4) + '0'; 211 | } 212 | else { 213 | fb[i][2 * j] = ((k & 0x00F0) >> 4) - 10 + 'a'; 214 | } 215 | if ((k & 0x000F) < 10){ 216 | fb[i][2 * j + 1] = (k & 0x000F) + '0'; 217 | } 218 | else { 219 | fb[i][2 * j + 1] = (k & 0x000F) - 10 + 'a'; 220 | } 221 | } 222 | } 223 | for (i = 0; i < ports; i++) { 224 | if (i > 0) printf(", "); 225 | flag = 1; 226 | for (j = 0; j < 7; j++) 227 | if (hasPrefix(fb[i], value[j])){ 228 | printf("%s", type[j]); flag = 0; break; 229 | } 230 | if (flag) 231 | printf("????"); 232 | } 233 | printf("\n"); 234 | for (i = 0; i < ports; i++) { 235 | printf("%s\n", fb[i]); 236 | } 237 | printf("\n"); 238 | } 239 | fclose(kextFile); 240 | pclose(otoolResult); 241 | } -------------------------------------------------------------------------------- /zh-Hans.lproj/Localizable.strings: -------------------------------------------------------------------------------- 1 | /* 2 | Localizable.strings 3 | AMDFramebufferUtility 4 | 5 | Created by jogle on 15/6/30. 6 | Copyright (c) 2015年 joglelew. All rights reserved. 7 | */ 8 | 9 | GRAPHIC_CARD_INFO = "您的显卡信息:"; 10 | RECOMMEND = "推荐替换的Framebuffer:"; 11 | ORIGIN = "原始Framebuffer值:"; 12 | USER_FB = "您的显卡Framebuffer:"; 13 | TYPE = "接口类型"; 14 | SAVE_ALL = "保存所有数据"; 15 | EXIT = "退出"; 16 | PLEASE_WAIT = "请稍候..."; 17 | SELECT_FB = "请选择一个Framebuffer"; 18 | MOBILE = " (移动版)"; 19 | CONTROLFLAG = "控制标志"; 20 | CARD_INFO_NOT_FOUND = "显卡信息没有找到!"; 21 | ID_IN_PLIST = "在相应kext中发现您的显卡ID"; 22 | ID_NOT_IN_PLIST = "未在相应kext中发现您的显卡ID"; 23 | CARD_NAME = "显卡名称:"; 24 | PROGRAM_DATA = "程序中内置的数据"; 25 | FROM_PARTITION = "来自分区:"; 26 | DEFAULT = "默认"; 27 | NORMAL = "普通接口"; 28 | HIGH_RESOLUTION = "高清接口"; 29 | OLD_FRAMEBUFFER_LENGTH = "16字节"; 30 | NEW_FRAMEBUFFER_LENGTH = "24字节"; 31 | FB_LENGTH_TEXT = "Framebuffer长度:"; --------------------------------------------------------------------------------