From ac146b26d2cf1a31e4435a5d905c1692ee430850 Mon Sep 17 00:00:00 2001 From: rogerman Date: Thu, 2 Jan 2014 03:13:44 +0000 Subject: [PATCH] Cocoa Port: - Add preliminary support for SLOT-2 devices. (Guitar Grip and Piano remain unsupported, but all other devices work.) Happy New Year, folks! --- .../project.pbxproj | 122 +- .../project.pbxproj | 50 +- .../project.pbxproj | 50 +- desmume/src/cocoa/DefaultKeyMappings.plist | 3 + desmume/src/cocoa/DefaultUserPrefs.plist | Bin 5446 -> 5673 bytes desmume/src/cocoa/cocoa_globals.h | 44 +- desmume/src/cocoa/cocoa_input.h | 21 +- desmume/src/cocoa/cocoa_slot2.h | 64 + desmume/src/cocoa/cocoa_slot2.mm | 407 ++ .../cocoa/images/Image_MemoryExpansionPak.png | Bin 0 -> 90443 bytes .../cocoa/images/Image_PaddleController.png | Bin 0 -> 257086 bytes desmume/src/cocoa/images/Image_PassME.png | Bin 0 -> 75254 bytes desmume/src/cocoa/images/Image_Piano.png | Bin 0 -> 1754 bytes .../English.lproj/MainMenu.strings | Bin 295904 -> 314118 bytes .../translations/English.lproj/MainMenu.xib | 5251 ++++++++++++++++- .../userinterface/EmuControllerDelegate.h | 4 +- .../userinterface/EmuControllerDelegate.mm | 26 +- .../src/cocoa/userinterface/InputManager.h | 38 +- .../src/cocoa/userinterface/InputManager.mm | 507 +- .../cocoa/userinterface/Slot2WindowDelegate.h | 136 + .../userinterface/Slot2WindowDelegate.mm | 722 +++ desmume/src/cocoa/userinterface/appDelegate.h | 6 +- .../src/cocoa/userinterface/appDelegate.mm | 26 +- .../src/cocoa/userinterface/inputPrefsView.h | 4 +- .../src/cocoa/userinterface/inputPrefsView.mm | 4 +- .../userinterface/preferencesWindowDelegate.h | 11 +- .../preferencesWindowDelegate.mm | 53 +- 27 files changed, 7255 insertions(+), 294 deletions(-) create mode 100644 desmume/src/cocoa/cocoa_slot2.h create mode 100644 desmume/src/cocoa/cocoa_slot2.mm create mode 100644 desmume/src/cocoa/images/Image_MemoryExpansionPak.png create mode 100644 desmume/src/cocoa/images/Image_PaddleController.png create mode 100644 desmume/src/cocoa/images/Image_PassME.png create mode 100644 desmume/src/cocoa/images/Image_Piano.png create mode 100644 desmume/src/cocoa/userinterface/Slot2WindowDelegate.h create mode 100644 desmume/src/cocoa/userinterface/Slot2WindowDelegate.mm diff --git a/desmume/src/cocoa/DeSmuME (XCode 3).xcodeproj/project.pbxproj b/desmume/src/cocoa/DeSmuME (XCode 3).xcodeproj/project.pbxproj index 69b945351..5289bc187 100644 --- a/desmume/src/cocoa/DeSmuME (XCode 3).xcodeproj/project.pbxproj +++ b/desmume/src/cocoa/DeSmuME (XCode 3).xcodeproj/project.pbxproj @@ -57,6 +57,11 @@ AB126D09182ECB9500EBCF22 /* slot2_passme.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB126D06182ECB9500EBCF22 /* slot2_passme.cpp */; }; AB126D0A182ECB9500EBCF22 /* slot2_passme.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB126D06182ECB9500EBCF22 /* slot2_passme.cpp */; }; AB126D0B182ECB9500EBCF22 /* slot2_passme.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AB126D06182ECB9500EBCF22 /* slot2_passme.cpp */; }; + AB142026186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */; }; + AB142027186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */; }; + AB142028186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */; }; + AB142029186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */; }; + AB14202A186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */; }; AB213D45170CB141006DDB0F /* InputProfileController.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB213D44170CB141006DDB0F /* InputProfileController.mm */; }; AB213D46170CB141006DDB0F /* InputProfileController.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB213D44170CB141006DDB0F /* InputProfileController.mm */; }; AB213D47170CB141006DDB0F /* InputProfileController.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB213D44170CB141006DDB0F /* InputProfileController.mm */; }; @@ -622,7 +627,6 @@ AB711F251481C35F009011C8 /* slot2_expMemory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF031345AC9B00AF11D1 /* slot2_expMemory.cpp */; }; AB711F261481C35F009011C8 /* slot2_gbagame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF041345AC9B00AF11D1 /* slot2_gbagame.cpp */; }; AB711F271481C35F009011C8 /* slot2_guitarGrip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF051345AC9B00AF11D1 /* slot2_guitarGrip.cpp */; }; - AB711F281481C35F009011C8 /* slot2_mpcf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF061345AC9B00AF11D1 /* slot2_mpcf.cpp */; }; AB711F291481C35F009011C8 /* slot2_none.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF071345AC9C00AF11D1 /* slot2_none.cpp */; }; AB711F2A1481C35F009011C8 /* slot2_paddle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF081345AC9C00AF11D1 /* slot2_paddle.cpp */; }; AB711F2B1481C35F009011C8 /* slot2_piano.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF091345AC9C00AF11D1 /* slot2_piano.cpp */; }; @@ -864,6 +868,18 @@ AB7DDA6E173DC399004F3D07 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABB6AD5C173A3F2B00EC2E8D /* Carbon.framework */; }; AB7DDA6F173DC39E004F3D07 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABB6AD5C173A3F2B00EC2E8D /* Carbon.framework */; }; AB7DDA70173DC3A3004F3D07 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABB6AD5C173A3F2B00EC2E8D /* Carbon.framework */; }; + AB8C6CBF186A950C00E3EC64 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */; }; + AB8C6CC0186A950C00E3EC64 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */; }; + AB8C6CC1186A950C00E3EC64 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */; }; + AB8C6CC2186A950C00E3EC64 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */; }; + AB8C6CC3186A950C00E3EC64 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */; }; + AB8C6E57186CD07E00E3EC64 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */; }; + AB8FFCB4186F8E5400C10085 /* slot2_mpcf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD1FF061345AC9B00AF11D1 /* slot2_mpcf.cpp */; }; + AB8FFE4A1872032B00C10085 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8FFE491872032B00C10085 /* Image_PaddleController.png */; }; + AB8FFE4B1872032B00C10085 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8FFE491872032B00C10085 /* Image_PaddleController.png */; }; + AB8FFE4C1872032B00C10085 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8FFE491872032B00C10085 /* Image_PaddleController.png */; }; + AB8FFE4D1872032B00C10085 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8FFE491872032B00C10085 /* Image_PaddleController.png */; }; + AB8FFE4E1872032B00C10085 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB8FFE491872032B00C10085 /* Image_PaddleController.png */; }; AB97C554169646D1002AC11B /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB97C553169646D1002AC11B /* Accelerate.framework */; }; AB97D5E516964F3B002AC11B /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB97C553169646D1002AC11B /* Accelerate.framework */; }; AB97D60916964F48002AC11B /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB97C553169646D1002AC11B /* Accelerate.framework */; }; @@ -1061,6 +1077,21 @@ ABAD104315ACE7A00000EC47 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB350BA41478AC96007165AC /* IOKit.framework */; }; ABAD104415ACE7A00000EC47 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABC570D4134431DA00E7B0B1 /* OpenGL.framework */; }; ABAD104515ACE7A00000EC47 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = AB0A0D1914AACA9600E83E91 /* libz.dylib */; }; + ABAE2F7B18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */; }; + ABAE2F7C18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */; }; + ABAE2F7D18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */; }; + ABAE2F7E18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */; }; + ABAE2F7F18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */; }; + ABAE2F8418682B8F00C92F4F /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */; }; + ABAE2F8518682B8F00C92F4F /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */; }; + ABAE2F8618682B8F00C92F4F /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */; }; + ABAE2F8718682B8F00C92F4F /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */; }; + ABAE2F8818682B8F00C92F4F /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */; }; + ABAE30BB1869484F00C92F4F /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABAE30BA1869484F00C92F4F /* Image_Piano.png */; }; + ABAE30BC1869484F00C92F4F /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABAE30BA1869484F00C92F4F /* Image_Piano.png */; }; + ABAE30BD1869484F00C92F4F /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABAE30BA1869484F00C92F4F /* Image_Piano.png */; }; + ABAE30BE1869484F00C92F4F /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABAE30BA1869484F00C92F4F /* Image_Piano.png */; }; + ABAE30BF1869484F00C92F4F /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABAE30BA1869484F00C92F4F /* Image_Piano.png */; }; ABB6AD5D173A3F2B00EC2E8D /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABB6AD5C173A3F2B00EC2E8D /* Carbon.framework */; }; ABB9212117CEB4110049D4C5 /* slot1comp_protocol.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABB9212017CEB4110049D4C5 /* slot1comp_protocol.cpp */; }; ABB9212217CEB4110049D4C5 /* slot1comp_protocol.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABB9212017CEB4110049D4C5 /* slot1comp_protocol.cpp */; }; @@ -1077,6 +1108,10 @@ ABC3AFCF14B8D16700D5B13D /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = AB0A0D1914AACA9600E83E91 /* libz.dylib */; }; ABD0A53A1501AA5A0074A094 /* coreaudiosound.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD0A5341501AA5A0074A094 /* coreaudiosound.cpp */; }; ABD0A53B1501AA5A0074A094 /* ringbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABD0A5351501AA5A0074A094 /* ringbuffer.cpp */; }; + ABEF84721873576300E99ADC /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */; }; + ABEF84831873578F00E99ADC /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */; }; + ABEF84841873579400E99ADC /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */; }; + ABEF84851873579700E99ADC /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */; }; ABF50ABA169F5FDA0018C08D /* assembler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABF50A7B169F5FDA0018C08D /* assembler.cpp */; }; ABF50ABB169F5FDA0018C08D /* assert.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABF50A7D169F5FDA0018C08D /* assert.cpp */; }; ABF50ABC169F5FDA0018C08D /* buffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ABF50A7F169F5FDA0018C08D /* buffer.cpp */; }; @@ -1201,6 +1236,7 @@ AB0F29A414BE7213009ABC6F /* Icon_ShowHUD_420x420.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Icon_ShowHUD_420x420.png; path = images/Icon_ShowHUD_420x420.png; sourceTree = ""; }; AB0F29A514BE7213009ABC6F /* Icon_Speaker_420x420.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Icon_Speaker_420x420.png; path = images/Icon_Speaker_420x420.png; sourceTree = ""; }; AB126D06182ECB9500EBCF22 /* slot2_passme.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = slot2_passme.cpp; sourceTree = ""; }; + AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_MemoryExpansionPak.png; path = images/Image_MemoryExpansionPak.png; sourceTree = ""; }; AB213D43170CB141006DDB0F /* InputProfileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InputProfileController.h; sourceTree = ""; }; AB213D44170CB141006DDB0F /* InputProfileController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InputProfileController.mm; sourceTree = ""; }; AB213E981710D074006DDB0F /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; @@ -1282,6 +1318,9 @@ AB80E050142BC4FA00A52038 /* cocoa_util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_util.h; sourceTree = ""; }; AB817A34143EE2DB00A7DFE9 /* videofilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = videofilter.h; sourceTree = ""; }; AB817A35143EE2DB00A7DFE9 /* videofilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = videofilter.cpp; sourceTree = ""; }; + AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_PassME.png; path = images/Image_PassME.png; sourceTree = ""; }; + AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ForceFeedback.framework; path = System/Library/Frameworks/ForceFeedback.framework; sourceTree = SDKROOT; }; + AB8FFE491872032B00C10085 /* Image_PaddleController.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_PaddleController.png; path = images/Image_PaddleController.png; sourceTree = ""; }; AB901BDF1420706B00348EEC /* Japanese */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; lineEnding = 0; name = Japanese; path = translations/Japanese.lproj/Localizable.strings; sourceTree = ""; }; AB901BE01420706F00348EEC /* French */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; lineEnding = 0; name = French; path = translations/French.lproj/Localizable.strings; sourceTree = ""; }; AB901BE11420707400348EEC /* Italian */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; lineEnding = 0; name = Italian; path = translations/Italian.lproj/Localizable.strings; sourceTree = ""; }; @@ -1299,6 +1338,11 @@ ABAAFBE8172122B6005DDDBE /* FileMigrationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileMigrationDelegate.h; sourceTree = ""; }; ABAAFBE9172122B6005DDDBE /* FileMigrationDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = FileMigrationDelegate.mm; sourceTree = ""; }; ABAD104915ACE7A00000EC47 /* DeSmuME (PPC).app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "DeSmuME (PPC).app"; sourceTree = BUILT_PRODUCTS_DIR; }; + ABAE2F7918682B6C00C92F4F /* Slot2WindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Slot2WindowDelegate.h; sourceTree = ""; }; + ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Slot2WindowDelegate.mm; sourceTree = ""; }; + ABAE2F8218682B8F00C92F4F /* cocoa_slot2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_slot2.h; sourceTree = ""; }; + ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cocoa_slot2.mm; sourceTree = ""; }; + ABAE30BA1869484F00C92F4F /* Image_Piano.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_Piano.png; path = images/Image_Piano.png; sourceTree = ""; }; ABB6AD5C173A3F2B00EC2E8D /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; ABB9211F17CEB4110049D4C5 /* slot1comp_protocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slot1comp_protocol.h; sourceTree = ""; }; ABB9212017CEB4110049D4C5 /* slot1comp_protocol.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = slot1comp_protocol.cpp; sourceTree = ""; }; @@ -1601,14 +1645,15 @@ files = ( AB2A9A6D1725F00F0062C1A1 /* Accelerate.framework in Frameworks */, AB2A9A6E1725F00F0062C1A1 /* AppKit.framework in Frameworks */, + AB2A9A751725F00F0062C1A1 /* AudioToolbox.framework in Frameworks */, AB2A9A6F1725F00F0062C1A1 /* AudioUnit.framework in Frameworks */, + ABB6AD5D173A3F2B00EC2E8D /* Carbon.framework in Frameworks */, AB2A9A701725F00F0062C1A1 /* Cocoa.framework in Frameworks */, AB2A9A711725F00F0062C1A1 /* Foundation.framework in Frameworks */, + ABEF84851873579700E99ADC /* ForceFeedback.framework in Frameworks */, AB2A9A721725F00F0062C1A1 /* IOKit.framework in Frameworks */, - AB2A9A731725F00F0062C1A1 /* OpenGL.framework in Frameworks */, AB2A9A741725F00F0062C1A1 /* libz.dylib in Frameworks */, - AB2A9A751725F00F0062C1A1 /* AudioToolbox.framework in Frameworks */, - ABB6AD5D173A3F2B00EC2E8D /* Carbon.framework in Frameworks */, + AB2A9A731725F00F0062C1A1 /* OpenGL.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1618,14 +1663,15 @@ files = ( AB97D60C16964F54002AC11B /* Accelerate.framework in Frameworks */, AB2F3C3B15CF9C6000858373 /* AppKit.framework in Frameworks */, + AB213EC41710D0A0006DDB0F /* AudioToolbox.framework in Frameworks */, AB2F3C3C15CF9C6000858373 /* AudioUnit.framework in Frameworks */, + AB7DDA70173DC3A3004F3D07 /* Carbon.framework in Frameworks */, AB2F3C3D15CF9C6000858373 /* Cocoa.framework in Frameworks */, AB2F3C3E15CF9C6000858373 /* Foundation.framework in Frameworks */, + ABEF84841873579400E99ADC /* ForceFeedback.framework in Frameworks */, AB2F3C3F15CF9C6000858373 /* IOKit.framework in Frameworks */, - AB2F3C4015CF9C6000858373 /* OpenGL.framework in Frameworks */, AB2F3C4115CF9C6000858373 /* libz.dylib in Frameworks */, - AB213EC41710D0A0006DDB0F /* AudioToolbox.framework in Frameworks */, - AB7DDA70173DC3A3004F3D07 /* Carbon.framework in Frameworks */, + AB2F3C4015CF9C6000858373 /* OpenGL.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1635,14 +1681,15 @@ files = ( AB97C554169646D1002AC11B /* Accelerate.framework in Frameworks */, AB711F771481C35F009011C8 /* AppKit.framework in Frameworks */, + AB213E991710D074006DDB0F /* AudioToolbox.framework in Frameworks */, AB711F751481C35F009011C8 /* AudioUnit.framework in Frameworks */, + AB7DDA6D173DC38F004F3D07 /* Carbon.framework in Frameworks */, AB711F741481C35F009011C8 /* Cocoa.framework in Frameworks */, + AB8C6E57186CD07E00E3EC64 /* ForceFeedback.framework in Frameworks */, AB711F781481C35F009011C8 /* Foundation.framework in Frameworks */, AB711F7B1481C35F009011C8 /* IOKit.framework in Frameworks */, - AB711F761481C35F009011C8 /* OpenGL.framework in Frameworks */, ABC3AFCF14B8D16700D5B13D /* libz.dylib in Frameworks */, - AB213E991710D074006DDB0F /* AudioToolbox.framework in Frameworks */, - AB7DDA6D173DC38F004F3D07 /* Carbon.framework in Frameworks */, + AB711F761481C35F009011C8 /* OpenGL.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1652,14 +1699,15 @@ files = ( AB97D5E516964F3B002AC11B /* Accelerate.framework in Frameworks */, AB73AA291507C9F500A310C8 /* AppKit.framework in Frameworks */, + AB213EC61710D0A1006DDB0F /* AudioToolbox.framework in Frameworks */, AB73AA2A1507C9F500A310C8 /* AudioUnit.framework in Frameworks */, + AB7DDA6E173DC399004F3D07 /* Carbon.framework in Frameworks */, AB73AA2B1507C9F500A310C8 /* Cocoa.framework in Frameworks */, + ABEF84721873576300E99ADC /* ForceFeedback.framework in Frameworks */, AB73AA2C1507C9F500A310C8 /* Foundation.framework in Frameworks */, AB73AA2D1507C9F500A310C8 /* IOKit.framework in Frameworks */, - AB73AA2E1507C9F500A310C8 /* OpenGL.framework in Frameworks */, AB73AA2F1507C9F500A310C8 /* libz.dylib in Frameworks */, - AB213EC61710D0A1006DDB0F /* AudioToolbox.framework in Frameworks */, - AB7DDA6E173DC399004F3D07 /* Carbon.framework in Frameworks */, + AB73AA2E1507C9F500A310C8 /* OpenGL.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1669,14 +1717,15 @@ files = ( AB97D60916964F48002AC11B /* Accelerate.framework in Frameworks */, ABAD103F15ACE7A00000EC47 /* AppKit.framework in Frameworks */, + AB213EC51710D0A1006DDB0F /* AudioToolbox.framework in Frameworks */, ABAD104015ACE7A00000EC47 /* AudioUnit.framework in Frameworks */, + AB7DDA6F173DC39E004F3D07 /* Carbon.framework in Frameworks */, ABAD104115ACE7A00000EC47 /* Cocoa.framework in Frameworks */, ABAD104215ACE7A00000EC47 /* Foundation.framework in Frameworks */, + ABEF84831873578F00E99ADC /* ForceFeedback.framework in Frameworks */, ABAD104315ACE7A00000EC47 /* IOKit.framework in Frameworks */, - ABAD104415ACE7A00000EC47 /* OpenGL.framework in Frameworks */, ABAD104515ACE7A00000EC47 /* libz.dylib in Frameworks */, - AB213EC51710D0A1006DDB0F /* AudioToolbox.framework in Frameworks */, - AB7DDA6F173DC39E004F3D07 /* Carbon.framework in Frameworks */, + ABAD104415ACE7A00000EC47 /* OpenGL.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1703,6 +1752,7 @@ ABD103FF1346652500AF11D1 /* cocoa_input.h */, AB3E34C7134AF4500056477A /* cocoa_output.h */, ABD104001346652500AF11D1 /* cocoa_rom.h */, + ABAE2F8218682B8F00C92F4F /* cocoa_slot2.h */, AB80E050142BC4FA00A52038 /* cocoa_util.h */, ABE5DFE3143FB1DA00835AD8 /* cocoa_videofilter.h */, ABD0A5361501AA5A0074A094 /* coreaudiosound.h */, @@ -1718,6 +1768,7 @@ ABD104111346652500AF11D1 /* cocoa_input.mm */, AB3E34C8134AF4500056477A /* cocoa_output.mm */, ABD104131346652500AF11D1 /* cocoa_rom.mm */, + ABAE2F8318682B8F00C92F4F /* cocoa_slot2.mm */, AB80E04C142BC4A800A52038 /* cocoa_util.mm */, ABE5DFE4143FB1DA00835AD8 /* cocoa_videofilter.mm */, ); @@ -1733,6 +1784,7 @@ ABC570D0134431CE00E7B0B1 /* AudioUnit.framework */, ABB6AD5C173A3F2B00EC2E8D /* Carbon.framework */, 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + AB8C6E56186CD07E00E3EC64 /* ForceFeedback.framework */, 29B97325FDCFA39411CA2CEA /* Foundation.framework */, AB350BA41478AC96007165AC /* IOKit.framework */, ABC570D4134431DA00E7B0B1 /* OpenGL.framework */, @@ -1827,6 +1879,7 @@ AB3ACB6E14C2361100D7D192 /* inputPrefsView.h */, AB213D43170CB141006DDB0F /* InputProfileController.h */, AB3ACB7014C2361100D7D192 /* preferencesWindowDelegate.h */, + ABAE2F7918682B6C00C92F4F /* Slot2WindowDelegate.h */, ABA0356E169127BB00817C69 /* troubleshootingWindowDelegate.h */, AB3ACB6714C2361100D7D192 /* appDelegate.mm */, AB3ACB6914C2361100D7D192 /* cheatWindowDelegate.mm */, @@ -1837,6 +1890,7 @@ AB3ACB6F14C2361100D7D192 /* inputPrefsView.mm */, AB213D44170CB141006DDB0F /* InputProfileController.mm */, AB3ACB7114C2361100D7D192 /* preferencesWindowDelegate.mm */, + ABAE2F7A18682B6C00C92F4F /* Slot2WindowDelegate.mm */, ABA0356F169127C000817C69 /* troubleshootingWindowDelegate.mm */, ); path = userinterface; @@ -1923,6 +1977,10 @@ ABC3AF2C14B7F06900D5B13D /* Icon_VolumeMute_16x16.png */, ABC3AF2D14B7F06900D5B13D /* Icon_VolumeOneThird_16x16.png */, ABC3AF2E14B7F06900D5B13D /* Icon_VolumeTwoThird_16x16.png */, + AB142025186E2CD80015D52F /* Image_MemoryExpansionPak.png */, + AB8FFE491872032B00C10085 /* Image_PaddleController.png */, + AB8C6CBE186A950C00E3EC64 /* Image_PassME.png */, + ABAE30BA1869484F00C92F4F /* Image_Piano.png */, AB0F297914BE70BC009ABC6F /* VideoFilterPreview_64x64.png */, ); name = Images; @@ -2535,6 +2593,10 @@ AB2A99EC1725F00F0062C1A1 /* README.MAC in Resources */, AB2A99ED1725F00F0062C1A1 /* AppIcon_FirmwareConfig.icns in Resources */, AB2A99EE1725F00F0062C1A1 /* DisplayWindow.xib in Resources */, + ABAE30BF1869484F00C92F4F /* Image_Piano.png in Resources */, + AB8C6CC3186A950C00E3EC64 /* Image_PassME.png in Resources */, + AB14202A186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */, + AB8FFE4E1872032B00C10085 /* Image_PaddleController.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2614,6 +2676,10 @@ AB2F3BC215CF9C6000858373 /* README.MAC in Resources */, AB2F3BC315CF9C6000858373 /* AppIcon_FirmwareConfig.icns in Resources */, AB700DBA16CDDBC400FBD336 /* DisplayWindow.xib in Resources */, + ABAE30BB1869484F00C92F4F /* Image_Piano.png in Resources */, + AB8C6CBF186A950C00E3EC64 /* Image_PassME.png in Resources */, + AB142026186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */, + AB8FFE4A1872032B00C10085 /* Image_PaddleController.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2693,6 +2759,10 @@ AB3ACC4914C24D5400D7D192 /* README.MAC in Resources */, AB75226F14C7BB51009B97B3 /* AppIcon_FirmwareConfig.icns in Resources */, AB700DBB16CDDBC400FBD336 /* DisplayWindow.xib in Resources */, + ABAE30BC1869484F00C92F4F /* Image_Piano.png in Resources */, + AB8C6CC0186A950C00E3EC64 /* Image_PassME.png in Resources */, + AB142027186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */, + AB8FFE4B1872032B00C10085 /* Image_PaddleController.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2772,6 +2842,10 @@ AB73A9B01507C9F500A310C8 /* README.MAC in Resources */, AB73A9B11507C9F500A310C8 /* AppIcon_FirmwareConfig.icns in Resources */, AB700DBD16CDDBC400FBD336 /* DisplayWindow.xib in Resources */, + ABAE30BE1869484F00C92F4F /* Image_Piano.png in Resources */, + AB8C6CC2186A950C00E3EC64 /* Image_PassME.png in Resources */, + AB142029186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */, + AB8FFE4D1872032B00C10085 /* Image_PaddleController.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2851,6 +2925,10 @@ ABAD0FB815ACE7A00000EC47 /* README.MAC in Resources */, ABAD0FB915ACE7A00000EC47 /* AppIcon_FirmwareConfig.icns in Resources */, AB700DBC16CDDBC400FBD336 /* DisplayWindow.xib in Resources */, + ABAE30BD1869484F00C92F4F /* Image_Piano.png in Resources */, + AB8C6CC1186A950C00E3EC64 /* Image_PassME.png in Resources */, + AB142028186E2CD80015D52F /* Image_MemoryExpansionPak.png in Resources */, + AB8FFE4C1872032B00C10085 /* Image_PaddleController.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3142,6 +3220,8 @@ AB126D0B182ECB9500EBCF22 /* slot2_passme.cpp in Sources */, AB53518318313E3100CCD532 /* slot2_auto.cpp in Sources */, AB53518A18313E4E00CCD532 /* slot2.cpp in Sources */, + ABAE2F7F18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */, + ABAE2F8818682B8F00C92F4F /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3282,6 +3362,8 @@ AB126D08182ECB9500EBCF22 /* slot2_passme.cpp in Sources */, AB53518018313E3100CCD532 /* slot2_auto.cpp in Sources */, AB53518718313E4E00CCD532 /* slot2.cpp in Sources */, + ABAE2F7B18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */, + ABAE2F8418682B8F00C92F4F /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3346,7 +3428,6 @@ AB711F251481C35F009011C8 /* slot2_expMemory.cpp in Sources */, AB711F261481C35F009011C8 /* slot2_gbagame.cpp in Sources */, AB711F271481C35F009011C8 /* slot2_guitarGrip.cpp in Sources */, - AB711F281481C35F009011C8 /* slot2_mpcf.cpp in Sources */, AB711F291481C35F009011C8 /* slot2_none.cpp in Sources */, AB711F2A1481C35F009011C8 /* slot2_paddle.cpp in Sources */, AB711F2B1481C35F009011C8 /* slot2_piano.cpp in Sources */, @@ -3452,6 +3533,9 @@ AB126D07182ECB9500EBCF22 /* slot2_passme.cpp in Sources */, AB53517F18313E3100CCD532 /* slot2_auto.cpp in Sources */, AB53518618313E4E00CCD532 /* slot2.cpp in Sources */, + ABAE2F7C18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */, + ABAE2F8518682B8F00C92F4F /* cocoa_slot2.mm in Sources */, + AB8FFCB4186F8E5400C10085 /* slot2_mpcf.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3622,6 +3706,8 @@ AB126D0A182ECB9500EBCF22 /* slot2_passme.cpp in Sources */, AB53518218313E3100CCD532 /* slot2_auto.cpp in Sources */, AB53518918313E4E00CCD532 /* slot2.cpp in Sources */, + ABAE2F7E18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */, + ABAE2F8718682B8F00C92F4F /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3762,6 +3848,8 @@ AB126D09182ECB9500EBCF22 /* slot2_passme.cpp in Sources */, AB53518118313E3100CCD532 /* slot2_auto.cpp in Sources */, AB53518818313E4E00CCD532 /* slot2.cpp in Sources */, + ABAE2F7D18682B6C00C92F4F /* Slot2WindowDelegate.mm in Sources */, + ABAE2F8618682B8F00C92F4F /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/desmume/src/cocoa/DeSmuME (XCode 4).xcodeproj/project.pbxproj b/desmume/src/cocoa/DeSmuME (XCode 4).xcodeproj/project.pbxproj index 96096dd27..7fc1402f2 100644 --- a/desmume/src/cocoa/DeSmuME (XCode 4).xcodeproj/project.pbxproj +++ b/desmume/src/cocoa/DeSmuME (XCode 4).xcodeproj/project.pbxproj @@ -541,6 +541,21 @@ ABC5720D1344346600E7B0B1 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97324FDCFA39411CA2CEA /* AppKit.framework */; }; ABC572101344347000E7B0B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97325FDCFA39411CA2CEA /* Foundation.framework */; }; ABC719E2138CB25E002827A9 /* DefaultKeyMappings.plist in Resources */ = {isa = PBXBuildFile; fileRef = ABC719E1138CB25E002827A9 /* DefaultKeyMappings.plist */; }; + ABC9ED16187501FD001A7D02 /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABC9ED15187501FD001A7D02 /* Slot2WindowDelegate.mm */; }; + ABC9ED17187501FD001A7D02 /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABC9ED15187501FD001A7D02 /* Slot2WindowDelegate.mm */; }; + ABC9ED1C18750221001A7D02 /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1818750221001A7D02 /* Image_MemoryExpansionPak.png */; }; + ABC9ED1D18750221001A7D02 /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1818750221001A7D02 /* Image_MemoryExpansionPak.png */; }; + ABC9ED1E18750221001A7D02 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1918750221001A7D02 /* Image_PaddleController.png */; }; + ABC9ED1F18750221001A7D02 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1918750221001A7D02 /* Image_PaddleController.png */; }; + ABC9ED2018750221001A7D02 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1A18750221001A7D02 /* Image_PassME.png */; }; + ABC9ED2118750221001A7D02 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1A18750221001A7D02 /* Image_PassME.png */; }; + ABC9ED2218750221001A7D02 /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1B18750221001A7D02 /* Image_Piano.png */; }; + ABC9ED2318750221001A7D02 /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = ABC9ED1B18750221001A7D02 /* Image_Piano.png */; }; + ABC9ED2618750244001A7D02 /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABC9ED2518750244001A7D02 /* cocoa_slot2.mm */; }; + ABC9ED2718750244001A7D02 /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABC9ED2518750244001A7D02 /* cocoa_slot2.mm */; }; + ABC9ED2818750244001A7D02 /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABC9ED2518750244001A7D02 /* cocoa_slot2.mm */; }; + ABC9ED2A1875028E001A7D02 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABC9ED291875028E001A7D02 /* ForceFeedback.framework */; }; + ABC9ED2B187502A2001A7D02 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ABC9ED291875028E001A7D02 /* ForceFeedback.framework */; }; ABD1041C1346652500AF11D1 /* cocoa_input.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD104111346652500AF11D1 /* cocoa_input.mm */; }; ABD1041D1346652500AF11D1 /* cocoa_core.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD104121346652500AF11D1 /* cocoa_core.mm */; }; ABD1041E1346652500AF11D1 /* cocoa_rom.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD104131346652500AF11D1 /* cocoa_rom.mm */; }; @@ -904,6 +919,15 @@ ABC570D0134431CE00E7B0B1 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = System/Library/Frameworks/AudioUnit.framework; sourceTree = SDKROOT; }; ABC570D4134431DA00E7B0B1 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; ABC719E1138CB25E002827A9 /* DefaultKeyMappings.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = DefaultKeyMappings.plist; sourceTree = ""; }; + ABC9ED14187501FD001A7D02 /* Slot2WindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Slot2WindowDelegate.h; sourceTree = ""; }; + ABC9ED15187501FD001A7D02 /* Slot2WindowDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Slot2WindowDelegate.mm; sourceTree = ""; }; + ABC9ED1818750221001A7D02 /* Image_MemoryExpansionPak.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_MemoryExpansionPak.png; path = images/Image_MemoryExpansionPak.png; sourceTree = ""; }; + ABC9ED1918750221001A7D02 /* Image_PaddleController.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_PaddleController.png; path = images/Image_PaddleController.png; sourceTree = ""; }; + ABC9ED1A18750221001A7D02 /* Image_PassME.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_PassME.png; path = images/Image_PassME.png; sourceTree = ""; }; + ABC9ED1B18750221001A7D02 /* Image_Piano.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_Piano.png; path = images/Image_Piano.png; sourceTree = ""; }; + ABC9ED2418750244001A7D02 /* cocoa_slot2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_slot2.h; sourceTree = ""; }; + ABC9ED2518750244001A7D02 /* cocoa_slot2.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cocoa_slot2.mm; sourceTree = ""; }; + ABC9ED291875028E001A7D02 /* ForceFeedback.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ForceFeedback.framework; path = System/Library/Frameworks/ForceFeedback.framework; sourceTree = SDKROOT; }; ABD103FE1346652500AF11D1 /* cocoa_core.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_core.h; sourceTree = ""; }; ABD103FF1346652500AF11D1 /* cocoa_input.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_input.h; sourceTree = ""; }; ABD104001346652500AF11D1 /* cocoa_rom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_rom.h; sourceTree = ""; }; @@ -1135,12 +1159,13 @@ ABC5720D1344346600E7B0B1 /* AppKit.framework in Frameworks */, ABACB8DD1710B656003B845D /* AudioToolbox.framework in Frameworks */, ABC570D1134431CE00E7B0B1 /* AudioUnit.framework in Frameworks */, + AB3701E5173A3FBF006E573E /* Carbon.framework in Frameworks */, 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, ABC572101344347000E7B0B1 /* Foundation.framework in Frameworks */, + ABC9ED2B187502A2001A7D02 /* ForceFeedback.framework in Frameworks */, AB350BA51478AC96007165AC /* IOKit.framework in Frameworks */, ABC570D5134431DA00E7B0B1 /* OpenGL.framework in Frameworks */, AB4676F314AB12D60002FF94 /* libz.dylib in Frameworks */, - AB3701E5173A3FBF006E573E /* Carbon.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1154,6 +1179,7 @@ AB796D6715CDCBA200C59155 /* AudioUnit.framework in Frameworks */, AB74EC8A1738499C0026C41E /* Carbon.framework in Frameworks */, AB796D6815CDCBA200C59155 /* Cocoa.framework in Frameworks */, + ABC9ED2A1875028E001A7D02 /* ForceFeedback.framework in Frameworks */, AB796D6915CDCBA200C59155 /* Foundation.framework in Frameworks */, AB796D6A15CDCBA200C59155 /* IOKit.framework in Frameworks */, AB796D6B15CDCBA200C59155 /* OpenGL.framework in Frameworks */, @@ -1202,6 +1228,7 @@ ABD103FF1346652500AF11D1 /* cocoa_input.h */, AB3E34C7134AF4500056477A /* cocoa_output.h */, ABD104001346652500AF11D1 /* cocoa_rom.h */, + ABC9ED2418750244001A7D02 /* cocoa_slot2.h */, AB80E050142BC4FA00A52038 /* cocoa_util.h */, ABE5DFE3143FB1DA00835AD8 /* cocoa_videofilter.h */, AB1B9E611501A78000464647 /* coreaudiosound.h */, @@ -1217,6 +1244,7 @@ ABD104111346652500AF11D1 /* cocoa_input.mm */, AB3E34C8134AF4500056477A /* cocoa_output.mm */, ABD104131346652500AF11D1 /* cocoa_rom.mm */, + ABC9ED2518750244001A7D02 /* cocoa_slot2.mm */, AB80E04C142BC4A800A52038 /* cocoa_util.mm */, ABE5DFE4143FB1DA00835AD8 /* cocoa_videofilter.mm */, ); @@ -1232,6 +1260,7 @@ ABC570D0134431CE00E7B0B1 /* AudioUnit.framework */, AB74EC891738499C0026C41E /* Carbon.framework */, 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ABC9ED291875028E001A7D02 /* ForceFeedback.framework */, 29B97325FDCFA39411CA2CEA /* Foundation.framework */, AB350BA41478AC96007165AC /* IOKit.framework */, ABC570D4134431DA00E7B0B1 /* OpenGL.framework */, @@ -1325,6 +1354,7 @@ AB3ACB6E14C2361100D7D192 /* inputPrefsView.h */, AB01005C170D07AF00D70FBE /* InputProfileController.h */, AB3ACB7014C2361100D7D192 /* preferencesWindowDelegate.h */, + ABC9ED14187501FD001A7D02 /* Slot2WindowDelegate.h */, ABF2B9F81690412A000FF7C0 /* troubleshootingWindowDelegate.h */, AB3ACB6714C2361100D7D192 /* appDelegate.mm */, AB3ACB6914C2361100D7D192 /* cheatWindowDelegate.mm */, @@ -1335,6 +1365,7 @@ AB3ACB6F14C2361100D7D192 /* inputPrefsView.mm */, AB01005D170D07B000D70FBE /* InputProfileController.mm */, AB3ACB7114C2361100D7D192 /* preferencesWindowDelegate.mm */, + ABC9ED15187501FD001A7D02 /* Slot2WindowDelegate.mm */, ABF2B9FA16904133000FF7C0 /* troubleshootingWindowDelegate.mm */, ); path = userinterface; @@ -1513,6 +1544,10 @@ ABC3AF2C14B7F06900D5B13D /* Icon_VolumeMute_16x16.png */, ABC3AF2D14B7F06900D5B13D /* Icon_VolumeOneThird_16x16.png */, ABC3AF2E14B7F06900D5B13D /* Icon_VolumeTwoThird_16x16.png */, + ABC9ED1818750221001A7D02 /* Image_MemoryExpansionPak.png */, + ABC9ED1918750221001A7D02 /* Image_PaddleController.png */, + ABC9ED1A18750221001A7D02 /* Image_PassME.png */, + ABC9ED1B18750221001A7D02 /* Image_Piano.png */, AB0F297914BE70BC009ABC6F /* VideoFilterPreview_64x64.png */, ); name = Images; @@ -2008,6 +2043,10 @@ AB3ACC4314C24D5400D7D192 /* README.MAC in Resources */, AB75226E14C7BB51009B97B3 /* AppIcon_FirmwareConfig.icns in Resources */, AB8967DE16D2ED2700F826F1 /* DisplayWindow.xib in Resources */, + ABC9ED1D18750221001A7D02 /* Image_MemoryExpansionPak.png in Resources */, + ABC9ED1F18750221001A7D02 /* Image_PaddleController.png in Resources */, + ABC9ED2118750221001A7D02 /* Image_PassME.png in Resources */, + ABC9ED2318750221001A7D02 /* Image_Piano.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2087,6 +2126,10 @@ AB796CEC15CDCBA200C59155 /* README.MAC in Resources */, AB796CED15CDCBA200C59155 /* AppIcon_FirmwareConfig.icns in Resources */, AB8967DD16D2ED2700F826F1 /* DisplayWindow.xib in Resources */, + ABC9ED1C18750221001A7D02 /* Image_MemoryExpansionPak.png in Resources */, + ABC9ED1E18750221001A7D02 /* Image_PaddleController.png in Resources */, + ABC9ED2018750221001A7D02 /* Image_PassME.png in Resources */, + ABC9ED2218750221001A7D02 /* Image_Piano.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2359,6 +2402,8 @@ AB107686182ECB29000D6F67 /* slot2_passme.cpp in Sources */, AB1B702D18313D7700E64141 /* slot2_auto.cpp in Sources */, AB1B703118313D9000E64141 /* slot2.cpp in Sources */, + ABC9ED17187501FD001A7D02 /* Slot2WindowDelegate.mm in Sources */, + ABC9ED2718750244001A7D02 /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2530,6 +2575,8 @@ AB107685182ECB29000D6F67 /* slot2_passme.cpp in Sources */, AB1B702C18313D7700E64141 /* slot2_auto.cpp in Sources */, AB1B703018313D9000E64141 /* slot2.cpp in Sources */, + ABC9ED16187501FD001A7D02 /* Slot2WindowDelegate.mm in Sources */, + ABC9ED2618750244001A7D02 /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2691,6 +2738,7 @@ AB1B702E18313D7700E64141 /* slot2_auto.cpp in Sources */, AB1B703218313D9000E64141 /* slot2.cpp in Sources */, AB4806BC18472EF20085F59B /* cocoa_cheat.mm in Sources */, + ABC9ED2818750244001A7D02 /* cocoa_slot2.mm in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/desmume/src/cocoa/DeSmuME (Xcode 5).xcodeproj/project.pbxproj b/desmume/src/cocoa/DeSmuME (Xcode 5).xcodeproj/project.pbxproj index a451b99a2..a40fb8db8 100644 --- a/desmume/src/cocoa/DeSmuME (Xcode 5).xcodeproj/project.pbxproj +++ b/desmume/src/cocoa/DeSmuME (Xcode 5).xcodeproj/project.pbxproj @@ -8,6 +8,8 @@ /* Begin PBXBuildFile section */ 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; + AB0038A71872A96700B0B055 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB0038A61872A96700B0B055 /* Image_PaddleController.png */; }; + AB0038A81872A96700B0B055 /* Image_PaddleController.png in Resources */ = {isa = PBXBuildFile; fileRef = AB0038A61872A96700B0B055 /* Image_PaddleController.png */; }; AB00E87B14205EAE00DE561F /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = AB00E87914205EAE00DE561F /* InfoPlist.strings */; }; AB00E87E14205EBC00DE561F /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = AB00E87C14205EBC00DE561F /* MainMenu.xib */; }; AB01005E170D07B000D70FBE /* InputProfileController.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB01005D170D07B000D70FBE /* InputProfileController.mm */; }; @@ -197,6 +199,19 @@ AB4FCEBD1692AB82000F498F /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB4FCEBC1692AB82000F498F /* Accelerate.framework */; }; AB4FCEBE1692AB82000F498F /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB4FCEBC1692AB82000F498F /* Accelerate.framework */; }; AB4FCEBF1692AB82000F498F /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB4FCEBC1692AB82000F498F /* Accelerate.framework */; }; + AB5648FF186E6EA8002740F4 /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB5648FE186E6EA8002740F4 /* cocoa_slot2.mm */; }; + AB564900186E6EA8002740F4 /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB5648FE186E6EA8002740F4 /* cocoa_slot2.mm */; }; + AB564901186E6EA8002740F4 /* cocoa_slot2.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB5648FE186E6EA8002740F4 /* cocoa_slot2.mm */; }; + AB564904186E6EBC002740F4 /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB564903186E6EBC002740F4 /* Slot2WindowDelegate.mm */; }; + AB564905186E6EBC002740F4 /* Slot2WindowDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB564903186E6EBC002740F4 /* Slot2WindowDelegate.mm */; }; + AB564907186E6F0C002740F4 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB564906186E6F0C002740F4 /* ForceFeedback.framework */; }; + AB564908186E6F1F002740F4 /* ForceFeedback.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB564906186E6F0C002740F4 /* ForceFeedback.framework */; }; + AB564910186E6F67002740F4 /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB564909186E6F67002740F4 /* Image_MemoryExpansionPak.png */; }; + AB564911186E6F67002740F4 /* Image_MemoryExpansionPak.png in Resources */ = {isa = PBXBuildFile; fileRef = AB564909186E6F67002740F4 /* Image_MemoryExpansionPak.png */; }; + AB564912186E6F67002740F4 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB56490A186E6F67002740F4 /* Image_PassME.png */; }; + AB564913186E6F67002740F4 /* Image_PassME.png in Resources */ = {isa = PBXBuildFile; fileRef = AB56490A186E6F67002740F4 /* Image_PassME.png */; }; + AB564914186E6F67002740F4 /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = AB56490B186E6F67002740F4 /* Image_Piano.png */; }; + AB564915186E6F67002740F4 /* Image_Piano.png in Resources */ = {isa = PBXBuildFile; fileRef = AB56490B186E6F67002740F4 /* Image_Piano.png */; }; AB5785F817175F16002C5FC7 /* cocoa_core.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABD104121346652500AF11D1 /* cocoa_core.mm */; }; AB5785F9171760D2002C5FC7 /* cocoa_output.mm in Sources */ = {isa = PBXBuildFile; fileRef = AB3E34C8134AF4500056477A /* cocoa_output.mm */; }; AB5785FD17176AFC002C5FC7 /* OpenEmuBase.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AB5785FC17176AFC002C5FC7 /* OpenEmuBase.framework */; }; @@ -673,6 +688,7 @@ 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 8D1107320486CEB800E47090 /* DeSmuME (Debug).app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "DeSmuME (Debug).app"; sourceTree = BUILT_PRODUCTS_DIR; }; + AB0038A61872A96700B0B055 /* Image_PaddleController.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_PaddleController.png; path = images/Image_PaddleController.png; sourceTree = ""; }; AB00E87A14205EAE00DE561F /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = translations/English.lproj/InfoPlist.strings; sourceTree = ""; }; AB00E87D14205EBC00DE561F /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = translations/English.lproj/MainMenu.xib; sourceTree = ""; }; AB00E89114205ECC00DE561F /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; lineEnding = 0; name = English; path = translations/English.lproj/Localizable.strings; sourceTree = ""; }; @@ -830,6 +846,14 @@ AB405676169F5DCC0016AC3E /* x86util.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = x86util.cpp; sourceTree = ""; }; AB405677169F5DCC0016AC3E /* x86util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = x86util.h; sourceTree = ""; }; AB4FCEBC1692AB82000F498F /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; + AB5648FD186E6EA8002740F4 /* cocoa_slot2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_slot2.h; sourceTree = ""; }; + AB5648FE186E6EA8002740F4 /* cocoa_slot2.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cocoa_slot2.mm; sourceTree = ""; }; + AB564902186E6EBC002740F4 /* Slot2WindowDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Slot2WindowDelegate.h; sourceTree = ""; }; + AB564903186E6EBC002740F4 /* Slot2WindowDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = Slot2WindowDelegate.mm; sourceTree = ""; }; + AB564906186E6F0C002740F4 /* ForceFeedback.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ForceFeedback.framework; path = System/Library/Frameworks/ForceFeedback.framework; sourceTree = SDKROOT; }; + AB564909186E6F67002740F4 /* Image_MemoryExpansionPak.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_MemoryExpansionPak.png; path = images/Image_MemoryExpansionPak.png; sourceTree = ""; }; + AB56490A186E6F67002740F4 /* Image_PassME.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_PassME.png; path = images/Image_PassME.png; sourceTree = ""; }; + AB56490B186E6F67002740F4 /* Image_Piano.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = Image_Piano.png; path = images/Image_Piano.png; sourceTree = ""; }; AB5785FC17176AFC002C5FC7 /* OpenEmuBase.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenEmuBase.framework; path = openemu/OpenEmuBase.framework; sourceTree = ""; }; AB58F32B1364F44B0074C376 /* cocoa_file.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoa_file.h; sourceTree = ""; }; AB58F32C1364F44B0074C376 /* cocoa_file.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = cocoa_file.mm; sourceTree = ""; }; @@ -1135,12 +1159,13 @@ ABC5720D1344346600E7B0B1 /* AppKit.framework in Frameworks */, ABACB8DD1710B656003B845D /* AudioToolbox.framework in Frameworks */, ABC570D1134431CE00E7B0B1 /* AudioUnit.framework in Frameworks */, + AB3701E5173A3FBF006E573E /* Carbon.framework in Frameworks */, 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + AB564908186E6F1F002740F4 /* ForceFeedback.framework in Frameworks */, ABC572101344347000E7B0B1 /* Foundation.framework in Frameworks */, AB350BA51478AC96007165AC /* IOKit.framework in Frameworks */, ABC570D5134431DA00E7B0B1 /* OpenGL.framework in Frameworks */, AB4676F314AB12D60002FF94 /* libz.dylib in Frameworks */, - AB3701E5173A3FBF006E573E /* Carbon.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1154,6 +1179,7 @@ AB796D6715CDCBA200C59155 /* AudioUnit.framework in Frameworks */, AB74EC8A1738499C0026C41E /* Carbon.framework in Frameworks */, AB796D6815CDCBA200C59155 /* Cocoa.framework in Frameworks */, + AB564907186E6F0C002740F4 /* ForceFeedback.framework in Frameworks */, AB796D6915CDCBA200C59155 /* Foundation.framework in Frameworks */, AB796D6A15CDCBA200C59155 /* IOKit.framework in Frameworks */, AB796D6B15CDCBA200C59155 /* OpenGL.framework in Frameworks */, @@ -1202,6 +1228,7 @@ ABD103FF1346652500AF11D1 /* cocoa_input.h */, AB3E34C7134AF4500056477A /* cocoa_output.h */, ABD104001346652500AF11D1 /* cocoa_rom.h */, + AB5648FD186E6EA8002740F4 /* cocoa_slot2.h */, AB80E050142BC4FA00A52038 /* cocoa_util.h */, ABE5DFE3143FB1DA00835AD8 /* cocoa_videofilter.h */, AB1B9E611501A78000464647 /* coreaudiosound.h */, @@ -1217,6 +1244,7 @@ ABD104111346652500AF11D1 /* cocoa_input.mm */, AB3E34C8134AF4500056477A /* cocoa_output.mm */, ABD104131346652500AF11D1 /* cocoa_rom.mm */, + AB5648FE186E6EA8002740F4 /* cocoa_slot2.mm */, AB80E04C142BC4A800A52038 /* cocoa_util.mm */, ABE5DFE4143FB1DA00835AD8 /* cocoa_videofilter.mm */, ); @@ -1232,6 +1260,7 @@ ABC570D0134431CE00E7B0B1 /* AudioUnit.framework */, AB74EC891738499C0026C41E /* Carbon.framework */, 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + AB564906186E6F0C002740F4 /* ForceFeedback.framework */, 29B97325FDCFA39411CA2CEA /* Foundation.framework */, AB350BA41478AC96007165AC /* IOKit.framework */, ABC570D4134431DA00E7B0B1 /* OpenGL.framework */, @@ -1325,6 +1354,7 @@ AB3ACB6E14C2361100D7D192 /* inputPrefsView.h */, AB01005C170D07AF00D70FBE /* InputProfileController.h */, AB3ACB7014C2361100D7D192 /* preferencesWindowDelegate.h */, + AB564902186E6EBC002740F4 /* Slot2WindowDelegate.h */, ABF2B9F81690412A000FF7C0 /* troubleshootingWindowDelegate.h */, AB3ACB6714C2361100D7D192 /* appDelegate.mm */, AB3ACB6914C2361100D7D192 /* cheatWindowDelegate.mm */, @@ -1335,6 +1365,7 @@ AB3ACB6F14C2361100D7D192 /* inputPrefsView.mm */, AB01005D170D07B000D70FBE /* InputProfileController.mm */, AB3ACB7114C2361100D7D192 /* preferencesWindowDelegate.mm */, + AB564903186E6EBC002740F4 /* Slot2WindowDelegate.mm */, ABF2B9FA16904133000FF7C0 /* troubleshootingWindowDelegate.mm */, ); path = userinterface; @@ -1513,6 +1544,10 @@ ABC3AF2C14B7F06900D5B13D /* Icon_VolumeMute_16x16.png */, ABC3AF2D14B7F06900D5B13D /* Icon_VolumeOneThird_16x16.png */, ABC3AF2E14B7F06900D5B13D /* Icon_VolumeTwoThird_16x16.png */, + AB564909186E6F67002740F4 /* Image_MemoryExpansionPak.png */, + AB0038A61872A96700B0B055 /* Image_PaddleController.png */, + AB56490A186E6F67002740F4 /* Image_PassME.png */, + AB56490B186E6F67002740F4 /* Image_Piano.png */, AB0F297914BE70BC009ABC6F /* VideoFilterPreview_64x64.png */, ); name = Images; @@ -1952,6 +1987,7 @@ ABB97878144E89CC00793FA3 /* Icon_DeSmuME_32x32.png in Resources */, AB350D3B147A1D93007165AC /* HID_usage_strings.plist in Resources */, ABBF04A514B515F300E505A0 /* AppIcon_ROMCheats.icns in Resources */, + AB564915186E6F67002740F4 /* Image_Piano.png in Resources */, ABC3AF2F14B7F06900D5B13D /* Icon_VolumeFull_16x16.png in Resources */, ABC3AF3014B7F06900D5B13D /* Icon_VolumeMute_16x16.png in Resources */, ABC3AF3114B7F06900D5B13D /* Icon_VolumeOneThird_16x16.png in Resources */, @@ -1974,11 +2010,13 @@ AB0F294314BE6FA7009ABC6F /* ColorSwatch_Red_16x16.png in Resources */, AB0F294414BE6FA7009ABC6F /* ColorSwatch_SeaGreen_16x16.png in Resources */, AB0F294514BE6FA7009ABC6F /* ColorSwatch_Turquoise_16x16.png in Resources */, + AB564911186E6F67002740F4 /* Image_MemoryExpansionPak.png in Resources */, AB0F294614BE6FA7009ABC6F /* ColorSwatch_Violet_16x16.png in Resources */, AB0F294714BE6FA7009ABC6F /* ColorSwatch_Yellow_16x16.png in Resources */, AB0F296D14BE705D009ABC6F /* Icon_ActionReplay_128x128.png in Resources */, AB0F296E14BE705D009ABC6F /* Icon_CodeBreaker_128x128.png in Resources */, AB0F297A14BE70BC009ABC6F /* VideoFilterPreview_64x64.png in Resources */, + AB564913186E6F67002740F4 /* Image_PassME.png in Resources */, AB0F298C14BE71E0009ABC6F /* Icon_ArrowDown_420x420.png in Resources */, AB0F298D14BE71E0009ABC6F /* Icon_ArrowLeft_420x420.png in Resources */, AB0F298E14BE71E0009ABC6F /* Icon_ArrowRight_420x420.png in Resources */, @@ -1991,6 +2029,7 @@ AB0F29AB14BE7213009ABC6F /* Icon_DSButtonSelect_420x420.png in Resources */, AB0F29AC14BE7213009ABC6F /* Icon_DSButtonStart_420x420.png in Resources */, AB0F29AD14BE7213009ABC6F /* Icon_DSButtonX_420x420.png in Resources */, + AB0038A81872A96700B0B055 /* Image_PaddleController.png in Resources */, AB0F29AE14BE7213009ABC6F /* Icon_DSButtonY_420x420.png in Resources */, AB0F29AF14BE7213009ABC6F /* Icon_Emulation_420x420.png in Resources */, AB0F29B014BE7213009ABC6F /* Icon_Input_420x420.png in Resources */, @@ -2031,6 +2070,7 @@ AB796CB415CDCBA200C59155 /* Icon_DeSmuME_32x32.png in Resources */, AB796CB515CDCBA200C59155 /* HID_usage_strings.plist in Resources */, AB796CB615CDCBA200C59155 /* AppIcon_ROMCheats.icns in Resources */, + AB564914186E6F67002740F4 /* Image_Piano.png in Resources */, AB796CB715CDCBA200C59155 /* Icon_VolumeFull_16x16.png in Resources */, AB796CB815CDCBA200C59155 /* Icon_VolumeMute_16x16.png in Resources */, AB796CB915CDCBA200C59155 /* Icon_VolumeOneThird_16x16.png in Resources */, @@ -2053,11 +2093,13 @@ AB796CCA15CDCBA200C59155 /* ColorSwatch_Red_16x16.png in Resources */, AB796CCB15CDCBA200C59155 /* ColorSwatch_SeaGreen_16x16.png in Resources */, AB796CCC15CDCBA200C59155 /* ColorSwatch_Turquoise_16x16.png in Resources */, + AB564910186E6F67002740F4 /* Image_MemoryExpansionPak.png in Resources */, AB796CCD15CDCBA200C59155 /* ColorSwatch_Violet_16x16.png in Resources */, AB796CCE15CDCBA200C59155 /* ColorSwatch_Yellow_16x16.png in Resources */, AB796CCF15CDCBA200C59155 /* Icon_ActionReplay_128x128.png in Resources */, AB796CD015CDCBA200C59155 /* Icon_CodeBreaker_128x128.png in Resources */, AB796CD115CDCBA200C59155 /* VideoFilterPreview_64x64.png in Resources */, + AB564912186E6F67002740F4 /* Image_PassME.png in Resources */, AB796CD215CDCBA200C59155 /* Icon_ArrowDown_420x420.png in Resources */, AB796CD315CDCBA200C59155 /* Icon_ArrowLeft_420x420.png in Resources */, AB796CD415CDCBA200C59155 /* Icon_ArrowRight_420x420.png in Resources */, @@ -2070,6 +2112,7 @@ AB796CDB15CDCBA200C59155 /* Icon_DSButtonSelect_420x420.png in Resources */, AB796CDC15CDCBA200C59155 /* Icon_DSButtonStart_420x420.png in Resources */, AB796CDD15CDCBA200C59155 /* Icon_DSButtonX_420x420.png in Resources */, + AB0038A71872A96700B0B055 /* Image_PaddleController.png in Resources */, AB796CDE15CDCBA200C59155 /* Icon_DSButtonY_420x420.png in Resources */, AB796CDF15CDCBA200C59155 /* Icon_Emulation_420x420.png in Resources */, AB796CE015CDCBA200C59155 /* Icon_Input_420x420.png in Resources */, @@ -2267,6 +2310,7 @@ ABD1FF151345AC9C00AF11D1 /* slot2_rumblepak.cpp in Sources */, ABD1041F1346652500AF11D1 /* sndOSX.cpp in Sources */, AB1F468413A0ADE400B80DE6 /* SndOut.cpp in Sources */, + AB564905186E6EBC002740F4 /* Slot2WindowDelegate.mm in Sources */, ABAD3E7813AF1D6D00502E1E /* SoundTouch.cpp in Sources */, AB9038B017C5ED2200F410BD /* slot1_retail_auto.cpp in Sources */, ABD1FEFA1345AC8400AF11D1 /* SPU.cpp in Sources */, @@ -2342,6 +2386,7 @@ AB405682169F5DCC0016AC3E /* x86compilerfunc.cpp in Sources */, AB405685169F5DCC0016AC3E /* x86compileritem.cpp in Sources */, AB405688169F5DCC0016AC3E /* x86cpuinfo.cpp in Sources */, + AB564900186E6EA8002740F4 /* cocoa_slot2.mm in Sources */, AB40568B169F5DCC0016AC3E /* x86defs.cpp in Sources */, AB40568E169F5DCC0016AC3E /* x86func.cpp in Sources */, AB405691169F5DCC0016AC3E /* x86operand.cpp in Sources */, @@ -2389,6 +2434,7 @@ AB796D0115CDCBA200C59155 /* dlditool.cpp in Sources */, AB796D0215CDCBA200C59155 /* driver.cpp in Sources */, AB796D0315CDCBA200C59155 /* emufat.cpp in Sources */, + AB564904186E6EBC002740F4 /* Slot2WindowDelegate.mm in Sources */, AB9038B217C5ED2200F410BD /* slot1_retail_mcrom.cpp in Sources */, AB796D0415CDCBA200C59155 /* emufile.cpp in Sources */, AB796D0515CDCBA200C59155 /* fatdir.cpp in Sources */, @@ -2431,6 +2477,7 @@ AB796D2815CDCBA200C59155 /* slot1.cpp in Sources */, AB796D2915CDCBA200C59155 /* slot1_none.cpp in Sources */, AB2EE12C17D57ED500F68622 /* slot1_retail_mcrom_debug.cpp in Sources */, + AB5648FF186E6EA8002740F4 /* cocoa_slot2.mm in Sources */, AB796D2A15CDCBA200C59155 /* slot1_r4.cpp in Sources */, AB796D2C15CDCBA200C59155 /* slot1_retail_nand.cpp in Sources */, AB796D2D15CDCBA200C59155 /* slot2_expMemory.cpp in Sources */, @@ -2537,6 +2584,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + AB564901186E6EA8002740F4 /* cocoa_slot2.mm in Sources */, ABE9EEEB1501C78700D3FB19 /* fs-linux.cpp in Sources */, ABCFA9F6178BDE920030C8BA /* encrypt.cpp in Sources */, ABB3C66C1501C04F00E0C22E /* NDSGameCore.mm in Sources */, diff --git a/desmume/src/cocoa/DefaultKeyMappings.plist b/desmume/src/cocoa/DefaultKeyMappings.plist index 34a6b6a13..28999ec40 100644 --- a/desmume/src/cocoa/DefaultKeyMappings.plist +++ b/desmume/src/cocoa/DefaultKeyMappings.plist @@ -33,6 +33,7 @@ Enable/Disable Auto Frame Skip Enable/Disable Cheats Enable/Disable GPU State + Paddle DefaultInputProfiles @@ -410,6 +411,8 @@ Enable/Disable GPU State + Paddle + diff --git a/desmume/src/cocoa/DefaultUserPrefs.plist b/desmume/src/cocoa/DefaultUserPrefs.plist index 182ead523d3cf07a2dca3be4a1022ac24b4aa4fd..d9e12105bcb3491661b67ef63983e79a4a7942c5 100644 GIT binary patch delta 1890 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 c51B4|%3iXM>??0X%TkoqO5. + */ + +#import +#include "../slot2.h" +#undef BOOL + +@interface CocoaDSSlot2Device : NSObject +{ + ISlot2Interface *device; + BOOL enabled; +} + +@property (readonly) NSString *name; +@property (readonly) NSString *description; +@property (readonly) NSInteger deviceID; +@property (readonly) NDS_SLOT2_TYPE type; +@property (assign) BOOL enabled; + +- (id) initWithDeviceData:(ISlot2Interface *)deviceData; + +@end + +@interface CocoaDSSlot2Manager : NSObject +{ + NSMutableArray *deviceList; + CocoaDSSlot2Device *currentDevice; + NSString *slot2StatusText; +} + +@property (readonly) NSMutableArray *deviceList; +@property (retain) CocoaDSSlot2Device *currentDevice; +@property (assign) NSString *slot2StatusText; +@property (retain) NSURL *mpcfFileSearchURL; +@property (copy) NSURL *gbaCartridgeURL; +@property (copy) NSURL *gbaSRamURL; +@property (readonly) BOOL doesGbaCartridgeSaveExist; +@property (assign) UInt16 paddleValue; + +- (CocoaDSSlot2Device *) autoSelectedDevice; +- (NSString *) autoSelectedDeviceName; +- (CocoaDSSlot2Device *) findDeviceByType:(NDS_SLOT2_TYPE)theType; +- (void) setDeviceByType:(NDS_SLOT2_TYPE)theType; +- (void) updateDeviceList; +- (void) updateStatus; + +@end + +// Force Feedback +void OSXSendForceFeedbackState(bool enable); diff --git a/desmume/src/cocoa/cocoa_slot2.mm b/desmume/src/cocoa/cocoa_slot2.mm new file mode 100644 index 000000000..bcd972ba6 --- /dev/null +++ b/desmume/src/cocoa/cocoa_slot2.mm @@ -0,0 +1,407 @@ +/* + Copyright (C) 2014 DeSmuME Team + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with the this software. If not, see . + */ + +#import "cocoa_slot2.h" +#import "cocoa_globals.h" +#import "cocoa_util.h" + +#include "../NDSSystem.h" +#undef BOOL + +@implementation CocoaDSSlot2Device + +@dynamic name; +@dynamic description; +@dynamic deviceID; +@dynamic type; +@synthesize enabled; + + +- (id) initWithDeviceData:(ISlot2Interface *)deviceData +{ + self = [super init]; + if (self == nil) + { + return self; + } + + device = deviceData; + enabled = NO; + + return self; +} + +- (void) dealloc +{ + [self setEnabled:nil]; + + [super dealloc]; +} + +- (NSString *) name +{ + const char *cDeviceName = device->info()->name(); + NSString *theName = (cDeviceName != NULL) ? [NSString stringWithCString:cDeviceName encoding:NSUTF8StringEncoding] : @""; + + return theName; +} + +- (NSString *) description +{ + const char *cDeviceDescription = device->info()->descr(); + NSString *theDesc = (cDeviceDescription != NULL) ? [NSString stringWithCString:cDeviceDescription encoding:NSUTF8StringEncoding] : @""; + + return theDesc; +} + +- (NSInteger) deviceID +{ + return (NSInteger)device->info()->id(); +} + +- (NDS_SLOT2_TYPE) type +{ + NDS_SLOT2_TYPE theType = NDS_SLOT2_NONE; + slot2_getTypeByID(device->info()->id(), theType); + return theType; +} + +@end + +@implementation CocoaDSSlot2Manager + +@synthesize deviceList; +@dynamic currentDevice; +@synthesize slot2StatusText; +@dynamic mpcfFileSearchURL; +@dynamic gbaCartridgeURL; +@dynamic gbaSRamURL; +@dynamic doesGbaCartridgeSaveExist; +@dynamic paddleValue; + +- (id) init +{ + self = [super init]; + if (self == nil) + { + return self; + } + + deviceList = [[NSMutableArray alloc] initWithCapacity:32]; + slot2StatusText = NSSTRING_STATUS_SLOT2_LOADED_NONE; + [self setGbaCartridgeURL:nil]; + + if (FeedbackON == NULL) + { + FeedbackON = &OSXSendForceFeedbackState; + } + + return self; +} + +- (void) dealloc +{ + [deviceList release]; + + [super dealloc]; +} + +- (void) setCurrentDevice:(CocoaDSSlot2Device *)theDevice +{ + NDS_SLOT2_TYPE theType = NDS_SLOT2_NONE; + + if (theDevice != nil) + { + theType = [theDevice type]; + [theDevice retain]; + } + + bool slotDidChange = slot2_Change(theType); + if (slotDidChange || currentDevice == nil) + { + [currentDevice release]; + currentDevice = theDevice; + } + + [self updateStatus]; +} + +- (CocoaDSSlot2Device *) currentDevice +{ + return currentDevice; +} + +- (void) setMpcfFileSearchURL:(NSURL *)theURL +{ + if (theURL != nil) + { + BOOL isDirectory = NO; + NSString *thePath = [theURL path]; + + NSFileManager *fileManager = [[NSFileManager alloc] init]; + [fileManager fileExistsAtPath:thePath isDirectory:&isDirectory]; + + CFlash_Mode = (isDirectory) ? ADDON_CFLASH_MODE_Path : ADDON_CFLASH_MODE_File; + CFlash_Path = [thePath cStringUsingEncoding:NSUTF8StringEncoding]; + + [fileManager release]; + } + else + { + CFlash_Path.clear(); + CFlash_Mode = ADDON_CFLASH_MODE_RomPath; + } +} + +- (NSURL *) mpcfFileSearchURL +{ + return [NSURL fileURLWithPath:[NSString stringWithCString:CFlash_Path.c_str() encoding:NSUTF8StringEncoding]]; +} + +- (void) setGbaCartridgeURL:(NSURL *)fileURL +{ + if (fileURL != nil) + { + GBACartridge_RomPath = [[fileURL path] cStringUsingEncoding:NSUTF8StringEncoding]; + } + else + { + GBACartridge_RomPath.clear(); + } +} + +- (NSURL *) gbaCartridgeURL +{ + return [NSURL fileURLWithPath:[NSString stringWithCString:GBACartridge_RomPath.c_str() encoding:NSUTF8StringEncoding]]; +} + +- (void) setGbaSRamURL:(NSURL *)fileURL +{ + if (fileURL != nil) + { + GBACartridge_SRAMPath = [[fileURL path] cStringUsingEncoding:NSUTF8StringEncoding]; + } + else + { + GBACartridge_SRAMPath.clear(); + } +} + +- (NSURL *) gbaSRamURL; +{ + return [NSURL fileURLWithPath:[NSString stringWithCString:GBACartridge_SRAMPath.c_str() encoding:NSUTF8StringEncoding]]; +} + +- (BOOL) doesGbaCartridgeSaveExist +{ + return NO; +} + +- (void) setPaddleValue:(UInt16)value +{ + nds.paddle = value; +} + +- (UInt16) paddleValue +{ + return nds.paddle; +} + +- (CocoaDSSlot2Device *) autoSelectedDevice +{ + return [self findDeviceByType:slot2_DetermineType()]; +} + +- (NSString *) autoSelectedDeviceName +{ + return [[self autoSelectedDevice] name]; +} + +- (CocoaDSSlot2Device *) findDeviceByType:(NDS_SLOT2_TYPE)theType +{ + CocoaDSSlot2Device *foundDevice = nil; + + for (CocoaDSSlot2Device *theDevice in deviceList) + { + if (theType == [theDevice type]) + { + foundDevice = theDevice; + return foundDevice; + } + } + + return foundDevice; +} + +- (void) setDeviceByType:(NDS_SLOT2_TYPE)theType +{ + CocoaDSSlot2Device *theDevice = [self findDeviceByType:theType]; + if (theDevice != nil) + { + [self setCurrentDevice:theDevice]; + } + else + { + // If no devices are found, just set it to NDS_SLOT2_NONE by default. + slot2_Change(NDS_SLOT2_NONE); + } +} + +- (void) updateDeviceList +{ + BOOL didSelectDevice = NO; + + [deviceList removeAllObjects]; + + for (size_t i = 0; i < NDS_SLOT2_COUNT; i++) + { + ISlot2Interface *theDevice = slot2_List[i]; + if (theDevice == NULL) + { + continue; + } + + // Create a new device wrapper object and add it to the device list. + CocoaDSSlot2Device *newCdsDevice = [[[CocoaDSSlot2Device alloc] initWithDeviceData:theDevice] autorelease]; + [deviceList addObject:newCdsDevice]; + + // Only enable the SLOT-2 devices that are ready for end-user usage, and leave + // the remaining devices disabled for the time being. + const NDS_SLOT2_TYPE deviceType = [newCdsDevice type]; + + struct Slot2DeviceProperties + { + NDS_SLOT2_TYPE typeID; + BOOL isSupported; + }; + + static const Slot2DeviceProperties deviceTypesList[] = { + { NDS_SLOT2_NONE, YES }, + { NDS_SLOT2_AUTO, YES }, + { NDS_SLOT2_CFLASH, YES }, + { NDS_SLOT2_RUMBLEPAK, YES }, + { NDS_SLOT2_GBACART, YES }, + { NDS_SLOT2_GUITARGRIP, NO }, + { NDS_SLOT2_EXPMEMORY, YES }, + { NDS_SLOT2_EASYPIANO, NO }, + { NDS_SLOT2_PADDLE, YES }, + { NDS_SLOT2_PASSME, YES } + }; + + Slot2DeviceProperties *supportedDeviceTypesList = (Slot2DeviceProperties *)calloc(NDS_SLOT2_COUNT, sizeof(Slot2DeviceProperties)); + memcpy(supportedDeviceTypesList, deviceTypesList, sizeof(deviceTypesList)); + + for (size_t j = 0; j < NDS_SLOT2_COUNT; j++) + { + if (deviceType == supportedDeviceTypesList[j].typeID) + { + [newCdsDevice setEnabled:supportedDeviceTypesList[j].isSupported]; + break; + } + } + + free(supportedDeviceTypesList); + supportedDeviceTypesList = NULL; + + // If the new device is the current device, select it. + if (!didSelectDevice && [newCdsDevice type] == slot2_GetCurrentType()) + { + [self setCurrentDevice:newCdsDevice]; + didSelectDevice = YES; + } + } + + if (!didSelectDevice) + { + slot2_Change(NDS_SLOT2_NONE); + } +} + +- (void) updateStatus +{ + const NDS_SLOT2_TYPE theType = ([self currentDevice] != nil) ? [currentDevice type] : NDS_SLOT2_NONE; + + switch (theType) + { + case NDS_SLOT2_NONE: + [self setSlot2StatusText:NSSTRING_STATUS_SLOT2_LOADED_NONE]; + break; + + case NDS_SLOT2_AUTO: + [self setSlot2StatusText:[NSString stringWithFormat:NSSTRING_STATUS_SLOT2_LOADED_AUTOMATIC, [self autoSelectedDeviceName]]]; + break; + + case NDS_SLOT2_CFLASH: + { + switch (CFlash_Mode) + { + case ADDON_CFLASH_MODE_Path: + [self setSlot2StatusText:[NSString stringWithFormat:NSSTRING_STATUS_SLOT2_LOADED_MPCF_DIRECTORY, CFlash_Path.c_str()]]; + break; + + case ADDON_CFLASH_MODE_File: + [self setSlot2StatusText:[NSString stringWithFormat:NSSTRING_STATUS_SLOT2_LOADED_MPCF_DISK_IMAGE, CFlash_Path.c_str()]]; + break; + + case ADDON_CFLASH_MODE_RomPath: + [self setSlot2StatusText:NSSTRING_STATUS_SLOT2_LOADED_MPCF_WITH_ROM]; + break; + + default: + break; + } + break; + } + + case NDS_SLOT2_GBACART: + { + [self setSlot2StatusText:(GBACartridge_SRAMPath.empty()) ? NSSTRING_STATUS_SLOT2_LOADED_GBA_CART_NO_SRAM : [NSString stringWithFormat:NSSTRING_STATUS_SLOT2_LOADED_GBA_CART_WITH_SRAM, GBACartridge_SRAMPath.c_str()]]; + break; + } + + case NDS_SLOT2_RUMBLEPAK: + case NDS_SLOT2_GUITARGRIP: + case NDS_SLOT2_EXPMEMORY: + case NDS_SLOT2_EASYPIANO: + case NDS_SLOT2_PADDLE: + case NDS_SLOT2_PASSME: + [self setSlot2StatusText:[NSString stringWithFormat:NSSTRING_STATUS_SLOT2_LOADED_GENERIC_DEVICE, [[self currentDevice] name]]]; + break; + + default: + [self setSlot2StatusText:NSSTRING_STATUS_SLOT2_LOADED_UNKNOWN]; + break; + } +} + +@end + +void OSXSendForceFeedbackState(bool enable) +{ + NSAutoreleasePool *tempPool = [[NSAutoreleasePool alloc] init]; + + NSDictionary *ffProperties = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:enable], @"ffState", + [NSNumber numberWithInteger:RUMBLE_ITERATIONS_RUMBLE_PAK], @"iterations", + nil]; + + [[NSNotificationCenter defaultCenter] postNotificationName:@"org.desmume.DeSmuME.sendForceFeedback" + object:nil + userInfo:ffProperties]; + + [tempPool release]; +} diff --git a/desmume/src/cocoa/images/Image_MemoryExpansionPak.png b/desmume/src/cocoa/images/Image_MemoryExpansionPak.png new file mode 100644 index 0000000000000000000000000000000000000000..17735fc77353876c5ebe72d745760412e3ac4a34 GIT binary patch literal 90443 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

rz&j%^{S~)S6uF8njk) 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 yJ^aXPR&&H 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

+(eLB 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

)VLTSFCocU{=VL?*DIE-aH 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

  • 2l#wJ;I~B$M#N{yeHXqJH%lTF2o3*G&b2!d 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 KT(OKv!2bb^pu?vC literal 0 HcmV?d00001 diff --git a/desmume/src/cocoa/images/Image_PassME.png b/desmume/src/cocoa/images/Image_PassME.png new file mode 100644 index 0000000000000000000000000000000000000000..20f9d091d4be373fddd790ef94da8e75c2b167a0 GIT binary patch literal 75254 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 YES + + YES @@ -675,6 +677,14 @@ + + + Show SLOT-2 Manager... + + 2147483647 + + + ROM Save Type @@ -2678,9 +2688,11 @@ {1.7976931348623157e+308, 1.7976931348623157e+308} - + 256 {400, 100} + + {{0, 0}, {1920, 1178}} {1.7976931348623157e+308, 1.7976931348623157e+308} @@ -2688,7 +2700,7 @@ YES - + 268 YES @@ -2707,6 +2719,7 @@ 268 {{175, 50}, {199, 21}} + YES 613417024 @@ -2725,6 +2738,7 @@ 268 {{376, 43}, {96, 32}} + YES 67108864 @@ -2746,6 +2760,7 @@ 268 {{15, 53}, {155, 17}} + YES 68157504 @@ -2763,6 +2778,7 @@ 268 {{15, 14}, {454, 28}} + YES 69206017 @@ -2779,10 +2795,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 1}, {484, 81}} + {{17, 16}, {486, 97}} + {0, 0} 67108864 @@ -2821,6 +2839,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{148, 14}, {226, 21}} + YES 613417024 @@ -2839,6 +2858,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{376, 7}, {96, 32}} + YES 67108864 @@ -2860,6 +2880,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{15, 17}, {128, 17}} + YES 68157504 @@ -2875,10 +2896,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 1}, {484, 45}} + {{17, 117}, {486, 61}} + {0, 0} 67108864 @@ -2912,6 +2935,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{92, 12}, {314, 18}} + YES 67108864 @@ -2940,6 +2964,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{141, 33}, {217, 32}} + YES 67108864 @@ -2959,10 +2984,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 1}, {484, 75}} + {{17, 182}, {486, 91}} + {0, 0} 67108864 @@ -2996,6 +3023,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{16, 40}, {366, 18}} + YES -2080374784 @@ -3019,6 +3047,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{16, 84}, {247, 18}} + YES -2080374784 @@ -3042,6 +3071,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{273, 10}, {196, 26}} + YES -2076180416 @@ -3137,6 +3167,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{15, 16}, {256, 17}} + _NS:4068 YES @@ -3156,6 +3187,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{16, 62}, {216, 18}} + _NS:682 YES @@ -3179,10 +3211,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 1}, {484, 109}} + {{17, 277}, {486, 125}} + {0, 0} 67108864 @@ -3203,10 +3237,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {520, 422} + + NSView - + 268 YES @@ -3215,6 +3251,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{97, 463}, {96, 17}} + YES 68157504 @@ -3232,6 +3269,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{195, 457}, {265, 26}} + YES -2076180416 @@ -3292,6 +3330,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{462, 457}, {116, 26}} + YES -2076180416 @@ -3435,6 +3474,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA256 {640, 394} + YES NO YES @@ -3443,6 +3483,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA256 {640, 17} + @@ -3450,6 +3491,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA-2147483392 {{584, 0}, {16, 17}} + YES @@ -3640,6 +3682,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 17}, {640, 394}} + @@ -3650,6 +3693,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA-2147483392 {{584, 17}, {15, 102}} + NO _doScroller: @@ -3660,6 +3704,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA-2147483392 {{1, 420}, {624, 15}} + NO 1 @@ -3675,6 +3720,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 0}, {640, 17}} + @@ -3684,12 +3730,14 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{-1, 37}, {642, 412}} + 133682 + QSAAAEEgAABBmAAAQZgAAA 0.25 4 @@ -3699,6 +3747,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{197, 12}, {247, 17}} + YES 605028416 @@ -3717,10 +3766,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {640, 495} + + InputPrefsView - + 268 YES @@ -3729,6 +3780,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA12 {{13, 10}, {463, 401}} + YES @@ -3753,6 +3805,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{72, 44}, {84, 17}} + YES 68157504 @@ -3770,6 +3823,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{44, 16}, {112, 17}} + YES 68157504 @@ -3787,6 +3841,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{158, 38}, {126, 26}} + YES -2076180416 @@ -3879,6 +3934,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{289, 14}, {72, 22}} + YES -1804599231 @@ -3970,6 +4026,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{63, 72}, {93, 17}} + YES 68157504 @@ -3987,6 +4044,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{158, 66}, {126, 26}} + YES -2076180416 @@ -4055,6 +4113,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{158, 11}, {126, 26}} + YES -2076180416 @@ -4156,10 +4215,12 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA {{1, 1}, {429, 100}} + {{6, 206}, {431, 116}} + {0, 0} 67108864 @@ -4203,6 +4264,7 @@ L3d3dy5hZHZhbnNjZW5lLmNvbS9vZmZsaW5lL2RhdGFzL0FEVkFOc0NFbmVfUlRvb2xEUy56aXA268 {{18, 14}, {100, 38}} + YES NO 2 @@ -4396,10 +4458,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {194, 62}} + {{15, 53}, {196, 78}} + {0, 0} 67108864 @@ -4433,6 +4497,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{18, 14}, {150, 38}} + YES NO 2 @@ -4624,10 +4689,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {194, 62}} + {{218, 53}, {196, 78}} + {0, 0} 67108864 @@ -4651,6 +4718,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{15, 18}, {126, 17}} + YES 68157504 @@ -4668,6 +4736,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{339, 16}, {72, 22}} + YES -1804599231 @@ -4750,6 +4819,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{144, 12}, {189, 26}} + YES -2080112384 @@ -4772,6 +4842,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{305, 38}, {38, 11}} + YES 68157504 @@ -4793,6 +4864,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{263, 38}, {38, 11}} + YES 68157504 @@ -4810,6 +4882,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{220, 38}, {38, 11}} + YES 68157504 @@ -4827,6 +4900,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{178, 38}, {38, 11}} + YES 68157504 @@ -4844,6 +4918,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{137, 38}, {38, 11}} + YES 68157504 @@ -4859,10 +4934,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {429, 141}} + {{6, 45}, {431, 157}} + {0, 0} 67108864 @@ -4884,6 +4961,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{10, 33}, {443, 355}} + Display Views @@ -5885,10 +5963,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {489, 425} + + NSView - + 268 YES @@ -5897,6 +5977,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{163, 329}, {220, 26}} + YES -2076180416 @@ -5955,6 +6036,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{17, 335}, {144, 17}} + YES 68157504 @@ -5982,6 +6064,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{16, 12}, {148, 18}} + YES -2080374784 @@ -6003,10 +6086,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {364, 38}} + {{17, 209}, {366, 54}} + {0, 0} 67108864 @@ -6040,6 +6125,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{18, 15}, {180, 46}} + YES NO 2 @@ -6234,6 +6320,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{145, 10}, {204, 26}} + YES -2076180416 @@ -6302,10 +6389,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {364, 71}} + {{17, 16}, {366, 87}} + {0, 0} 67108864 @@ -6339,6 +6428,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{18, 14}, {328, 58}} + YES NO 3 @@ -6544,10 +6634,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {364, 82}} + {{17, 107}, {366, 98}} + {0, 0} 67108864 @@ -6581,6 +6673,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{44, 13}, {246, 21}} + YES 67371264 @@ -6603,6 +6696,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{293, 17}, {56, 17}} + YES 68157504 @@ -6694,6 +6788,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{18, 14}, {20, 20}} + YES 134217728 @@ -6713,10 +6808,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {364, 44}} + {{17, 267}, {366, 60}} + {0, 0} 67108864 @@ -6737,10 +6834,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {400, 373} + + NSView - + 268 YES @@ -6749,6 +6848,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 12 {{13, 10}, {528, 349}} + YES @@ -6773,6 +6873,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{16, 32}, {197, 18}} + YES -2080374784 @@ -6796,6 +6897,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{16, 12}, {217, 18}} + YES 67108864 @@ -6817,10 +6919,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {494, 58}} + {{6, 229}, {496, 74}} + {0, 0} 67108864 @@ -6854,6 +6958,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{18, 14}, {165, 38}} + YES NO 2 @@ -7047,6 +7152,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{243, 15}, {72, 17}} + YES 68157504 @@ -7064,6 +7170,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{320, 13}, {50, 22}} + YES -1804599231 @@ -7140,6 +7247,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{371, 10}, {19, 27}} + YES 67895328 @@ -7157,10 +7265,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {494, 62}} + {{6, 147}, {496, 78}} + {0, 0} 67108864 @@ -7194,6 +7304,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{16, 32}, {145, 18}} + YES 67108864 @@ -7217,6 +7328,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{16, 12}, {118, 18}} + YES 67108864 @@ -7238,10 +7350,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {494, 58}} + {{6, 69}, {496, 74}} + {0, 0} 67108864 @@ -7275,6 +7389,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{16, 12}, {462, 18}} + YES -2080374784 @@ -7296,10 +7411,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {494, 38}} + {{6, 11}, {496, 54}} + {0, 0} 67108864 @@ -7321,6 +7438,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{10, 33}, {508, 303}} + General Settings @@ -7730,6 +7848,8 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {554, 373} + + NSView @@ -8678,7 +8798,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 - {{17, 230}, {566, 17}} + {{17, 230}, {586, 17}} YES @@ -8969,7 +9089,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 - {{18, 202}, {314, 18}} + {{18, 202}, {206, 18}} YES @@ -9556,7 +9676,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 - {{17, 123}, {316, 17}} + {{17, 123}, {425, 17}} YES @@ -10307,6 +10427,268 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {1.7976931348623157e+308, 1.7976931348623157e+308} YES + + 1 + 2 + {{235, 310}, {350, 249}} + 1685586944 + InputSettingsPaddleController + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + YES + + + 268 + {{17, 212}, {316, 17}} + + YES + + 70254657 + 272634880 + + + Device Info Summary + + + + + NO + + + + 12 + + YES + + + 274 + + YES + + + 268 + {{115, 16}, {71, 17}} + + _NS:4068 + YES + + 68157504 + -2076175360 + + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeFormat + negativeInfinitySymbol + negativePrefix + nilSymbol + positiveFormat + positiveInfinitySymbol + positivePrefix + zeroSymbol + + + YES + + + + # + -∞ + - + + # + +∞ + + + 0 + + + # + # + + + + 0 + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + NO + NO + NO + + %d + _NS:4068 + + + + + NO + + + + 268 + {{189, 11}, {19, 27}} + + _NS:4123 + YES + + -2146697184 + 0 + _NS:4123 + + 1 + -50 + 50 + 1 + YES + + NO + + + {{1, 1}, {314, 46}} + + + + {{17, 56}, {316, 62}} + + {0, 0} + + 67108864 + 0 + Paddle Adjustment + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{17, 126}, {316, 56}} + + YES + + 67108864 + 272760832 + Direct control of the paddle requires an analog input. If this setting is disabled, then this input will use the paddle adjustment value instead. + + + + + + NO + + + + 268 + {{18, 188}, {134, 18}} + + _NS:682 + YES + + -2080374784 + 0 + Use direct control + + _NS:682 + + 1211912448 + 2 + + + + + 200 + 25 + + NO + + + + 268 + {{240, 12}, {96, 32}} + + 1 + YES + + 67108864 + 134217728 + OK + + + -2038284288 + 129 + + DQ + 200 + 25 + + NO + + + + 268 + {{144, 12}, {96, 32}} + + YES + + 67108864 + 134217728 + Cancel + + + -2038284288 + 129 + + Gw + 200 + 25 + + NO + + + {350, 249} + _NS:122 + + {{0, 0}, {1920, 1178}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + NO + 1 2 @@ -12029,7 +12411,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA - {{297, 16}, {326, 444}} + {{297, 16}, {326, 444.1875}} {0, 0} @@ -13994,13 +14376,13 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 2 {{235, 204}, {640, 355}} 1685586944 - SLOT-1 Manager + SLOT-1 (NDS Slot) Manager NSWindow {1.7976931348623157e+308, 1.7976931348623157e+308} - + 256 YES @@ -14009,6 +14391,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{14, 12}, {168, 32}} + YES 67108864 @@ -14030,6 +14413,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{181, 22}, {105, 17}} + YES 68157504 @@ -14047,6 +14431,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 12 {{12, 51}, {616, 5}} + {0, 0} 67108864 @@ -14069,6 +14454,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{288, 22}, {330, 17}} + YES 70254657 @@ -14097,6 +14483,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{18, 14}, {260, 128}} + YES NO 5 @@ -14329,6 +14716,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{85, 15}, {409, 21}} + YES 78643265 @@ -14348,6 +14736,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{496, 8}, {96, 32}} + YES 67108864 @@ -14369,6 +14758,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{15, 150}, {482, 28}} + YES 67108864 @@ -14389,6 +14779,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{496, 146}, {96, 32}} + YES 67108864 @@ -14408,10 +14799,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {604, 188}} + {{17, 140}, {606, 204}} + {0, 0} 67108864 @@ -14457,6 +14850,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{18, 16}, {30, 30}} + YES 134217728 @@ -14475,6 +14869,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 265 {{50, 18}, {168, 28}} + YES 69206017 @@ -14492,6 +14887,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 1292 {{18, 14}, {32, 32}} + 28682 100 @@ -14500,6 +14896,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 268 {{220, 17}, {201, 26}} + YES -2076180416 @@ -14606,10 +15003,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{1, 1}, {604, 56}} + {{17, 64}, {606, 72}} + {0, 0} 67108864 @@ -14630,12 +15029,1686 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {640, 355} + + {{0, 0}, {1920, 1178}} {1.7976931348623157e+308, 1.7976931348623157e+308} Slot1ManagerWindow YES + + 7 + 2 + {{235, 111}, {640, 448}} + 1685586944 + SLOT-2 (GBA Slot) Manager + NSWindow + + + {1.7976931348623157e+308, 1.7976931348623157e+308} + + + 256 + + YES + + + 268 + + YES + + + 2304 + + YES + + + 256 + {188, 304} + + _NS:1843 + YES + NO + YES + + + 256 + {188, 17} + + + + + + -2147483392 + {{224, 0}, {16, 17}} + + _NS:1848 + + + YES + + 185 + 40 + 1000 + + 75497536 + 2048 + SLOT-2 Device Type + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337641536 + 2048 + Text Cell + + + + + + 1 + YES + + + + 3 + 2 + + + 17 + 46137344 + + + 4 + 15 + 0 + YES + 0 + 1 + + + {{1, 17}, {188, 304}} + + + _NS:1841 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + _NS:1860 + NO + + _doScroller: + 0.99723756906077343 + + + + -2147483392 + {{1, 306}, {188.95703125, 15}} + + _NS:1862 + NO + 1 + + _doScroller: + 0.9943820224719101 + + + + 2304 + + YES + + + {{1, 0}, {188, 17}} + + + + + 4 + + + + {{20, 106}, {190, 322}} + + + _NS:1839 + 133682 + + + + + + QSAAAEEgAABBmAAAQZgAAA + 0.25 + 4 + 1 + + + + 12 + + YES + + + 274 + + YES + + + 268 + {{3, 4}, {400, 320}} + + _NS:1109 + NSView + + + {{1, 1}, {406, 326}} + + _NS:21 + + + {{215, 102}, {408, 328}} + + _NS:18 + {0, 0} + + 67108864 + 0 + Device Settings + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 268 + {{530, 12}, {96, 32}} + + _NS:610 + YES + + 67108864 + 134217728 + Apply + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 12 + + YES + + + 274 + + YES + + + 268 + {{15, 14}, {482, 42}} + + _NS:3939 + YES + + 69206017 + 272760832 + + + slot2StatusText + _NS:3939 + + + + + NO + + + {{1, 1}, {512, 66}} + + _NS:21 + + + {{17, 16}, {514, 82}} + + _NS:18 + {0, 0} + + 67108864 + 0 + GBA Slot Status + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {640, 448} + + _NS:122 + + {{0, 0}, {1920, 1178}} + {1.7976931348623157e+308, 1.7976931348623157e+308} + Slot2ManagerWindow + NO + + + Slot2WindowDelegate + + + + 268 + + YES + + + 268 + {{17, 152}, {366, 17}} + + _NS:3939 + YES + + 67108864 + 138674176 + This device is unsupported at this time. + + _NS:3939 + + + + + NO + + + {400, 320} + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{17, 45}, {366, 56}} + + + _NS:3939 + YES + + 67108864 + 272760832 + Note: If a game is dependent on having a particular SLOT-2 device loaded, then removing the device while the game is running may cause the game to fail. + + _NS:3939 + + + + + NO + + + + 268 + {{17, 109}, {366, 56}} + + + _NS:3939 + YES + + 67108864 + 272760832 + When a ROM is loading, this setting prevents any SLOT-2 device from being loaded into the GBA slot. If a ROM is already loaded, this setting removes any previously loaded SLOT-2 device. + + _NS:3939 + + + + + NO + + + + 268 + {{17, 20}, {366, 17}} + + + _NS:3939 + YES + + 67108864 + 138674176 + No additional configuration required. + + _NS:3939 + + + + + NO + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{17, 45}, {366, 56}} + + _NS:3939 + YES + + 67108864 + 272760832 + Note: This is not an actual device. Rather, this setting will automatically select a SLOT-2 device depending on the loaded ROM, and then load the device as the ROM loads. + + _NS:3939 + + + + + NO + + + + 268 + {{187, 126}, {196, 17}} + + _NS:4068 + YES + + 70254657 + 4199424 + + + SLOT-2 Device Name + _NS:4068 + + + + + NO + + + + 268 + {{17, 126}, {168, 17}} + + _NS:4068 + YES + + 68157504 + 71304192 + Selected SLOT-2 Device: + + _NS:4068 + + + + + NO + + + + 268 + {{153, 283}, {230, 17}} + + _NS:4068 + YES + + 68157504 + 272630784 + Currently Loaded ROM + + _NS:4068 + + + + + NO + + + + 12 + {{12, 149}, {376, 5}} + + _NS:2429 + {0, 0} + + 67108864 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + 3 + 2 + 0 + NO + + + + 268 + {{68, 220}, {32, 32}} + + 28682 + 100 + + + + 265 + {{165, 241}, {218, 34}} + + YES + + 69206017 + 272633856 + TmFtZToKU2VyaWFsOg + + + + + + NO + + + + 265 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{20, 172}, {128, 128}} + + YES + + 134217728 + 33554432 + + 0 + 3 + 0 + NO + + NO + YES + + + + 268 + {{17, 20}, {366, 17}} + + _NS:3939 + YES + + 67108864 + 138674176 + No additional configuration required. + + _NS:3939 + + + + + NO + + + {400, 320} + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{17, 283}, {366, 17}} + + + _NS:4068 + YES + + 68157504 + 272630784 + Search for files at this location: + + _NS:4068 + + + + + NO + + + + 268 + {{17, 251}, {366, 26}} + + + _NS:791 + YES + + -2076180416 + 2048 + + _NS:791 + + 109199360 + 129 + + + 400 + 75 + + + Same folder as the loaded ROM + + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + YES + YES + + + 2147483647 + + + _popUpItemAction: + + + + + YES + Custom folder + + 2147483647 + + + _popUpItemAction: + 1 + + + + + Choose a folder... + + 2147483647 + + + + _popUpItemAction: + 10000 + + + + + YES + YES + + + 2147483647 + + + _popUpItemAction: + + + + + YES + Custom disk image + + 2147483647 + + + _popUpItemAction: + 2 + + + + + Choose a disk image... + + 2147483647 + + + + _popUpItemAction: + 10001 + + + + + + 1 + YES + YES + 2 + + NO + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{17, 286}, {366, 14}} + + + _NS:4068 + YES + + 68157504 + 272761856 + Enable rumble for the selected input devices: + + _NS:4068 + + + + + NO + + + + 268 + + YES + + + 2304 + + YES + + + 256 + + YES + + {358, 156} + + + _NS:1843 + YES + NO + YES + + + 256 + {358, 17} + + + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + _NS:1848 + + + YES + + 30 + 30 + 1000 + + 75497536 + 2048 + + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 68157504 + 1024 + + + _NS:1912 + + 1214533888 + 2 + + + + + 200 + 25 + + YES + + + + 317.5234375 + 40 + 1000 + + 75497536 + 2048 + Input Device + + + + + + 338690112 + 1024 + Text Cell + + + + + + 3 + YES + + + + 3 + 2 + + + 17 + 1386217472 + + + 0 + 15 + 0 + NO + 0 + 1 + + + {{1, 17}, {358, 156}} + + + + _NS:1841 + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + _NS:1860 + NO + + _doScroller: + 0.90625 + + + + -2147483392 + {{1, 162}, {358, 15}} + + + _NS:1862 + NO + 1 + + _doScroller: + 1 + 0.97814207650273222 + + + + 2304 + + YES + + + {{1, 0}, {358, 17}} + + + + + + 4 + + + + {{20, 110}, {360, 174}} + + + + _NS:1839 + 133682 + + + + + + QSAAAEEgAABBmAAAQZgAAA + 0.25 + 4 + 1 + + + + 268 + {{267, 12}, {119, 32}} + + + _NS:610 + YES + + 67108864 + 134217728 + Test Rumble + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + {{17, 60}, {366, 42}} + + + _NS:3939 + YES + + 67108864 + 272760832 + Note: Rumble will only work for supported games. In addition, you must have a supported input device. To check if the selected input devices support rumble, click Test Rumble. + + _NS:3939 + + + + + NO + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{142, 113}, {144, 32}} + + _NS:610 + YES + + 67108864 + 134217728 + Clear SRAM Path + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + {{286, 113}, {100, 32}} + + _NS:610 + YES + + 67108864 + 134217728 + Choose... + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + {{20, 149}, {360, 22}} + + _NS:817 + YES + + -2068840383 + 272630784 + + + File Path + _NS:817 + + YES + + + + NO + + + + 268 + {{17, 179}, {100, 17}} + + _NS:4068 + YES + + 68157504 + 272630784 + GBA SRAM File: + + _NS:4068 + + + + + NO + + + + 12 + {{12, 202}, {376, 5}} + + _NS:2429 + {0, 0} + + 67108864 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + 3 + 2 + 0 + NO + + + + 268 + {{286, 217}, {100, 32}} + + _NS:610 + YES + + 67108864 + 134217728 + Choose... + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + {{20, 253}, {360, 22}} + + _NS:817 + YES + + -2068840383 + 272630784 + + + File Path + _NS:817 + + YES + + + + NO + + + + 268 + {{17, 283}, {157, 17}} + + _NS:4068 + YES + + 68157504 + 272630784 + GBA ROM Cartridge File: + + _NS:4068 + + + + + NO + + + {400, 320} + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{101, 60}, {282, 28}} + + + _NS:3939 + YES + + 67108864 + 272760832 + This is an input device. You can set up this device through your Input Preferences. + + _NS:3939 + + + + + NO + + + + 268 + {{236, 12}, {150, 32}} + + + _NS:610 + YES + + 67108864 + 134217728 + Input Preferences + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + {{101, 232}, {282, 68}} + + + _NS:3939 + YES + + 67108864 + 272629760 + You can control the guitar grip by clicking the onscreen buttons. You can also map inputs to the guitar grip controls through your Input Preferences. + + _NS:3939 + + + + + NO + + + + 268 + {{18, 23}, {68, 70}} + + + _NS:2337 + YES + + 67108864 + 134217728 + + + LucidaGrande + 10 + 16 + + _NS:2337 + + -2033958912 + 130 + + + + 400 + 75 + + NO + + + + 268 + {{18, 95}, {68, 70}} + + + _NS:2337 + YES + + 67108864 + 134217728 + + + _NS:2337 + + -2033958912 + 130 + + + + 400 + 75 + + NO + + + + 268 + {{18, 167}, {68, 70}} + + + _NS:2337 + YES + + 67108864 + 134217728 + + + _NS:2337 + + -2033958912 + 130 + + + + 400 + 75 + + NO + + + + 268 + {{18, 239}, {68, 70}} + + + _NS:2337 + YES + + 67108864 + 134217728 + + + _NS:2337 + + -2033958912 + 130 + + + + 400 + 75 + + NO + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{11, 104}, {360, 136}} + + + _NS:2165 + YES + + 67108864 + 33816576 + + NSImage + Image_MemoryExpansionPak + + + _NS:2165 + 0 + 3 + 0 + NO + + NO + YES + + + + 268 + {{17, 20}, {366, 17}} + + + _NS:3939 + YES + + 67108864 + 138674176 + No additional configuration required. + + _NS:3939 + + + + + NO + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{17, 60}, {366, 28}} + + + _NS:3939 + YES + + 67108864 + 272760832 + This is an input device. You can set up this device through your Input Preferences. + + _NS:3939 + + + + + NO + + + + 268 + {{125, 12}, {150, 32}} + + + _NS:610 + YES + + 67108864 + 134217728 + Input Preferences + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{25, 100}, {350, 200}} + + + _NS:2165 + YES + + 0 + 33554432 + + NSImage + Image_Piano + + _NS:2165 + 0 + 0 + 0 + NO + + NO + YES + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + {{124, 12}, {150, 32}} + + + _NS:610 + YES + + 67108864 + 134217728 + Input Preferences + + _NS:610 + + -2038284288 + 129 + + + 200 + 25 + + NO + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{51, 96}, {297, 204}} + + + _NS:2165 + YES + + 0 + 33554432 + + NSImage + Image_PaddleController + + _NS:2165 + 0 + 3 + 0 + NO + + NO + YES + + + + 268 + {{17, 60}, {366, 28}} + + + _NS:3939 + YES + + 67108864 + 272760832 + This is an input device. You can set up this device through your Input Preferences. + + _NS:3939 + + + + + NO + + + {400, 320} + + + _NS:1109 + NSView + + + + 268 + + YES + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{60, 70}, {279, 214}} + + _NS:2165 + YES + + 67108864 + 33816576 + + NSImage + Image_PassME + + + _NS:2165 + 0 + 3 + 0 + NO + + NO + YES + + + + 268 + {{17, 20}, {366, 17}} + + _NS:3939 + YES + + 67108864 + 138674176 + No additional configuration required. + + _NS:3939 + + + + + NO + + + {400, 320} + _NS:1109 + NSView + 279 2 @@ -23073,6 +25146,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA useInputForScalar useInputForSender deviceInfoSummary + isElementAnalog YES @@ -23129,6 +25203,57 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA YES + + + YES + slot2StatusText + autoSelectedDeviceText + mpcfFolderName + mpcfFolderPath + mpcfDiskImageName + mpcfDiskImagePath + gbaCartridgeName + gbaCartridgePath + deviceManager.slot2StatusText + gbaSRamName + gbaSRamPath + + Slot2WindowDelegate + YES + + + + + YES + name + description + deviceID + type + enabled + + CocoaSlot2Device + YES + + YES + YES + YES + + + + YES + supportsForceFeedback + isForceFeedbackEnabled + manufacturerName + productName + serialNumber + + InputHIDDevice + YES + + YES + YES + YES + YES @@ -23256,30 +25381,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 1103 - - - showGeneralView: - - - - 1683 - - - - showDisplayView: - - - - 1684 - - - - showInputView: - - - - 1685 - window @@ -23416,14 +25517,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 2251 - - - showSoundView: - - - - 2252 - updateVolumeIcon: @@ -23504,14 +25597,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 2380 - - - showEmulationView: - - - - 2381 - selectSPUSyncMode: @@ -32878,6 +34963,866 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 8330 + + + makeKeyAndOrderFront: + + + + 8353 + + + + delegate + + + + 8357 + + + + deviceListController + + + + 8358 + + + + deviceListTable + + + + 8360 + + + + delegate + + + + 8361 + + + + applySettings: + + + + 8362 + + + + value: arrangedObjects.name + + + + + + value: arrangedObjects.name + value + arrangedObjects.name + + NSAllowsEditingMultipleValuesSelection + + + 2 + + + 8464 + + + + viewAuto + + + + 8465 + + + + viewCompactFlash + + + + 8466 + + + + viewGBACartridge + + + + 8467 + + + + viewGuitarGrip + + + + 8468 + + + + viewMemoryExpansionPack + + + + 8469 + + + + viewNone + + + + 8470 + + + + viewPaddleController + + + + 8471 + + + + viewPassME + + + + 8472 + + + + viewPiano + + + + 8473 + + + + viewRumblePak + + + + 8474 + + + + viewNoSelection + + + + 8475 + + + + deviceSettingsBox + + + + 8476 + + + + enabled: arrangedObjects.enabled + + + + + + enabled: arrangedObjects.enabled + enabled + arrangedObjects.enabled + 2 + + + 8506 + + + + enabled: selection.enabled + + + + + + enabled: selection.enabled + enabled + selection.enabled + 2 + + + 8508 + + + + slot2Window + + + + 8509 + + + + window + + + + 8510 + + + + value: arrangedObjects.isForceFeedbackEnabled + + + + + + value: arrangedObjects.isForceFeedbackEnabled + value + arrangedObjects.isForceFeedbackEnabled + 2 + + + 8528 + + + + value: arrangedObjects.productName + + + + + + value: arrangedObjects.productName + value + arrangedObjects.productName + + NSConditionallySetsEditable + + + 2 + + + 8529 + + + + enabled: arrangedObjects.supportsForceFeedback + + + + + + enabled: arrangedObjects.supportsForceFeedback + enabled + arrangedObjects.supportsForceFeedback + 2 + + + 8530 + + + + enabled: arrangedObjects.supportsForceFeedback + + + + + + enabled: arrangedObjects.supportsForceFeedback + enabled + arrangedObjects.supportsForceFeedback + 2 + + + 8531 + + + + inputDeviceListController + + + + 8532 + + + + testRumble: + + + + 8533 + + + + enabled: selection.mpcfDiskImagePath + + + + + + enabled: selection.mpcfDiskImagePath + enabled + selection.mpcfDiskImagePath + + NSValueTransformerName + NSIsNotNil + + 2 + + + 8543 + + + + content + + + + 8549 + + + + title: selection.mpcfDiskImageName + + + + + + title: selection.mpcfDiskImageName + title + selection.mpcfDiskImageName + 2 + + + 8551 + + + + viewUnsupported + + + + 8555 + + + + enabled: selection.isRomLoading + + + + + + enabled: selection.isRomLoading + enabled + selection.isRomLoading + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 8564 + + + + animate: selection.isRomLoading + + + + + + animate: selection.isRomLoading + animate + selection.isRomLoading + 2 + + + 8565 + + + + value: selection.romNameAndSerialInfo + + + + + + value: selection.romNameAndSerialInfo + value + selection.romNameAndSerialInfo + 2 + + + 8566 + + + + value: selection.iconImage + + + + + + value: selection.iconImage + value + selection.iconImage + 2 + + + 8567 + + + + slot2WindowController + + + + 8574 + + + + value: selection.autoSelectedDeviceText + + + + + + value: selection.autoSelectedDeviceText + value + selection.autoSelectedDeviceText + 2 + + + 8577 + + + + title: selection.mpcfFolderName + + + + + + title: selection.mpcfFolderName + title + selection.mpcfFolderName + 2 + + + 8586 + + + + mpcfFileSearchMenu + + + + 8587 + + + + selectedTag: values.Slot2_MPCF_PathOption + + + + + + selectedTag: values.Slot2_MPCF_PathOption + selectedTag + values.Slot2_MPCF_PathOption + 2 + + + 8589 + + + + chooseMPCFPath: + + + + 8593 + + + + chooseMPCFPath: + + + + 8594 + + + + chooseMPCFPath: + + + + 8595 + + + + value: selection.deviceInfoSummary + + + + + + value: selection.deviceInfoSummary + value + selection.deviceInfoSummary + 2 + + + 8600 + + + + value: selection.useInputForScalar + + + + + + value: selection.useInputForScalar + value + selection.useInputForScalar + 2 + + + 8634 + + + + inputSettingsPaddleController + + + + 8637 + + + + closeSettingsSheet: + + + + 8642 + + + + closeSettingsSheet: + + + + 8643 + + + + value: selection.intValue1 + + + + + + value: selection.intValue1 + value + selection.intValue1 + 2 + + + 8645 + + + + value: selection.intValue1 + + + + + + value: selection.intValue1 + value + selection.intValue1 + 2 + + + 8646 + + + + enabled: selection.useInputForScalar + + + + + + enabled: selection.useInputForScalar + enabled + selection.useInputForScalar + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 8647 + + + + enabled: selection.useInputForScalar + + + + + + enabled: selection.useInputForScalar + enabled + selection.useInputForScalar + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 8648 + + + + enabled: selection.isElementAnalog + + + + + + enabled: selection.isElementAnalog + enabled + selection.isElementAnalog + 2 + + + 8649 + + + + prefWindowDelegate + + + + 8650 + + + + showInputPreferences: + + + + 8659 + + + + showInputPreferences: + + + + 8662 + + + + showInputPreferences: + + + + 8665 + + + + toolbar + + + + 8666 + + + + changePrefView: + + + + 8671 + + + + changePrefView: + + + + 8672 + + + + changePrefView: + + + + 8673 + + + + changePrefView: + + + + 8674 + + + + changePrefView: + + + + 8675 + + + + value: selection.deviceManager.slot2StatusText + + + + + + value: selection.deviceManager.slot2StatusText + value + selection.deviceManager.slot2StatusText + 2 + + + 8676 + + + + value: selection.gbaCartridgeName + + + + + + value: selection.gbaCartridgeName + value + selection.gbaCartridgeName + 2 + + + 8702 + + + + value: selection.gbaSRamName + + + + + + value: selection.gbaSRamName + value + selection.gbaSRamName + 2 + + + 8703 + + + + chooseGbaCartridgePath: + + + + 8704 + + + + chooseGbaSRamPath: + + + + 8705 + + + + clearSRamPath: + + + + 8708 + + + + enabled: selection.mpcfFolderPath + + + + + + enabled: selection.mpcfFolderPath + enabled + selection.mpcfFolderPath + + NSValueTransformerName + NSIsNotNil + + 2 + + + 8709 + + + + enabled: selection.gbaCartridgePath + + + + + + enabled: selection.gbaCartridgePath + enabled + selection.gbaCartridgePath + + NSValueTransformerName + NSIsNotNil + + 2 + + + 8711 + + + + enabled: selection.gbaSRamPath + + + + + + enabled: selection.gbaSRamPath + enabled + selection.gbaSRamPath + + NSValueTransformerName + NSIsNotNil + + 2 + + + 8713 + @@ -33223,6 +36168,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA + @@ -44777,6 +47723,1134 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA + + 8331 + + + YES + + + + + + 8332 + + + YES + + + + + + + + + 8333 + + + YES + + + + + + + + + 8334 + + + + + 8335 + + + + + 8336 + + + YES + + + + + + 8338 + + + YES + + + + + + 8341 + + + + + 8343 + + + YES + + + + + + 8344 + + + + + 8351 + + + + + 8352 + + + + + 8354 + + + SLOT-2 Device Array Controller + + + 8345 + + + YES + + + + + + 8346 + + + + + 8356 + + + SLOT-2 Window Delegate + + + 8365 + + + YES + + + + + + 8363 + + + YES + + + + + + 8364 + + + + + 8366 + + + YES + + + + + + SLOT-2 None View + + + 8367 + + + YES + + + + + + 8368 + + + + + 8402 + + + YES + + + + + + + SLOT-2 Rumble Pak View + + + 8405 + + + YES + + + + + + + + + + + SLOT-2 GBA Cartridge View + + + 8369 + + + YES + + + + + SLOT-2 MPCF Flash Card View + + + 8377 + + + YES + + + + + + 8387 + + + YES + + + + + + 8388 + + + + + 8378 + + + YES + + + + + + 8379 + + + YES + + + + + + + + + + + + 8380 + + + + + 8381 + + + + + 8382 + + + + + 8383 + + + + + 8384 + + + + + 8385 + + + + + 8386 + + + + + 8408 + + + YES + + + + + + + + + + + + SLOT-2 Auto View + + + 8409 + + + YES + + + + + + 8410 + + + + + 8411 + + + YES + + + + + + 8412 + + + + + 8413 + + + YES + + + + + + 8414 + + + + + 8415 + + + YES + + + + + + 8416 + + + + + 8427 + + + + + 8428 + + + YES + + + + + + + + + + SLOT-2 Guitar Grip View + + + 8433 + + + YES + + + + + + 8434 + + + + + 8435 + + + YES + + + + + + 8436 + + + + + 8437 + + + YES + + + + + + 8438 + + + + + 8439 + + + YES + + + + + + 8440 + + + + + 8443 + + + YES + + + + + + 8444 + + + + + 8445 + + + YES + + + + + SLOT-2 Memory Expansion Pack View + + + 8446 + + + YES + + + + + + 8447 + + + + + 8448 + + + YES + + + + + + SLOT-2 Piano View + + + 8451 + + + YES + + + + + + SLOT-2 Paddle Controller View + + + 8454 + + + YES + + + + + SLOT-2 PassME View + + + 8455 + + + YES + + + + + + 8456 + + + + + 8457 + + + YES + + + + + + 8458 + + + + + 8477 + + + YES + + + + + + 8478 + + + + + 8499 + + + YES + + + + + + 8500 + + + + + 8501 + + + YES + + + + + + 8502 + + + + + 8512 + + + YES + + + + + + + + + 8513 + + + + + 8514 + + + + + 8515 + + + YES + + + + + + + 8517 + + + YES + + + + + + 8518 + + + YES + + + + + + 8519 + + + + + 8523 + + + + + 8524 + + + + + 8525 + + + YES + + + + + + 8526 + + + + + 8527 + + + Input Device List Array Controller + + + 8535 + + + SLOT-2 Window Controller + + + 8552 + + + YES + + + + SLOT-2 Unsupported View + + + 8553 + + + YES + + + + + + 8554 + + + + + 8557 + + + YES + + + + + + 8558 + + + YES + + + + + + 8559 + + + + + 8560 + + + + + 8561 + + + + + 8568 + + + + + 8569 + + + YES + + + + + + 8570 + + + + + 8571 + + + YES + + + + + + 8572 + + + + + 8575 + + + YES + + + + + + 8576 + + + + + 8578 + + + YES + + + + + + 8579 + + + + + 8596 + + + YES + + + + + + 8597 + + + YES + + + + + + + + + + + 8598 + + + YES + + + + + + 8599 + + + + + 8612 + + + YES + + + + + + + 8613 + + + YES + + + + + + 8614 + + + + + 8629 + + + YES + + + + + + 8630 + + + + + 8608 + + + YES + + + + + + 8609 + + + YES + + + + + + 8610 + + + YES + + + + + + 8611 + + + + + 8635 + + + + + 8638 + + + YES + + + + + + 8639 + + + YES + + + + + + 8640 + + + + + 8641 + + + + + 8653 + + + YES + + + + + + 8654 + + + + + 8655 + + + YES + + + + + + 8656 + + + + + 8657 + + + YES + + + + + + 8658 + + + + + 8660 + + + YES + + + + + + 8661 + + + + + 8663 + + + YES + + + + + + 8664 + + + + + 8667 + + + YES + + + + + + 8668 + + + + + 8669 + + + YES + + + + + + 8670 + + + + + 8677 + + + YES + + + + + + 8678 + + + + + 8679 + + + YES + + + + + + 8680 + + + + + 8681 + + + YES + + + + + + 8682 + + + + + 8687 + + + YES + + + + + + 8688 + + + YES + + + + + + 8689 + + + YES + + + + + + 8690 + + + + + 8691 + + + + + 8692 + + + + + 8706 + + + YES + + + + + + 8707 + + + @@ -44912,10 +48986,13 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 1650.IBPluginDependency 1651.IBPluginDependency 1679.IBPluginDependency + 1679.designableToolbarItemIdentifier 1679.toolbarItem.selectable 1680.IBPluginDependency + 1680.designableToolbarItemIdentifier 1680.toolbarItem.selectable 1681.IBPluginDependency + 1681.designableToolbarItemIdentifier 1681.toolbarItem.selectable 1682.IBPluginDependency 1721.IBPluginDependency @@ -44951,6 +49028,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 2154.IBPluginDependency 2155.IBPluginDependency 2246.IBPluginDependency + 2246.designableToolbarItemIdentifier 2246.toolbarItem.selectable 2248.IBEditorWindowLastContentRect 2248.IBPluginDependency @@ -44992,6 +49070,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 2339.IBEditorWindowLastContentRect 2339.IBPluginDependency 2340.IBPluginDependency + 2340.designableToolbarItemIdentifier 2340.toolbarItem.selectable 2341.IBPluginDependency 2342.IBPluginDependency @@ -45200,6 +49279,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 3480.IBPluginDependency 3481.IBPluginDependency 3482.IBPluginDependency + 3488.IBEditorWindowLastContentRect 3488.IBPluginDependency 3488.IBWindowTemplateEditedContentRect 3488.NSWindowTemplate.visibleAtLaunch @@ -45511,6 +49591,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 4116.IBPluginDependency 4179.IBPluginDependency 4180.IBPluginDependency + 4181.IBEditorWindowLastContentRect 4181.IBPluginDependency 4181.IBWindowTemplateEditedContentRect 4181.NSWindowTemplate.visibleAtLaunch @@ -45581,7 +49662,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 4581.IBPluginDependency 4582.IBPluginDependency 4583.IBPluginDependency + 4583.IBViewBoundsToFrameTransform 4584.IBPluginDependency + 4585.IBEditorWindowLastContentRect 4585.IBPluginDependency 4586.IBPluginDependency 4587.IBPluginDependency @@ -45719,6 +49802,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 5068.IBAttributePlaceholdersKey 5068.IBPluginDependency 5069.IBPluginDependency + 5080.IBEditorWindowLastContentRect 5080.IBPluginDependency 5080.IBWindowTemplateEditedContentRect 5080.NSWindowTemplate.visibleAtLaunch @@ -45826,10 +49910,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 5687.IBPluginDependency 5688.IBPluginDependency 5689.IBPluginDependency + 57.IBEditorWindowLastContentRect 57.IBPluginDependency 5702.IBPluginDependency 5713.IBPluginDependency 575.IBPluginDependency + 576.IBEditorWindowLastContentRect 576.IBPluginDependency 578.IBPluginDependency 58.IBPluginDependency @@ -45903,6 +49989,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 627.IBWindowTemplateEditedContentRect 627.NSWindowTemplate.visibleAtLaunch 628.IBPluginDependency + 629.IBEditorWindowLastContentRect 629.IBPluginDependency 6295.IBPluginDependency 6295.IBWindowTemplateEditedContentRect @@ -46051,18 +50138,22 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 715.IBPluginDependency 7168.IBPluginDependency 7169.IBPluginDependency + 7171.IBEditorWindowLastContentRect 7171.IBPluginDependency 7171.IBWindowTemplateEditedContentRect 7171.NSWindowTemplate.visibleAtLaunch 7172.IBPluginDependency + 7173.IBEditorWindowLastContentRect 7173.IBPluginDependency 7173.IBWindowTemplateEditedContentRect 7173.NSWindowTemplate.visibleAtLaunch 7174.IBPluginDependency + 7175.IBEditorWindowLastContentRect 7175.IBPluginDependency 7175.IBWindowTemplateEditedContentRect 7175.NSWindowTemplate.visibleAtLaunch 7176.IBPluginDependency + 7179.IBEditorWindowLastContentRect 7179.IBPluginDependency 7179.IBWindowTemplateEditedContentRect 7179.NSWindowTemplate.visibleAtLaunch @@ -46098,6 +50189,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 7222.IBPluginDependency 7223.IBPluginDependency 7224.IBPluginDependency + 7225.IBEditorWindowLastContentRect 7225.IBPluginDependency 7225.IBWindowTemplateEditedContentRect 7225.NSWindowTemplate.visibleAtLaunch @@ -46141,6 +50233,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 7291.IBPluginDependency 7292.IBPluginDependency 7293.IBPluginDependency + 7293.IBViewBoundsToFrameTransform 7294.IBNumberFormatterBehaviorMetadataKey 7294.IBNumberFormatterLocalizesFormatMetadataKey 7294.IBPluginDependency @@ -46150,6 +50243,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 7301.IBPluginDependency 7302.IBPluginDependency 7305.IBPluginDependency + 7305.IBViewBoundsToFrameTransform 7308.IBPluginDependency 7309.IBPluginDependency 7312.IBPluginDependency @@ -46161,10 +50255,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 7354.IBPluginDependency 7355.IBPluginDependency 7358.IBPluginDependency + 7358.IBViewBoundsToFrameTransform 7359.IBPluginDependency 7392.IBPluginDependency 7393.IBPluginDependency 7395.IBPluginDependency + 7395.IBViewBoundsToFrameTransform 7396.IBPluginDependency 7398.IBPluginDependency 7399.IBPluginDependency @@ -46182,7 +50278,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 7442.IBPluginDependency 7443.IBPluginDependency 7445.IBPluginDependency + 7445.IBViewBoundsToFrameTransform 7446.IBPluginDependency + 7449.IBEditorWindowLastContentRect 7449.IBPluginDependency 7449.IBWindowTemplateEditedContentRect 7449.NSWindowTemplate.visibleAtLaunch @@ -46276,6 +50374,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 7625.IBPluginDependency 7666.CustomClassName 7666.IBPluginDependency + 7707.IBEditorWindowLastContentRect 7707.IBPluginDependency 7707.IBWindowTemplateEditedContentRect 7707.NSWindowTemplate.visibleAtLaunch @@ -46407,12 +50506,16 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 796.NSWindowTemplate.visibleAtLaunch 797.IBPluginDependency 7971.IBPluginDependency + 7971.IBViewBoundsToFrameTransform 7972.IBPluginDependency + 7972.IBViewBoundsToFrameTransform 7973.IBPluginDependency 7974.IBPluginDependency 7978.IBPluginDependency + 7978.IBViewBoundsToFrameTransform 7987.IBPluginDependency 7988.IBPluginDependency + 7989.IBEditorWindowLastContentRect 7989.IBPluginDependency 7993.IBPluginDependency 7994.IBPluginDependency @@ -46434,8 +50537,11 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 8024.IBPluginDependency 8025.IBPluginDependency 8030.IBPluginDependency + 8030.IBViewBoundsToFrameTransform 8031.IBPluginDependency + 8031.IBViewBoundsToFrameTransform 8032.IBPluginDependency + 8032.IBViewBoundsToFrameTransform 8033.IBPluginDependency 8034.IBPluginDependency 8043.IBPluginDependency @@ -46559,21 +50665,261 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA 8322.IBViewBoundsToFrameTransform 8323.IBPluginDependency 833.IBPluginDependency + 8331.IBEditorWindowLastContentRect + 8331.IBPluginDependency + 8331.IBWindowTemplateEditedContentRect + 8331.NSWindowTemplate.visibleAtLaunch + 8332.IBPluginDependency + 8333.IBPluginDependency + 8333.IBViewBoundsToFrameTransform + 8334.IBPluginDependency + 8335.IBPluginDependency + 8336.IBPluginDependency + 8338.IBPluginDependency 834.IBPluginDependency + 8341.IBPluginDependency + 8343.IBPluginDependency + 8343.IBViewBoundsToFrameTransform + 8344.IBPluginDependency + 8344.IBViewBoundsToFrameTransform + 8345.IBAttributePlaceholdersKey + 8345.IBPluginDependency + 8345.IBViewBoundsToFrameTransform + 8346.IBPluginDependency 835.IBPluginDependency + 8352.IBPluginDependency + 8354.IBPluginDependency + 8356.IBPluginDependency 836.IBPluginDependency + 8363.IBPluginDependency + 8363.IBViewBoundsToFrameTransform + 8364.IBPluginDependency + 8365.IBPluginDependency + 8365.IBViewBoundsToFrameTransform + 8366.IBEditorWindowLastContentRect + 8366.IBPluginDependency + 8366.IBViewBoundsToFrameTransform + 8367.IBPluginDependency + 8367.IBViewBoundsToFrameTransform + 8368.IBPluginDependency + 8369.IBEditorWindowLastContentRect + 8369.IBPluginDependency + 8369.IBViewBoundsToFrameTransform + 8377.IBPluginDependency + 8377.IBViewBoundsToFrameTransform + 8378.IBPluginDependency + 8379.IBEditorWindowLastContentRect + 8379.IBPluginDependency + 8380.IBPluginDependency + 8381.IBPluginDependency + 8382.IBPluginDependency + 8383.IBPluginDependency + 8384.IBPluginDependency + 8385.IBPluginDependency + 8386.IBPluginDependency + 8387.IBPluginDependency + 8387.IBViewBoundsToFrameTransform + 8388.IBPluginDependency + 8402.IBEditorWindowLastContentRect + 8402.IBPluginDependency + 8402.IBViewBoundsToFrameTransform + 8405.IBEditorWindowLastContentRect + 8405.IBPluginDependency + 8405.IBViewBoundsToFrameTransform + 8408.IBEditorWindowLastContentRect + 8408.IBPluginDependency + 8408.IBViewBoundsToFrameTransform + 8409.IBPluginDependency + 8409.IBViewBoundsToFrameTransform + 8410.IBPluginDependency + 8411.IBPluginDependency + 8411.IBViewBoundsToFrameTransform + 8412.IBPluginDependency + 8413.IBPluginDependency + 8413.IBViewBoundsToFrameTransform + 8414.IBPluginDependency + 8415.IBPluginDependency + 8415.IBViewBoundsToFrameTransform + 8416.IBPluginDependency + 8427.IBPluginDependency + 8427.IBViewBoundsToFrameTransform + 8428.IBEditorWindowLastContentRect + 8428.IBPluginDependency + 8428.IBViewBoundsToFrameTransform 843.IBPluginDependency + 8433.IBPluginDependency + 8433.IBViewBoundsToFrameTransform + 8434.IBPluginDependency + 8435.IBPluginDependency + 8435.IBViewBoundsToFrameTransform + 8436.IBPluginDependency + 8437.IBPluginDependency + 8437.IBViewBoundsToFrameTransform + 8438.IBPluginDependency + 8439.IBPluginDependency + 8439.IBViewBoundsToFrameTransform 844.IBPluginDependency + 8440.IBPluginDependency + 8443.IBPluginDependency + 8443.IBViewBoundsToFrameTransform + 8444.IBPluginDependency + 8445.IBEditorWindowLastContentRect + 8445.IBPluginDependency + 8445.IBViewBoundsToFrameTransform + 8446.IBPluginDependency + 8446.IBViewBoundsToFrameTransform + 8447.IBPluginDependency + 8448.IBEditorWindowLastContentRect + 8448.IBPluginDependency + 8448.IBViewBoundsToFrameTransform 845.IBPluginDependency + 8451.IBEditorWindowLastContentRect + 8451.IBPluginDependency + 8451.IBViewBoundsToFrameTransform + 8454.IBEditorWindowLastContentRect + 8454.IBPluginDependency + 8454.IBViewBoundsToFrameTransform + 8455.IBPluginDependency + 8455.IBViewBoundsToFrameTransform + 8456.IBPluginDependency + 8457.IBPluginDependency + 8457.IBViewBoundsToFrameTransform + 8458.IBPluginDependency 846.IBPluginDependency + 8477.IBPluginDependency + 8477.IBViewBoundsToFrameTransform + 8478.IBPluginDependency + 8499.IBPluginDependency + 8499.IBViewBoundsToFrameTransform 850.IBPluginDependency + 8500.IBPluginDependency + 8501.IBAttributePlaceholdersKey + 8501.IBPluginDependency + 8501.IBViewBoundsToFrameTransform + 8502.IBPluginDependency + 8512.IBPluginDependency + 8512.IBViewBoundsToFrameTransform + 8513.IBPluginDependency + 8514.IBPluginDependency + 8515.IBPluginDependency + 8517.IBPluginDependency + 8518.IBPluginDependency + 8519.IBPluginDependency + 8523.IBPluginDependency + 8525.IBPluginDependency + 8525.IBViewBoundsToFrameTransform + 8526.IBPluginDependency + 8527.IBPluginDependency + 8535.IBPluginDependency 855.IBPluginDependency + 8552.IBEditorWindowLastContentRect + 8552.IBPluginDependency + 8552.IBViewBoundsToFrameTransform + 8553.IBPluginDependency + 8553.IBViewBoundsToFrameTransform + 8554.IBPluginDependency + 8557.IBPluginDependency + 8557.IBViewBoundsToFrameTransform + 8558.IBPluginDependency + 8558.IBViewBoundsToFrameTransform + 8559.IBPluginDependency + 8559.IBViewBoundsToFrameTransform + 8560.IBPluginDependency + 8561.IBPluginDependency + 8568.IBPluginDependency + 8568.IBViewBoundsToFrameTransform + 8569.IBPluginDependency + 8569.IBViewBoundsToFrameTransform + 8570.IBPluginDependency + 8571.IBPluginDependency + 8571.IBViewBoundsToFrameTransform + 8572.IBPluginDependency + 8575.IBPluginDependency + 8575.IBViewBoundsToFrameTransform + 8576.IBPluginDependency + 8578.IBPluginDependency + 8578.IBViewBoundsToFrameTransform + 8579.IBPluginDependency + 8596.IBEditorWindowLastContentRect + 8596.IBPluginDependency + 8596.IBWindowTemplateEditedContentRect + 8596.NSWindowTemplate.visibleAtLaunch + 8597.IBPluginDependency + 8598.IBPluginDependency + 8598.IBViewBoundsToFrameTransform + 8599.IBPluginDependency + 8608.IBPluginDependency + 8608.IBViewBoundsToFrameTransform + 8609.IBPluginDependency 861.IBPluginDependency 861.IBWindowTemplateEditedContentRect 861.NSWindowTemplate.visibleAtLaunch + 8610.IBPluginDependency + 8610.IBViewBoundsToFrameTransform + 8611.IBPluginDependency + 8612.IBPluginDependency + 8612.IBViewBoundsToFrameTransform + 8613.IBPluginDependency + 8613.IBViewBoundsToFrameTransform + 8614.IBPluginDependency 862.IBPluginDependency + 8629.IBPluginDependency + 8629.IBViewBoundsToFrameTransform + 8630.IBPluginDependency + 8635.IBNumberFormatterBehaviorMetadataKey + 8635.IBNumberFormatterLocalizesFormatMetadataKey + 8635.IBNumberFormatterSampleNumberKey + 8635.IBPluginDependency + 8638.IBPluginDependency + 8638.IBViewBoundsToFrameTransform + 8639.IBPluginDependency + 8639.IBViewBoundsToFrameTransform + 8640.IBPluginDependency + 8641.IBPluginDependency 865.IBPluginDependency + 8653.IBPluginDependency + 8653.IBViewBoundsToFrameTransform + 8654.IBPluginDependency + 8655.IBPluginDependency + 8655.IBViewBoundsToFrameTransform + 8656.IBPluginDependency + 8657.IBPluginDependency + 8657.IBViewBoundsToFrameTransform + 8658.IBPluginDependency 866.IBPluginDependency + 8660.IBPluginDependency + 8660.IBViewBoundsToFrameTransform + 8661.IBPluginDependency + 8663.IBPluginDependency + 8663.IBViewBoundsToFrameTransform + 8664.IBPluginDependency + 8667.IBPluginDependency + 8667.IBViewBoundsToFrameTransform + 8668.IBPluginDependency + 8669.IBPluginDependency + 8669.IBViewBoundsToFrameTransform + 8670.IBPluginDependency + 8677.IBPluginDependency + 8677.IBViewBoundsToFrameTransform + 8678.IBPluginDependency + 8679.IBPluginDependency + 8679.IBViewBoundsToFrameTransform + 8680.IBPluginDependency + 8681.IBPluginDependency + 8681.IBViewBoundsToFrameTransform + 8682.IBPluginDependency + 8687.IBPluginDependency + 8687.IBViewBoundsToFrameTransform + 8688.IBPluginDependency + 8688.IBViewBoundsToFrameTransform + 8689.IBPluginDependency + 8689.IBViewBoundsToFrameTransform + 8690.IBPluginDependency + 8691.IBPluginDependency + 8692.IBPluginDependency + 8706.IBPluginDependency + 8706.IBViewBoundsToFrameTransform + 8707.IBPluginDependency 872.IBPluginDependency 875.IBPluginDependency 876.IBPluginDependency @@ -46850,10 +51196,13 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + Input com.apple.InterfaceBuilder.CocoaPlugin + General com.apple.InterfaceBuilder.CocoaPlugin + Display com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -46889,6 +51238,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + Sound {{903, 745}, {400, 373}} com.apple.InterfaceBuilder.CocoaPlugin @@ -46972,6 +51322,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {{343, 426}, {554, 373}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + Emulation com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -47235,7 +51586,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{189, 918}, {512, 20}} + {{847, 1136}, {512, 20}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -47287,8 +51638,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{184, 141}, {640, 480}} com.apple.InterfaceBuilder.CocoaPlugin - {{502, 517}, {640, 480}} + {{184, 141}, {640, 480}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -47969,8 +52321,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{126, 670}, {305, 315}} com.apple.InterfaceBuilder.CocoaPlugin - {{999, 689}, {305, 315}} + {{126, 670}, {305, 315}} com.apple.InterfaceBuilder.CocoaPlugin @@ -48053,7 +52406,11 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCmAAAw9QAAA + com.apple.InterfaceBuilder.CocoaPlugin + {{63, 775}, {320, 290}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -48255,8 +52612,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{0, 729}, {500, 416}} com.apple.InterfaceBuilder.CocoaPlugin - {{1063, 215}, {500, 416}} + {{0, 729}, {500, 416}} {500, 272} @@ -48385,10 +52743,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{859, 953}, {203, 183}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{1035, 893}, {220, 243}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -48541,11 +52901,12 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{42, 932}, {400, 100}} + {{711, 876}, {400, 100}} com.apple.InterfaceBuilder.CocoaPlugin - {{42, 932}, {400, 100}} + {{711, 876}, {400, 100}} com.apple.InterfaceBuilder.CocoaPlugin + {{603, 976}, {616, 0}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin {{962, 321}, {580, 592}} @@ -48736,20 +53097,24 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{934, 298}, {350, 263}} com.apple.InterfaceBuilder.CocoaPlugin - {{1237, 579}, {350, 263}} + {{934, 298}, {350, 263}} com.apple.InterfaceBuilder.CocoaPlugin + {{84, 906}, {350, 125}} com.apple.InterfaceBuilder.CocoaPlugin - {{1202, 1031}, {350, 125}} + {{84, 906}, {350, 125}} com.apple.InterfaceBuilder.CocoaPlugin + {{42, 810}, {620, 267}} com.apple.InterfaceBuilder.CocoaPlugin - {{976, 297}, {620, 267}} + {{42, 810}, {620, 267}} com.apple.InterfaceBuilder.CocoaPlugin + {{789, 354}, {516, 283}} com.apple.InterfaceBuilder.CocoaPlugin - {{1085, 723}, {516, 283}} + {{789, 354}, {516, 283}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -48811,8 +53176,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{105, 883}, {350, 125}} com.apple.InterfaceBuilder.CocoaPlugin - {{1202, 877}, {350, 125}} + {{105, 883}, {350, 125}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -48854,6 +53220,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + AUGIAABCYAAAA + com.apple.InterfaceBuilder.CocoaPlugin @@ -48863,6 +53232,30 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDcAAAwigAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAw0IAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDEAAAwigAAA + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -48880,24 +53273,13 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAw4KAAA + com.apple.InterfaceBuilder.CocoaPlugin + {{21, 940}, {467, 160}} com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - {{1127, 996}, {467, 160}} + {{21, 940}, {467, 160}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49031,8 +53413,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin InputProfileController com.apple.InterfaceBuilder.CocoaPlugin + {{147, 847}, {452, 115}} com.apple.InterfaceBuilder.CocoaPlugin - {{853, 403}, {452, 115}} + {{147, 847}, {452, 115}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49144,9 +53527,9 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - {{342, 490}, {640, 355}} + {{626, 692}, {640, 355}} com.apple.InterfaceBuilder.CocoaPlugin - {{342, 490}, {640, 355}} + {{626, 692}, {640, 355}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49219,6 +53602,22 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + AUGQAABBgAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCSAAAwjAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBkAAAwjAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1043, 700}, {201, 93}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49240,14 +53639,17 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + AUGgAABDzQAAA + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABClgAAw+UAAA + com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABB6AAAw+CAAA + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49404,6 +53806,73 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + {{658, 584}, {640, 448}} + com.apple.InterfaceBuilder.CocoaPlugin + {{658, 584}, {640, 448}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABByAAAw88AAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUNZAABCzAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + AUJkAADB2AAAA + + + ToolTip + + ToolTip + + Applies the selected SLOT-2 device's settings. + + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABEBIAAwpgAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBcAAAwlgAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUGIAABCkgAAA + + {{1218, 623}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwgwAAA + + com.apple.InterfaceBuilder.CocoaPlugin + {{876, 169}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwvAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + {{882, 323}, {366, 123}} com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49413,12 +53882,314 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAww8AAA + + com.apple.InterfaceBuilder.CocoaPlugin + {{552, 661}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{882, 704}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{1200, 262}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwkAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAw5UAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBoAAAw4iAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDjwAAw3cAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUONAABDPwAAA + + {{898, 836}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBYAAAw5MAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBYAAAw14AAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBYAAAwxYAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBYAAAwpwAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABC/gAAw46AAA + + com.apple.InterfaceBuilder.CocoaPlugin + {{911, 632}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwycAAA + + com.apple.InterfaceBuilder.CocoaPlugin + {{903, 433}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{913, 679}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{910, 193}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwkAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUHIAABCwgAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUJwAABClgAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwsgAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + YES + + + YES + + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDhYAAwigAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBoAAAw3YAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAw4MAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{917, 616}, {400, 320}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwy4AAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AcIwAABDLAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCsgAAw4YAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDjYAAwz8AAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUFAAABC1gAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCsgAAw5UAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwsYAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDOwAAwsYAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUGgAABCzAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + {{961, 683}, {350, 249}} + com.apple.InterfaceBuilder.CocoaPlugin + {{961, 683}, {350, 249}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwzsAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCyAAAwfgAAA + + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin {{668, 434}, {580, 588}} com.apple.InterfaceBuilder.CocoaPlugin + + AUMuAABBMAAAA + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + AUGIAABBgAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwwwAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBkAAAwyQAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDhoAAwjwAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDLQAAwjwAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwqwAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + AUHYAABCwAAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDbAAAwigAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABC+gAAwywAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDAgAAwhQAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwywAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCygAAwrIAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAw18AAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwsYAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABBiAAAwsYAAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCngAAw1AAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABCpAAAwzcAAA + + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDrgAAwx0AAA + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + P4AAAL+AAABDHgAAww8AAA + + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -49534,7 +54305,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA - 8330 + 8713 @@ -49603,6 +54374,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA cheatListWindow cheatWindowController emuControlController + inputDeviceListController inputManager inputPrefsView mLoadStateSlot @@ -49612,6 +54384,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA prefWindow prefWindowController romInfoPanelController + slot2Window troubleshootingWindow @@ -49627,6 +54400,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA NSWindow NSObjectController NSObjectController + NSArrayController InputManager InputPrefsView NSMenu @@ -49637,6 +54411,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA NSObjectController NSObjectController NSWindow + NSWindow @@ -49654,6 +54429,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA cheatListWindow cheatWindowController emuControlController + inputDeviceListController inputManager inputPrefsView mLoadStateSlot @@ -49663,6 +54439,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA prefWindow prefWindowController romInfoPanelController + slot2Window troubleshootingWindow @@ -49711,6 +54488,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA emuControlController NSObjectController + + inputDeviceListController + NSArrayController + inputManager InputManager @@ -49747,6 +54528,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA romInfoPanelController NSObjectController + + slot2Window + NSWindow + troubleshootingWindow NSWindow @@ -50535,6 +55320,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA saveFileMigrationSheet saveStatePrecloseSheet slot1ManagerWindow + slot2WindowController YES @@ -50551,6 +55337,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA NSWindow NSWindow NSWindow + NSObjectController @@ -50570,6 +55357,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA saveFileMigrationSheet saveStatePrecloseSheet slot1ManagerWindow + slot2WindowController YES @@ -50625,6 +55413,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA slot1ManagerWindow NSWindow + + slot2WindowController + NSObjectController + @@ -50907,6 +55699,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA inputSettingsGPUState inputSettingsLoadStateSlot inputSettingsMicrophone + inputSettingsPaddleController inputSettingsSaveStateSlot inputSettingsSetSpeedLimit inputSettingsTouch @@ -50930,6 +55723,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA NSWindow NSWindow NSWindow + NSWindow @@ -50948,6 +55742,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA inputSettingsGPUState inputSettingsLoadStateSlot inputSettingsMicrophone + inputSettingsPaddleController inputSettingsSaveStateSlot inputSettingsSetSpeedLimit inputSettingsTouch @@ -51003,6 +55798,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA inputSettingsMicrophone NSWindow + + inputSettingsPaddleController + NSWindow + inputSettingsSaveStateSlot NSWindow @@ -51073,6 +55872,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA YES YES + changePrefView: chooseARM7BiosImage: chooseARM9BiosImage: chooseAdvansceneDatabase: @@ -51086,11 +55886,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA selectSPUSyncMode: selectVideoFilterType: setUseBilinear: - showDisplayView: - showEmulationView: - showGeneralView: - showInputView: - showSoundView: updateVolumeIcon: @@ -51110,16 +55905,13 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA id id id - id - id - id - id YES YES + changePrefView: chooseARM7BiosImage: chooseARM9BiosImage: chooseAdvansceneDatabase: @@ -51133,15 +55925,14 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA selectSPUSyncMode: selectVideoFilterType: setUseBilinear: - showDisplayView: - showEmulationView: - showGeneralView: - showInputView: - showSoundView: updateVolumeIcon: YES + + changePrefView: + id + chooseARM7BiosImage: id @@ -51194,26 +55985,6 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA setUseBilinear: id - - showDisplayView: - id - - - showEmulationView: - id - - - showGeneralView: - id - - - showInputView: - id - - - showSoundView: - id - updateVolumeIcon: id @@ -51235,6 +56006,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA prefWindowController previewImageView spuSyncMethodMenu + toolbar viewDisplay viewEmulation viewGeneral @@ -51255,6 +56027,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA NSObjectController NSImageView NSPopUpButton + NSToolbar NSView NSView NSView @@ -51278,6 +56051,7 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA prefWindowController previewImageView spuSyncMethodMenu + toolbar viewDisplay viewEmulation viewGeneral @@ -51331,6 +56105,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA spuSyncMethodMenu NSPopUpButton + + toolbar + NSToolbar + viewDisplay NSView @@ -51362,6 +56140,225 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA userinterface/preferencesWindowDelegate.h + + Slot2WindowDelegate + NSObject + + YES + + YES + applySettings: + chooseGbaCartridgePath: + chooseGbaSRamPath: + chooseMPCFPath: + clearSRamPath: + showInputPreferences: + testRumble: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + applySettings: + chooseGbaCartridgePath: + chooseGbaSRamPath: + chooseMPCFPath: + clearSRamPath: + showInputPreferences: + testRumble: + + + YES + + applySettings: + id + + + chooseGbaCartridgePath: + id + + + chooseGbaSRamPath: + id + + + chooseMPCFPath: + id + + + clearSRamPath: + id + + + showInputPreferences: + id + + + testRumble: + id + + + + + YES + + YES + deviceListController + deviceListTable + deviceSettingsBox + mpcfFileSearchMenu + prefWindowDelegate + viewAuto + viewCompactFlash + viewGBACartridge + viewGuitarGrip + viewMemoryExpansionPack + viewNoSelection + viewNone + viewPaddleController + viewPassME + viewPiano + viewRumblePak + viewUnsupported + window + + + YES + NSArrayController + NSTableView + NSBox + NSPopUpButton + PreferencesWindowDelegate + NSView + NSView + NSView + NSView + NSView + NSView + NSView + NSView + NSView + NSView + NSView + NSView + NSWindow + + + + YES + + YES + deviceListController + deviceListTable + deviceSettingsBox + mpcfFileSearchMenu + prefWindowDelegate + viewAuto + viewCompactFlash + viewGBACartridge + viewGuitarGrip + viewMemoryExpansionPack + viewNoSelection + viewNone + viewPaddleController + viewPassME + viewPiano + viewRumblePak + viewUnsupported + window + + + YES + + deviceListController + NSArrayController + + + deviceListTable + NSTableView + + + deviceSettingsBox + NSBox + + + mpcfFileSearchMenu + NSPopUpButton + + + prefWindowDelegate + PreferencesWindowDelegate + + + viewAuto + NSView + + + viewCompactFlash + NSView + + + viewGBACartridge + NSView + + + viewGuitarGrip + NSView + + + viewMemoryExpansionPack + NSView + + + viewNoSelection + NSView + + + viewNone + NSView + + + viewPaddleController + NSView + + + viewPassME + NSView + + + viewPiano + NSView + + + viewRumblePak + NSView + + + viewUnsupported + NSView + + + window + NSWindow + + + + + IBProjectSource + userinterface/Slot2WindowDelegate.h + + TroubleshootingWindowDelegate NSObject @@ -52331,6 +57328,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA Icon_ShowHUD_420x420 Icon_Speaker_420x420 Icon_VolumeFull_16x16 + Image_MemoryExpansionPak + Image_PaddleController + Image_PassME + Image_Piano NSActionTemplate NSAddTemplate NSApplicationIcon @@ -52367,6 +57368,10 @@ AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA {420, 420} {420, 420} {20, 20} + {360, 136} + {698, 479} + {111.60000000000001, 85.600000000000009} + {350, 200} {15, 15} {8, 8} {512, 512} diff --git a/desmume/src/cocoa/userinterface/EmuControllerDelegate.h b/desmume/src/cocoa/userinterface/EmuControllerDelegate.h index 31ec9018b..443d61ad7 100644 --- a/desmume/src/cocoa/userinterface/EmuControllerDelegate.h +++ b/desmume/src/cocoa/userinterface/EmuControllerDelegate.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013 DeSmuME team + Copyright (C) 2013-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -44,6 +44,7 @@ class AudioSampleBlockGenerator; NSObjectController *cdsCoreController; NSObjectController *cdsSoundController; NSObjectController *cheatWindowController; + NSObjectController *slot2WindowController; NSArrayController *cheatListController; NSArrayController *cheatDatabaseController; @@ -99,6 +100,7 @@ class AudioSampleBlockGenerator; @property (readonly) IBOutlet NSObjectController *cdsCoreController; @property (readonly) IBOutlet NSObjectController *cdsSoundController; @property (readonly) IBOutlet NSObjectController *cheatWindowController; +@property (readonly) IBOutlet NSObjectController *slot2WindowController; @property (readonly) IBOutlet NSArrayController *cheatListController; @property (readonly) IBOutlet NSArrayController *cheatDatabaseController; diff --git a/desmume/src/cocoa/userinterface/EmuControllerDelegate.mm b/desmume/src/cocoa/userinterface/EmuControllerDelegate.mm index ec7bf932d..842bcb5eb 100644 --- a/desmume/src/cocoa/userinterface/EmuControllerDelegate.mm +++ b/desmume/src/cocoa/userinterface/EmuControllerDelegate.mm @@ -1,5 +1,5 @@ /* - Copyright (C) 2013 DeSmuME team + Copyright (C) 2013-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -19,6 +19,7 @@ #import "DisplayWindowController.h" #import "InputManager.h" #import "cheatWindowDelegate.h" +#import "Slot2WindowDelegate.h" #import "cocoa_globals.h" #import "cocoa_cheat.h" @@ -29,6 +30,7 @@ #import "cocoa_input.h" #import "cocoa_output.h" #import "cocoa_rom.h" +#import "cocoa_slot2.h" @implementation EmuControllerDelegate @@ -48,6 +50,7 @@ @synthesize cheatWindowController; @synthesize cheatListController; @synthesize cheatDatabaseController; +@synthesize slot2WindowController; @synthesize slot1ManagerWindow; @synthesize saveFileMigrationSheet; @@ -982,6 +985,19 @@ NSString *audioFilePath = cmdAttr.object[0]; [[cdsCore cdsController] setSelectedAudioFileGenerator:[inputManager audioFileGeneratorFromFilePath:audioFilePath]]; } + else if (controlID == DSControllerState_Paddle) + { + if (cmdAttr.useInputForScalar) + { + const float paddleScalar = cmdAttr.floatValue[0]; + [(Slot2WindowDelegate *)[slot2WindowController content] setPaddleDirectWithScalar:paddleScalar]; + } + else + { + const NSInteger paddleRelativeAdjustment = cmdAttr.intValue[1]; + [(Slot2WindowDelegate *)[slot2WindowController content] setPaddleRelativeWithInteger:paddleRelativeAdjustment]; + } + } else { [[cdsCore cdsController] setControllerState:theState controlID:controlID]; @@ -1537,6 +1553,10 @@ [self setIsWorking:NO]; [self setIsRomLoading:NO]; + Slot2WindowDelegate *slot2WindowDelegate = (Slot2WindowDelegate *)[slot2WindowController content]; + [slot2WindowDelegate setAutoSelectedDeviceText:[[slot2WindowDelegate deviceManager] autoSelectedDeviceName]]; + [[slot2WindowDelegate deviceManager] updateStatus]; + for (DisplayWindowController *windowController in windowList) { [[windowController window] displayIfNeeded]; @@ -1609,6 +1629,10 @@ [self setStatusText:NSSTRING_STATUS_ROM_UNLOADED]; [self setIsWorking:NO]; + Slot2WindowDelegate *slot2WindowDelegate = (Slot2WindowDelegate *)[slot2WindowController content]; + [slot2WindowDelegate setAutoSelectedDeviceText:[[slot2WindowDelegate deviceManager] autoSelectedDeviceName]]; + [[slot2WindowDelegate deviceManager] updateStatus]; + for (DisplayWindowController *windowController in windowList) { [[windowController window] displayIfNeeded]; diff --git a/desmume/src/cocoa/userinterface/InputManager.h b/desmume/src/cocoa/userinterface/InputManager.h index 8dfc5e935..dbeeca4ea 100644 --- a/desmume/src/cocoa/userinterface/InputManager.h +++ b/desmume/src/cocoa/userinterface/InputManager.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013 DeSmuME team + Copyright (C) 2013-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,6 +18,7 @@ #import #include #include +#include #if defined(__ppc__) || defined(__ppc64__) #include @@ -103,27 +104,47 @@ typedef std::tr1::unordered_map AudioFil InputHIDManager *hidManager; IOHIDDeviceRef hidDeviceRef; IOHIDQueueRef hidQueueRef; + + NSString *identifier; + + io_service_t ioService; + FFDeviceObjectReference ffDevice; + FFEffectObjectReference ffEffect; + BOOL supportsForceFeedback; + BOOL isForceFeedbackEnabled; + NSRunLoop *runLoop; OSSpinLock spinlockRunLoop; } @property (retain) InputHIDManager *hidManager; @property (readonly) IOHIDDeviceRef hidDeviceRef; +@property (readonly) NSString *manufacturerName; +@property (readonly) NSString *productName; +@property (readonly) NSString *serialNumber; +@property (readonly) NSString *identifier; +@property (readonly) BOOL supportsForceFeedback; +@property (assign) BOOL isForceFeedbackEnabled; @property (retain) NSRunLoop *runLoop; - (id) initWithDevice:(IOHIDDeviceRef)theDevice hidManager:(InputHIDManager *)theHIDManager; +- (void) setPropertiesUsingDictionary:(NSDictionary *)theProperties; +- (NSDictionary *) propertiesDictionary; +- (void) writeDefaults; + - (void) start; - (void) stop; -- (NSString *) manufacturerName; -- (NSString *) productName; -- (NSString *) serialNumber; +- (void) startForceFeedbackAndIterate:(UInt32)iterations flags:(UInt32)ffFlags; +- (void) stopForceFeedback; @end -BOOL GetOnStateFromHIDValueRef(IOHIDValueRef hidValueRef); -InputAttributes InputAttributesOfHIDValue(IOHIDValueRef hidValueRef, const char *altElementCode, const char *altElementName, bool *altOnState); +bool GetOnStateFromHIDValueRef(IOHIDValueRef hidValueRef); +void InputDeviceCodeFromHIDDevice(const IOHIDDeviceRef hidDeviceRef, char *charBuffer); +void InputDeviceNameFromHIDDevice(const IOHIDDeviceRef hidDeviceRef, char *charBuffer, const char *altName); +InputAttributes InputAttributesOfHIDValue(IOHIDValueRef hidValueRef, const char *altElementCode, const char *altElementName, const bool *altOnState); InputAttributesList InputListFromHIDValue(IOHIDValueRef hidValueRef); InputAttributesList InputListFromHatSwitchValue(IOHIDValueRef hidValueRef, bool useEightDirection); @@ -136,15 +157,15 @@ void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void InputManager *inputManager; IOHIDManagerRef hidManagerRef; NSRunLoop *runLoop; - NSMutableSet *deviceList; + NSArrayController *deviceListController; id target; OSSpinLock spinlockRunLoop; } +@property (retain) NSArrayController *deviceListController; @property (retain) InputManager *inputManager; @property (readonly) IOHIDManagerRef hidManagerRef; -@property (readonly) NSMutableSet *deviceList; @property (assign) id target; @property (retain) NSRunLoop *runLoop; @@ -173,6 +194,7 @@ void HandleDeviceRemovalCallback(void *inContext, IOReturn inResult, void *inSen @property (readonly) IBOutlet EmuControllerDelegate *emuControl; @property (retain) id hidInputTarget; +@property (readonly) InputHIDManager *hidManager; @property (readonly) NSMutableDictionary *inputMappings; @property (readonly) NSArray *commandTagList; @property (readonly) NSDictionary *commandIcon; diff --git a/desmume/src/cocoa/userinterface/InputManager.mm b/desmume/src/cocoa/userinterface/InputManager.mm index 73ad08994..57cdeca70 100644 --- a/desmume/src/cocoa/userinterface/InputManager.mm +++ b/desmume/src/cocoa/userinterface/InputManager.mm @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2012-2013 DeSmuME team + Copyright (C) 2012-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -71,6 +71,12 @@ extern "C" @synthesize hidManager; @synthesize hidDeviceRef; +@dynamic manufacturerName; +@dynamic productName; +@dynamic serialNumber; +@synthesize identifier; +@dynamic supportsForceFeedback; +@dynamic isForceFeedbackEnabled; @dynamic runLoop; static NSDictionary *hidUsageTable = nil; @@ -109,6 +115,104 @@ static NSDictionary *hidUsageTable = nil; CFRelease(elementArray); + // Set up force feedback. +#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 + ioService = IOHIDDeviceGetService(hidDeviceRef); + if (ioService != MACH_PORT_NULL) + { + IOObjectRetain(ioService); + } +#else + ioService = MACH_PORT_NULL; + + CFMutableDictionaryRef matchingDict = IOServiceMatching(kIOHIDDeviceKey); + if (matchingDict) + { + CFStringRef locationKey = CFSTR(kIOHIDLocationIDKey); + CFTypeRef deviceLocation = IOHIDDeviceGetProperty(hidDeviceRef, locationKey); + if (deviceLocation != NULL) + { + CFDictionaryAddValue(matchingDict, locationKey, deviceLocation); + + //This eats a reference to matchingDict, so we don't need a separate release. + //The result, meanwhile, has a reference count of 1 and must be released by the caller. + ioService = IOServiceGetMatchingService(kIOMasterPortDefault, matchingDict); + } + else + { + CFRelease(matchingDict); + } + } +#endif + + ffDevice = NULL; + ffEffect = NULL; + if (ioService != MACH_PORT_NULL && [self supportsForceFeedback]) + { + HRESULT ffResult = FFCreateDevice(ioService, &ffDevice); + if (ffDevice != NULL && ffResult != FF_OK) + { + FFReleaseDevice(ffDevice); + ffDevice = NULL; + } + + // Generate the force feedback effect. + if (ffDevice != NULL) + { + DWORD rgdwAxes[1] = {FFJOFS_Y}; + LONG rglDirection[2] = {0}; + + FFCONSTANTFORCE cf; + cf.lMagnitude = FF_FFNOMINALMAX; + + FFEFFECT newEffect; + newEffect.dwSize = sizeof(FFEFFECT); + newEffect.dwFlags = FFEFF_CARTESIAN | FFEFF_OBJECTOFFSETS; + newEffect.dwDuration = 1000000; // Equivalent to 1 second + newEffect.dwSamplePeriod = 0; + newEffect.dwGain = FF_FFNOMINALMAX; + newEffect.dwTriggerButton = FFEB_NOTRIGGER; + newEffect.dwTriggerRepeatInterval = 0; + newEffect.cAxes = 1; + newEffect.rgdwAxes = rgdwAxes; + newEffect.rglDirection = rglDirection; + newEffect.lpEnvelope = NULL; + newEffect.cbTypeSpecificParams = sizeof(FFCONSTANTFORCE); + newEffect.lpvTypeSpecificParams = &cf; + newEffect.dwStartDelay = 0; + + FFDeviceCreateEffect(ffDevice, kFFEffectType_ConstantForce_ID, &newEffect, &ffEffect); + if (ffEffect == NULL) + { + FFReleaseDevice(ffDevice); + ffDevice = NULL; + } + } + } + + isForceFeedbackEnabled = (ffDevice != nil); + if (isForceFeedbackEnabled) + { + [self startForceFeedbackAndIterate:RUMBLE_ITERATIONS_ENABLE flags:0]; + } + + // Set up the device identifier. + CFNumberRef cfVendorIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDVendorIDKey)); + CFNumberRef cfProductIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDProductIDKey)); + CFStringRef cfDeviceSerial = (CFStringRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDSerialNumberKey)); + + if (cfDeviceSerial != nil) + { + identifier = [NSString stringWithFormat:@"%d/%d/%@", [(NSNumber *)cfVendorIDNumber intValue], [(NSNumber *)cfProductIDNumber intValue], cfDeviceSerial]; + } + else + { + CFNumberRef cfLocationIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDLocationIDKey)); + identifier = [NSString stringWithFormat:@"%d/%d/0x%08X", [(NSNumber *)cfVendorIDNumber intValue], [(NSNumber *)cfProductIDNumber intValue], [(NSNumber *)cfLocationIDNumber intValue]]; + } + + [identifier retain]; + spinlockRunLoop = OS_SPINLOCK_INIT; [self setRunLoop:[NSRunLoop currentRunLoop]]; @@ -127,9 +231,76 @@ static NSDictionary *hidUsageTable = nil; hidQueueRef = NULL; } + if (ffDevice != NULL) + { + FFReleaseDevice(ffDevice); + FFEffectUnload(ffEffect); + ffDevice = NULL; + } + + if (ioService != MACH_PORT_NULL) + { + IOObjectRelease(ioService); + ioService = MACH_PORT_NULL; + } + + [identifier release]; + [super dealloc]; } +- (NSString *) manufacturerName +{ + return (NSString *)IOHIDDeviceGetProperty([self hidDeviceRef], CFSTR(kIOHIDManufacturerKey)); +} + +- (NSString *) productName +{ + return (NSString *)IOHIDDeviceGetProperty([self hidDeviceRef], CFSTR(kIOHIDProductKey)); +} + +- (NSString *) serialNumber +{ + return (NSString *)IOHIDDeviceGetProperty([self hidDeviceRef], CFSTR(kIOHIDSerialNumberKey)); +} + +- (BOOL) supportsForceFeedback +{ + return (ioService != MACH_PORT_NULL) ? (FFIsForceFeedback(ioService) == FF_OK) : NO; +} + +- (void) setIsForceFeedbackEnabled:(BOOL)theState +{ + if (ffDevice != NULL) + { + // Enable/disable force feedback by maxing/zeroing out the device gain. + UInt32 gainValue = (theState) ? FF_FFNOMINALMAX : 0; + FFDeviceSetForceFeedbackProperty(ffDevice, FFPROP_FFGAIN, &gainValue); + + if (theState) + { + [self startForceFeedbackAndIterate:RUMBLE_ITERATIONS_ENABLE flags:0]; + } + else + { + [self stopForceFeedback]; + } + + isForceFeedbackEnabled = theState; + } + else + { + isForceFeedbackEnabled = NO; + } + + [self writeDefaults]; +} + +- (BOOL) isForceFeedbackEnabled +{ + return isForceFeedbackEnabled; +} + - (void) setRunLoop:(NSRunLoop *)theRunLoop { OSSpinLockLock(&spinlockRunLoop); @@ -149,7 +320,7 @@ static NSDictionary *hidUsageTable = nil; { [theRunLoop retain]; IOHIDQueueScheduleWithRunLoop(hidQueueRef, [theRunLoop getCFRunLoop], kCFRunLoopDefaultMode); - IOHIDQueueRegisterValueAvailableCallback(hidQueueRef, HandleQueueValueAvailableCallback, [self hidManager]); + IOHIDQueueRegisterValueAvailableCallback(hidQueueRef, HandleQueueValueAvailableCallback, self); } [runLoop release]; @@ -167,6 +338,43 @@ static NSDictionary *hidUsageTable = nil; return theRunLoop; } +- (void) setPropertiesUsingDictionary:(NSDictionary *)theProperties +{ + if (theProperties == nil) + { + return; + } + + NSNumber *isFFEnabledNumber = (NSNumber *)[theProperties objectForKey:@"isForceFeedbackEnabled"]; + if (isFFEnabledNumber != nil) + { + [self setIsForceFeedbackEnabled:[isFFEnabledNumber boolValue]]; + } +} + +- (NSDictionary *) propertiesDictionary +{ + return [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:[self isForceFeedbackEnabled]], @"isForceFeedbackEnabled", + [self manufacturerName], @"manufacturerName", + [self productName], @"productName", + [self serialNumber], @"serialNumber", + nil]; +} + +- (void) writeDefaults +{ + NSDictionary *savedInputDeviceDict = [[NSUserDefaults standardUserDefaults] dictionaryForKey:@"Input_SavedDeviceProperties"]; + if (savedInputDeviceDict == nil) + { + return; + } + + NSMutableDictionary *newInputDeviceDict = [NSMutableDictionary dictionaryWithDictionary:savedInputDeviceDict]; + [newInputDeviceDict setObject:[self propertiesDictionary] forKey:[self identifier]]; + [[NSUserDefaults standardUserDefaults] setObject:newInputDeviceDict forKey:@"Input_SavedDeviceProperties"]; +} + - (void) start { IOHIDQueueStart(hidQueueRef); @@ -177,19 +385,21 @@ static NSDictionary *hidUsageTable = nil; IOHIDQueueStop(hidQueueRef); } -- (NSString *) manufacturerName +- (void) startForceFeedbackAndIterate:(UInt32)iterations flags:(UInt32)ffFlags { - return (NSString *)IOHIDDeviceGetProperty([self hidDeviceRef], CFSTR(kIOHIDManufacturerKey)); + if (ffDevice != NULL) + { + HRESULT ffResult = FFEffectStart(ffEffect, iterations, ffFlags); + ffResult = ffResult; + } } -- (NSString *) productName +- (void) stopForceFeedback { - return (NSString *)IOHIDDeviceGetProperty([self hidDeviceRef], CFSTR(kIOHIDProductKey)); -} - -- (NSString *) serialNumber -{ - return (NSString *)IOHIDDeviceGetProperty([self hidDeviceRef], CFSTR(kIOHIDSerialNumberKey)); + if (ffDevice != NULL) + { + FFEffectStop(ffEffect); + } } @end @@ -211,7 +421,7 @@ static NSDictionary *hidUsageTable = nil; Details: None. ********************************************************************************************/ -InputAttributes InputAttributesOfHIDValue(IOHIDValueRef hidValueRef, const char *altElementCode, const char *altElementName, bool *altOnState) +InputAttributes InputAttributesOfHIDValue(IOHIDValueRef hidValueRef, const char *altElementCode, const char *altElementName, const bool *altOnState) { InputAttributes inputAttr; @@ -267,46 +477,14 @@ InputAttributes InputAttributesOfHIDValue(IOHIDValueRef hidValueRef, const char strncpy(inputAttr.elementName, altElementName, INPUT_HANDLER_STRING_LENGTH); } - IOHIDDeviceRef hidDeviceRef = IOHIDElementGetDevice(hidElementRef); + const IOHIDDeviceRef hidDeviceRef = IOHIDElementGetDevice(hidElementRef); + InputDeviceCodeFromHIDDevice(hidDeviceRef, inputAttr.deviceCode); + InputDeviceNameFromHIDDevice(hidDeviceRef, inputAttr.deviceName, inputAttr.deviceCode); - CFNumberRef cfVendorIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDVendorIDKey)); - SInt32 vendorID = 0; - CFNumberGetValue(cfVendorIDNumber, kCFNumberSInt32Type, &vendorID); - - CFNumberRef cfProductIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDProductIDKey)); - SInt32 productID = 0; - CFNumberGetValue(cfProductIDNumber, kCFNumberSInt32Type, &productID); - - CFStringRef cfDeviceCode = (CFStringRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDSerialNumberKey)); - if (cfDeviceCode == nil) - { - CFNumberRef cfLocationIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDLocationIDKey)); - SInt32 locationID = 0; - CFNumberGetValue(cfLocationIDNumber, kCFNumberSInt32Type, &locationID); - - snprintf(inputAttr.deviceCode, INPUT_HANDLER_STRING_LENGTH, "%d/%d/0x%08X", (int)vendorID, (int)productID, (unsigned int)locationID); - } - else - { - char cfDeviceCodeBuf[256] = {0}; - CFStringGetCString(cfDeviceCode, cfDeviceCodeBuf, 256, kCFStringEncodingUTF8); - snprintf(inputAttr.deviceCode, INPUT_HANDLER_STRING_LENGTH, "%d/%d/%s", (int)vendorID, (int)productID, cfDeviceCodeBuf); - } - - CFStringRef cfDeviceName = (CFStringRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDProductKey)); - if (cfDeviceName == nil) - { - strncpy(inputAttr.deviceName, inputAttr.deviceCode, INPUT_HANDLER_STRING_LENGTH); - } - else - { - CFStringGetCString(cfDeviceName, inputAttr.deviceName, INPUT_HANDLER_STRING_LENGTH, kCFStringEncodingUTF8); - } - - bool onState = (altOnState == NULL) ? GetOnStateFromHIDValueRef(hidValueRef) : *altOnState; - CFIndex logicalValue = IOHIDValueGetIntegerValue(hidValueRef); - NSInteger logicalMin = IOHIDElementGetLogicalMin(hidElementRef); - NSInteger logicalMax = IOHIDElementGetLogicalMax(hidElementRef); + const bool onState = (altOnState == NULL) ? GetOnStateFromHIDValueRef(hidValueRef) : *altOnState; + const NSInteger logicalValue = IOHIDValueGetIntegerValue(hidValueRef); + const NSInteger logicalMin = IOHIDElementGetLogicalMin(hidElementRef); + const NSInteger logicalMax = IOHIDElementGetLogicalMax(hidElementRef); inputAttr.state = (onState) ? INPUT_ATTRIBUTE_STATE_ON : INPUT_ATTRIBUTE_STATE_OFF; inputAttr.intCoordX = 0; @@ -352,10 +530,10 @@ InputAttributesList InputListFromHIDValue(IOHIDValueRef hidValueRef) } else { - NSInteger lowerThreshold = ((logicalMax - logicalMin) / 3) + logicalMin; - NSInteger upperThreshold = (((logicalMax - logicalMin) * 2) / 3) + logicalMin; - bool onState = true; - bool offState = false; + const NSInteger lowerThreshold = ((logicalMax - logicalMin) / 4) + logicalMin; + const NSInteger upperThreshold = (((logicalMax - logicalMin) * 3) / 4) + logicalMin; + const bool onState = true; + const bool offState = false; char elementCodeLowerThresholdBuf[256] = {0}; char elementCodeUpperThresholdBuf[256] = {0}; @@ -523,40 +701,31 @@ InputAttributesList InputListFromHatSwitchValue(IOHIDValueRef hidValueRef, bool return inputList; } -BOOL GetOnStateFromHIDValueRef(IOHIDValueRef hidValueRef) +bool GetOnStateFromHIDValueRef(IOHIDValueRef hidValueRef) { - BOOL onState = NO; + bool onState = false; if (hidValueRef == nil) { return onState; } - IOHIDElementRef hidElementRef = IOHIDValueGetElement(hidValueRef); - NSInteger logicalValue = IOHIDValueGetIntegerValue(hidValueRef); - NSInteger logicalMin = IOHIDElementGetLogicalMin(hidElementRef); - NSInteger logicalMax = IOHIDElementGetLogicalMax(hidElementRef); - NSInteger lowerThreshold = ((logicalMax - logicalMin) / 4) + logicalMin; - NSInteger upperThreshold = (((logicalMax - logicalMin) * 3) / 4) + logicalMin; + const IOHIDElementRef hidElementRef = IOHIDValueGetElement(hidValueRef); + const NSInteger logicalValue = IOHIDValueGetIntegerValue(hidValueRef); + const NSInteger logicalMin = IOHIDElementGetLogicalMin(hidElementRef); + const NSInteger logicalMax = IOHIDElementGetLogicalMax(hidElementRef); + const NSInteger lowerThreshold = ((logicalMax - logicalMin) / 4) + logicalMin; + const NSInteger upperThreshold = (((logicalMax - logicalMin) * 3) / 4) + logicalMin; + const NSInteger elementType = IOHIDElementGetType(hidElementRef); - NSInteger elementType = IOHIDElementGetType(hidElementRef); switch (elementType) { case kIOHIDElementTypeInput_Misc: { - if (logicalMin == 0 && logicalMax == 1) + if ( (logicalMin == 0 && logicalMax == 1 && logicalValue == 1) || + (logicalValue <= lowerThreshold || logicalValue >= upperThreshold) ) { - if (logicalValue == 1) - { - onState = YES; - } - } - else - { - if (logicalValue <= lowerThreshold || logicalValue >= upperThreshold) - { - onState = YES; - } + onState = true; } break; } @@ -565,26 +734,17 @@ BOOL GetOnStateFromHIDValueRef(IOHIDValueRef hidValueRef) { if (logicalValue == 1) { - onState = YES; + onState = true; } break; } case kIOHIDElementTypeInput_Axis: { - if (logicalMin == 0 && logicalMax == 1) + if ( (logicalMin == 0 && logicalMax == 1 && logicalValue == 1) || + (logicalValue <= lowerThreshold || logicalValue >= upperThreshold) ) { - if (logicalValue == 1) - { - onState = YES; - } - } - else - { - if (logicalValue <= lowerThreshold || logicalValue >= upperThreshold) - { - onState = YES; - } + onState = true; } break; } @@ -596,6 +756,46 @@ BOOL GetOnStateFromHIDValueRef(IOHIDValueRef hidValueRef) return onState; } +void InputDeviceCodeFromHIDDevice(const IOHIDDeviceRef hidDeviceRef, char *charBuffer) +{ + CFNumberRef cfVendorIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDVendorIDKey)); + SInt32 vendorID = 0; + CFNumberGetValue(cfVendorIDNumber, kCFNumberSInt32Type, &vendorID); + + CFNumberRef cfProductIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDProductIDKey)); + SInt32 productID = 0; + CFNumberGetValue(cfProductIDNumber, kCFNumberSInt32Type, &productID); + + CFStringRef cfDeviceCode = (CFStringRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDSerialNumberKey)); + if (cfDeviceCode == nil) + { + CFNumberRef cfLocationIDNumber = (CFNumberRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDLocationIDKey)); + SInt32 locationID = 0; + CFNumberGetValue(cfLocationIDNumber, kCFNumberSInt32Type, &locationID); + + snprintf(charBuffer, INPUT_HANDLER_STRING_LENGTH, "%d/%d/0x%08X", (int)vendorID, (int)productID, (unsigned int)locationID); + } + else + { + char cfDeviceCodeBuf[256] = {0}; + CFStringGetCString(cfDeviceCode, cfDeviceCodeBuf, 256, kCFStringEncodingUTF8); + snprintf(charBuffer, INPUT_HANDLER_STRING_LENGTH, "%d/%d/%s", (int)vendorID, (int)productID, cfDeviceCodeBuf); + } +} + +void InputDeviceNameFromHIDDevice(const IOHIDDeviceRef hidDeviceRef, char *charBuffer, const char *altName) +{ + CFStringRef cfDeviceName = (CFStringRef)IOHIDDeviceGetProperty(hidDeviceRef, CFSTR(kIOHIDProductKey)); + if (cfDeviceName == nil) + { + strncpy(charBuffer, (altName != NULL) ? altName : "Unknown Device", INPUT_HANDLER_STRING_LENGTH); + } + else + { + CFStringGetCString(cfDeviceName, charBuffer, INPUT_HANDLER_STRING_LENGTH, kCFStringEncodingUTF8); + } +} + size_t ClearHIDQueue(const IOHIDQueueRef hidQueue) { size_t hidInputClearCount = 0; @@ -629,7 +829,8 @@ size_t ClearHIDQueue(const IOHIDQueueRef hidQueue) void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void *inSender) { - InputHIDManager *hidManager = (InputHIDManager *)inContext; + InputHIDDevice *hidDevice = (InputHIDDevice *)inContext; + InputHIDManager *hidManager = [hidDevice hidManager]; IOHIDQueueRef hidQueue = (IOHIDQueueRef)inSender; id target = [hidManager target]; @@ -651,7 +852,7 @@ void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void @synthesize inputManager; @synthesize hidManagerRef; -@synthesize deviceList; +@synthesize deviceListController; @synthesize target; @dynamic runLoop; @@ -664,6 +865,7 @@ void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void } target = nil; + deviceListController = nil; inputManager = [theInputManager retain]; hidManagerRef = IOHIDManagerCreate(kCFAllocatorDefault, kIOHIDOptionsTypeNone); @@ -672,9 +874,7 @@ void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void [self release]; return nil; } - - deviceList = [[NSMutableSet alloc] initWithCapacity:32]; - + CFMutableDictionaryRef cfJoystickMatcher = CFDictionaryCreateMutable(kCFAllocatorDefault, 2, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks); CFDictionarySetValue(cfJoystickMatcher, CFSTR(kIOHIDDeviceUsagePageKey), (CFNumberRef)[NSNumber numberWithInteger:kHIDPage_GenericDesktop]); CFDictionarySetValue(cfJoystickMatcher, CFSTR(kIOHIDDeviceUsageKey), (CFNumberRef)[NSNumber numberWithInteger:kHIDUsage_GD_Joystick]); @@ -683,13 +883,18 @@ void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void CFDictionarySetValue(cfGamepadMatcher, CFSTR(kIOHIDDeviceUsagePageKey), (CFNumberRef)[NSNumber numberWithInteger:kHIDPage_GenericDesktop]); CFDictionarySetValue(cfGamepadMatcher, CFSTR(kIOHIDDeviceUsageKey), (CFNumberRef)[NSNumber numberWithInteger:kHIDUsage_GD_GamePad]); - NSArray *matcherArray = [[NSArray alloc] initWithObjects:(NSMutableDictionary *)cfJoystickMatcher, (NSMutableDictionary *)cfGamepadMatcher, nil]; + CFMutableDictionaryRef cfGenericControllerMatcher = CFDictionaryCreateMutable(kCFAllocatorDefault, 2, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks); + CFDictionarySetValue(cfGenericControllerMatcher, CFSTR(kIOHIDDeviceUsagePageKey), (CFNumberRef)[NSNumber numberWithInteger:kHIDPage_GenericDesktop]); + CFDictionarySetValue(cfGenericControllerMatcher, CFSTR(kIOHIDDeviceUsageKey), (CFNumberRef)[NSNumber numberWithInteger:kHIDUsage_GD_MultiAxisController]); + + NSArray *matcherArray = [[NSArray alloc] initWithObjects:(NSMutableDictionary *)cfJoystickMatcher, (NSMutableDictionary *)cfGamepadMatcher, (NSMutableDictionary *)cfGenericControllerMatcher, nil]; IOHIDManagerSetDeviceMatchingMultiple(hidManagerRef, (CFArrayRef)matcherArray); [matcherArray release]; CFRelease(cfJoystickMatcher); CFRelease(cfGamepadMatcher); + CFRelease(cfGenericControllerMatcher); spinlockRunLoop = OS_SPINLOCK_INIT; [self setRunLoop:[NSRunLoop currentRunLoop]]; @@ -709,9 +914,7 @@ void HandleQueueValueAvailableCallback(void *inContext, IOReturn inResult, void [self setRunLoop:nil]; [self setInputManager:nil]; [self setTarget:nil]; - - [deviceList release]; - + if (hidManagerRef != NULL) { IOHIDManagerClose(hidManagerRef, 0); @@ -767,19 +970,34 @@ void HandleDeviceMatchingCallback(void *inContext, IOReturn inResult, void *inSe { InputHIDManager *hidManager = (InputHIDManager *)inContext; InputHIDDevice *newDevice = [[[InputHIDDevice alloc] initWithDevice:inIOHIDDeviceRef hidManager:hidManager] autorelease]; - [[hidManager deviceList] addObject:newDevice]; + [[hidManager deviceListController] addObject:newDevice]; + + NSDictionary *savedInputDeviceDict = [[NSUserDefaults standardUserDefaults] dictionaryForKey:@"Input_SavedDeviceProperties"]; + NSDictionary *devicePropertiesDict = (NSDictionary *)[savedInputDeviceDict objectForKey:[newDevice identifier]]; + + if (devicePropertiesDict != nil) + { + [newDevice setPropertiesUsingDictionary:devicePropertiesDict]; + } + else + { + [newDevice writeDefaults]; + } + [newDevice start]; } void HandleDeviceRemovalCallback(void *inContext, IOReturn inResult, void *inSender, IOHIDDeviceRef inIOHIDDeviceRef) { InputHIDManager *hidManager = (InputHIDManager *)inContext; + NSArray *hidDeviceList = [[hidManager deviceListController] arrangedObjects]; - for (InputHIDDevice *hidDevice in [hidManager deviceList]) + for (InputHIDDevice *hidDevice in hidDeviceList) { if ([hidDevice hidDeviceRef] == inIOHIDDeviceRef) { - [[hidManager deviceList] removeObject:hidDevice]; + [hidDevice stopForceFeedback]; + [[hidManager deviceListController] removeObject:hidDevice]; break; } } @@ -790,6 +1008,7 @@ void HandleDeviceRemovalCallback(void *inContext, IOReturn inResult, void *inSen @synthesize emuControl; @dynamic hidInputTarget; +@synthesize hidManager; @synthesize inputMappings; @synthesize commandTagList; @synthesize commandIcon; @@ -869,6 +1088,25 @@ static std::tr1::unordered_map keyboardNameTable; / commandSelector["Debug"] = @selector(cmdUpdateDSController:); commandSelector["Lid"] = @selector(cmdUpdateDSController:); + commandSelector["Guitar Grip: Green"] = @selector(cmdUpdateDSController:); + commandSelector["Guitar Grip: Red"] = @selector(cmdUpdateDSController:); + commandSelector["Guitar Grip: Yellow"] = @selector(cmdUpdateDSController:); + commandSelector["Guitar Grip: Blue"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: C"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: C#"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: D"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: D#"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: E"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: F"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: F#"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: G"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: G#"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: A"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: A#"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: B"] = @selector(cmdUpdateDSController:); + commandSelector["Piano: High C"] = @selector(cmdUpdateDSController:); + commandSelector["Paddle"] = @selector(cmdUpdateDSController:); + commandSelector["Load State Slot"] = @selector(cmdLoadEmuSaveStateSlot:); commandSelector["Save State Slot"] = @selector(cmdSaveEmuSaveStateSlot:); commandSelector["Copy Screen"] = @selector(cmdCopyScreen:); @@ -905,6 +1143,29 @@ static std::tr1::unordered_map keyboardNameTable; / cmdDSControlMic.intValue[1] = MICMODE_INTERNAL_NOISE; cmdDSControlMic.floatValue[0] = 250.0f; + CommandAttributes cmdGuitarGripGreen = NewCommandAttributesForDSControl("Guitar Grip: Green", DSControllerState_GuitarGrip_Green); + CommandAttributes cmdGuitarGripRed = NewCommandAttributesForDSControl("Guitar Grip: Red", DSControllerState_GuitarGrip_Red); + CommandAttributes cmdGuitarGripYellow = NewCommandAttributesForDSControl("Guitar Grip: Yellow", DSControllerState_GuitarGrip_Yellow); + CommandAttributes cmdGuitarGripBlue = NewCommandAttributesForDSControl("Guitar Grip: Blue", DSControllerState_GuitarGrip_Blue); + CommandAttributes cmdPianoC = NewCommandAttributesForDSControl("Piano: C", DSControllerState_Piano_C); + CommandAttributes cmdPianoCSharp = NewCommandAttributesForDSControl("Piano: C#", DSControllerState_Piano_CSharp); + CommandAttributes cmdPianoD = NewCommandAttributesForDSControl("Piano: D", DSControllerState_Piano_D); + CommandAttributes cmdPianoDSharp = NewCommandAttributesForDSControl("Piano: DSharp", DSControllerState_Piano_DSharp); + CommandAttributes cmdPianoE = NewCommandAttributesForDSControl("Piano: E", DSControllerState_Piano_E); + CommandAttributes cmdPianoF = NewCommandAttributesForDSControl("Piano: F", DSControllerState_Piano_F); + CommandAttributes cmdPianoFSharp = NewCommandAttributesForDSControl("Piano: FSharp", DSControllerState_Piano_FSharp); + CommandAttributes cmdPianoG = NewCommandAttributesForDSControl("Piano: G", DSControllerState_Piano_G); + CommandAttributes cmdPianoGSharp = NewCommandAttributesForDSControl("Piano: GSharp", DSControllerState_Piano_GSharp); + CommandAttributes cmdPianoA = NewCommandAttributesForDSControl("Piano: A", DSControllerState_Piano_A); + CommandAttributes cmdPianoASharp = NewCommandAttributesForDSControl("Piano: ASharp", DSControllerState_Piano_ASharp); + CommandAttributes cmdPianoB = NewCommandAttributesForDSControl("Piano: B", DSControllerState_Piano_B); + CommandAttributes cmdPianoHighC = NewCommandAttributesForDSControl("Piano: High C", DSControllerState_Piano_HighC); + + CommandAttributes cmdPaddle = NewCommandAttributesForDSControl("Paddle", DSControllerState_Paddle); + cmdPaddle.useInputForScalar = false; + cmdPaddle.intValue[1] = 0; + cmdPaddle.floatValue[0] = 0.0f; + CommandAttributes cmdLoadEmuSaveStateSlot = NewCommandAttributesForSelector("Load State Slot", commandSelector["Load State Slot"]); CommandAttributes cmdSaveEmuSaveStateSlot = NewCommandAttributesForSelector("Save State Slot", commandSelector["Save State Slot"]); CommandAttributes cmdCopyScreen = NewCommandAttributesForSelector("Copy Screen", commandSelector["Copy Screen"]); @@ -946,6 +1207,25 @@ static std::tr1::unordered_map keyboardNameTable; / defaultCommandAttributes["Debug"] = cmdDSControlDebug; defaultCommandAttributes["Lid"] = cmdDSControlLid; + defaultCommandAttributes["Guitar Grip: Green"] = cmdGuitarGripGreen; + defaultCommandAttributes["Guitar Grip: Red"] = cmdGuitarGripRed; + defaultCommandAttributes["Guitar Grip: Yellow"] = cmdGuitarGripYellow; + defaultCommandAttributes["Guitar Grip: Blue"] = cmdGuitarGripBlue; + defaultCommandAttributes["Piano: C"] = cmdPianoC; + defaultCommandAttributes["Piano: C#"] = cmdPianoCSharp; + defaultCommandAttributes["Piano: D"] = cmdPianoD; + defaultCommandAttributes["Piano: D#"] = cmdPianoDSharp; + defaultCommandAttributes["Piano: E"] = cmdPianoE; + defaultCommandAttributes["Piano: F"] = cmdPianoF; + defaultCommandAttributes["Piano: F#"] = cmdPianoFSharp; + defaultCommandAttributes["Piano: G"] = cmdPianoG; + defaultCommandAttributes["Piano: G#"] = cmdPianoGSharp; + defaultCommandAttributes["Piano: A"] = cmdPianoA; + defaultCommandAttributes["Piano: A#"] = cmdPianoASharp; + defaultCommandAttributes["Piano: B"] = cmdPianoB; + defaultCommandAttributes["Piano: High C"] = cmdPianoHighC; + defaultCommandAttributes["Paddle"] = cmdPaddle; + defaultCommandAttributes["Load State Slot"] = cmdLoadEmuSaveStateSlot; defaultCommandAttributes["Save State Slot"] = cmdSaveEmuSaveStateSlot; defaultCommandAttributes["Copy Screen"] = cmdCopyScreen; @@ -1458,6 +1738,27 @@ static std::tr1::unordered_map keyboardNameTable; / break; } } + else if (strncmp(commandTag, "Paddle", INPUT_HANDLER_STRING_LENGTH) == 0) + { + const BOOL useInputForScalar = [(NSNumber *)[deviceInfo valueForKey:@"useInputForScalar"] boolValue]; + + if (useInputForScalar) + { + inputSummary = @"Direct Control"; + } + else + { + const NSInteger paddleRelativeAdjustment = [(NSNumber *)[deviceInfo valueForKey:@"intValue1"] integerValue]; + if (paddleRelativeAdjustment > 0) + { + inputSummary = [NSString stringWithFormat:@"Paddle Adjust: +%ld", (long)paddleRelativeAdjustment]; + } + else + { + inputSummary = [NSString stringWithFormat:@"Paddle Adjust: %ld", (long)paddleRelativeAdjustment]; + } + } + } if (inputSummary == nil) { @@ -1564,7 +1865,7 @@ static std::tr1::unordered_map keyboardNameTable; / // Convert the audio buffer to 7-bit unsigned PCM. buffer = theGenerator.getBuffer(); - for (SInt64 i = 0; i < bufferSize; i++) + for (size_t i = 0; i < bufferSize; i++) { *(buffer+i) >>= 1; } @@ -1673,7 +1974,6 @@ CommandAttributes NewCommandAttributesForDSControl(const char *commandTag, const { CommandAttributes cmdAttr = NewCommandAttributesForSelector(commandTag, @selector(cmdUpdateDSController:)); cmdAttr.intValue[0] = controlID; - cmdAttr.floatValue[0] = 250.0f; return cmdAttr; } @@ -1743,6 +2043,7 @@ NSMutableDictionary* DeviceInfoDictionaryWithCommandAttributes(const CommandAttr deviceName, @"deviceName", elementCode, @"elementCode", elementName, @"elementName", + [NSNumber numberWithBool:NO], @"isElementAnalog", deviceInfoSummary, @"deviceInfoSummary", @"", @"inputSettingsSummary", [NSNumber numberWithInt:cmdAttr->intValue[0]], @"intValue0", diff --git a/desmume/src/cocoa/userinterface/Slot2WindowDelegate.h b/desmume/src/cocoa/userinterface/Slot2WindowDelegate.h new file mode 100644 index 000000000..423976e53 --- /dev/null +++ b/desmume/src/cocoa/userinterface/Slot2WindowDelegate.h @@ -0,0 +1,136 @@ +/* + Copyright (C) 2014 DeSmuME Team + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with the this software. If not, see . + */ + +#import +#import "preferencesWindowDelegate.h" +#import "cocoa_slot2.h" + +@class InputHIDManager; + +#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_5 +@interface Slot2WindowDelegate : NSObject +#else +@interface Slot2WindowDelegate : NSObject +#endif +{ + NSObject *dummyObject; + NSWindow *window; + NSArrayController *deviceListController; + NSTableView *deviceListTable; + NSBox *deviceSettingsBox; + NSPopUpButton *mpcfFileSearchMenu; + PreferencesWindowDelegate *prefWindowDelegate; + + NSView *currentDeviceView; + NSView *viewUnsupported; + NSView *viewNoSelection; + NSView *viewNone; + NSView *viewAuto; + NSView *viewCompactFlash; + NSView *viewRumblePak; + NSView *viewGBACartridge; + NSView *viewGuitarGrip; + NSView *viewMemoryExpansionPack; + NSView *viewPiano; + NSView *viewPaddleController; + NSView *viewPassME; + + CocoaDSSlot2Device *selectedDevice; + CocoaDSSlot2Manager *deviceManager; + InputHIDManager *hidManager; + + NSString *autoSelectedDeviceText; + NSURL *mpcfFolderURL; + NSURL *mpcfDiskImageURL; + NSURL *gbaCartridgeURL; + NSURL *gbaSRamURL; +} + +@property (readonly) IBOutlet NSObject *dummyObject; +@property (readonly) IBOutlet NSWindow *window; +@property (readonly) IBOutlet NSArrayController *deviceListController; +@property (readonly) IBOutlet NSTableView *deviceListTable; +@property (readonly) IBOutlet NSBox *deviceSettingsBox; +@property (readonly) IBOutlet NSPopUpButton *mpcfFileSearchMenu; +@property (readonly) IBOutlet PreferencesWindowDelegate *prefWindowDelegate; + +@property (readonly) IBOutlet NSView *viewUnsupported; +@property (readonly) IBOutlet NSView *viewNoSelection; +@property (readonly) IBOutlet NSView *viewNone; +@property (readonly) IBOutlet NSView *viewAuto; +@property (readonly) IBOutlet NSView *viewCompactFlash; +@property (readonly) IBOutlet NSView *viewRumblePak; +@property (readonly) IBOutlet NSView *viewGBACartridge; +@property (readonly) IBOutlet NSView *viewGuitarGrip; +@property (readonly) IBOutlet NSView *viewMemoryExpansionPack; +@property (readonly) IBOutlet NSView *viewPiano; +@property (readonly) IBOutlet NSView *viewPaddleController; +@property (readonly) IBOutlet NSView *viewPassME; + +@property (retain) CocoaDSSlot2Device *selectedDevice; +@property (retain) CocoaDSSlot2Manager *deviceManager; +@property (retain) InputHIDManager *hidManager; + +@property (retain) NSString *autoSelectedDeviceText; +@property (retain) NSURL *mpcfFolderURL; +@property (retain) NSURL *mpcfDiskImageURL; +@property (assign) NSString *mpcfFolderName; +@property (assign) NSString *mpcfFolderPath; +@property (assign) NSString *mpcfDiskImageName; +@property (assign) NSString *mpcfDiskImagePath; +@property (retain) NSURL *gbaCartridgeURL; +@property (assign) NSString *gbaCartridgeName; +@property (assign) NSString *gbaCartridgePath; +@property (retain) NSURL *gbaSRamURL; +@property (assign) NSString *gbaSRamName; +@property (assign) NSString *gbaSRamPath; + +- (IBAction) applySettings:(id)sender; +- (IBAction) showInputPreferences:(id)sender; + +- (void) update; +- (void) selectDeviceByType:(NSInteger)theType; +- (void) setDeviceViewByDevice:(CocoaDSSlot2Device *)theDevice; + +#pragma mark - +#pragma mark Auto + +#pragma mark - +#pragma mark Compact Flash +- (IBAction) chooseMPCFPath:(id)sender; +- (void) chooseMPCFPathDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo; + +#pragma mark - +#pragma mark GBA Cartridge +- (IBAction) chooseGbaCartridgePath:(id)sender; +- (void) chooseGbaCartridgePathDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo; +- (IBAction) chooseGbaSRamPath:(id)sender; +- (void) chooseGbaSRamPathDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo; +- (IBAction) clearSRamPath:(id)sender; +- (BOOL) isGbaSRamWithCartridge; + +#pragma mark - +#pragma mark Rumble Pak +- (IBAction) testRumble:(id)sender; +- (void) sendForceFeedback:(NSNotification *)aNotification; + +#pragma mark - +#pragma mark Paddle +- (void) setPaddleDirectWithScalar:(float)scalar; +- (void) setPaddleRelativeWithInteger:(NSInteger)value; + +@end diff --git a/desmume/src/cocoa/userinterface/Slot2WindowDelegate.mm b/desmume/src/cocoa/userinterface/Slot2WindowDelegate.mm new file mode 100644 index 000000000..fab71ab93 --- /dev/null +++ b/desmume/src/cocoa/userinterface/Slot2WindowDelegate.mm @@ -0,0 +1,722 @@ +/* + Copyright (C) 2014 DeSmuME Team + + This file is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with the this software. If not, see . + */ + +#import "Slot2WindowDelegate.h" +#import "InputManager.h" +#import "preferencesWindowDelegate.h" +#import "cocoa_globals.h" +#import "cocoa_util.h" + + +@implementation Slot2WindowDelegate + +@synthesize dummyObject; +@synthesize window; +@synthesize deviceListController; +@synthesize deviceListTable; +@synthesize deviceSettingsBox; +@synthesize mpcfFileSearchMenu; +@synthesize prefWindowDelegate; + +@synthesize viewUnsupported; +@synthesize viewNoSelection; +@synthesize viewNone; +@synthesize viewAuto; +@synthesize viewCompactFlash; +@synthesize viewRumblePak; +@synthesize viewGBACartridge; +@synthesize viewGuitarGrip; +@synthesize viewMemoryExpansionPack; +@synthesize viewPiano; +@synthesize viewPaddleController; +@synthesize viewPassME; + +@synthesize selectedDevice; +@synthesize deviceManager; +@synthesize hidManager; + +@synthesize autoSelectedDeviceText; +@dynamic mpcfFolderURL; +@dynamic mpcfDiskImageURL; +@dynamic mpcfFolderName; +@dynamic mpcfFolderPath; +@dynamic mpcfDiskImageName; +@dynamic mpcfDiskImagePath; +@dynamic gbaCartridgeURL; +@dynamic gbaCartridgeName; +@dynamic gbaCartridgePath; +@synthesize gbaSRamURL; + +- (id)init +{ + self = [super init]; + if(self == nil) + { + return nil; + } + + deviceManager = [[[[CocoaDSSlot2Manager alloc] init] retain] autorelease]; + hidManager = nil; + currentDeviceView = viewNoSelection; + + autoSelectedDeviceText = @""; + mpcfFolderURL = nil; + mpcfDiskImageURL = nil; + gbaCartridgeURL = nil; + gbaSRamURL = nil; + + // This needs to respond to force feedback notifications. + [[NSNotificationCenter defaultCenter] addObserver:self + selector:@selector(sendForceFeedback:) + name:@"org.desmume.DeSmuME.sendForceFeedback" + object:nil]; + + return self; +} + +- (void)dealloc +{ + [self setDeviceManager:nil]; + [self setHidManager:nil]; + [self setMpcfFolderURL:nil]; + [self setMpcfDiskImageURL:nil]; + [self setGbaCartridgeURL:nil]; + [self setGbaSRamURL:nil]; + + [super dealloc]; +} + +- (IBAction) applySettings:(id)sender +{ + const NDS_SLOT2_TYPE selectedDeviceType = (selectedDevice != nil) ? [selectedDevice type] : NDS_SLOT2_NONE; + + if (selectedDeviceType == NDS_SLOT2_CFLASH) + { + NSURL *theURL = nil; + NSInteger mpcfPathOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"Slot2_MPCF_PathOption"]; + + switch (mpcfPathOption) + { + case MPCF_OPTION_LOAD_WITH_ROM: + theURL = nil; + break; + + case MPCF_OPTION_LOAD_DIRECTORY: + theURL = mpcfFolderURL; + break; + + case MPCF_OPTION_LOAD_DISK_IMAGE: + theURL = mpcfDiskImageURL; + break; + + default: + break; + } + + [deviceManager setMpcfFileSearchURL:theURL]; + } + else if (selectedDeviceType == NDS_SLOT2_GBACART) + { + [deviceManager setGbaCartridgeURL:gbaCartridgeURL]; + [deviceManager setGbaSRamURL:gbaSRamURL]; + } + + [[self deviceManager] setCurrentDevice:selectedDevice]; + [[NSUserDefaults standardUserDefaults] setInteger:[selectedDevice type] forKey:@"Slot2_LoadedDevice"]; +} + +- (IBAction) showInputPreferences:(id)sender +{ + [[prefWindowDelegate toolbar] setSelectedItemIdentifier:@"Input"]; + [prefWindowDelegate changePrefView:sender]; + [[prefWindowDelegate window] makeKeyAndOrderFront:sender]; +} + +- (void) update +{ + [deviceManager updateDeviceList]; + [deviceListController setContent:[deviceManager deviceList]]; + [deviceListController setSelectedObjects:[NSArray arrayWithObject:[deviceManager currentDevice]]]; +} + +- (void) selectDeviceByType:(NSInteger)theType +{ + CocoaDSSlot2Device *theDevice = [[self deviceManager] findDeviceByType:(NDS_SLOT2_TYPE)theType]; + if (theDevice != nil) + { + [deviceListController setSelectedObjects:[NSArray arrayWithObject:theDevice]]; + } +} + +- (void) setDeviceViewByDevice:(CocoaDSSlot2Device *)theDevice +{ + NSView *newView = viewNoSelection; + const BOOL isDeviceEnabled = [theDevice enabled]; + const NDS_SLOT2_TYPE deviceType = [theDevice type]; + + if (currentDeviceView == nil) + { + currentDeviceView = viewNoSelection; + } + + if (isDeviceEnabled) + { + switch (deviceType) + { + case NDS_SLOT2_NONE: + newView = viewNone; + break; + + case NDS_SLOT2_AUTO: + newView = viewAuto; + break; + + case NDS_SLOT2_CFLASH: + newView = viewCompactFlash; + break; + + case NDS_SLOT2_RUMBLEPAK: + newView = viewRumblePak; + break; + + case NDS_SLOT2_GBACART: + newView = viewGBACartridge; + break; + + case NDS_SLOT2_GUITARGRIP: + newView = viewGuitarGrip; + break; + + case NDS_SLOT2_EXPMEMORY: + newView = viewMemoryExpansionPack; + break; + + case NDS_SLOT2_EASYPIANO: + newView = viewPiano; + break; + + case NDS_SLOT2_PADDLE: + newView = viewPaddleController; + break; + + case NDS_SLOT2_PASSME: + newView = viewPassME; + break; + + default: + break; + } + } + else + { + newView = viewUnsupported; + } + + if (newView != nil) + { + NSRect frameRect = [currentDeviceView frame]; + [currentDeviceView retain]; + [deviceSettingsBox replaceSubview:currentDeviceView with:newView]; + currentDeviceView = newView; + [currentDeviceView setFrame:frameRect]; + } +} + +#pragma mark - +#pragma mark Auto + + + +#pragma mark - +#pragma mark Compact Flash + +- (void) setMpcfFolderURL:(NSURL *)theURL +{ + [mpcfFolderURL release]; + mpcfFolderURL = [theURL retain]; + + NSString *thePath = [mpcfFolderURL path]; + [self setMpcfFolderPath:thePath]; + [self setMpcfFolderName:[thePath lastPathComponent]]; +} + +- (NSURL *) mpcfFolderURL +{ + return mpcfFolderURL; +} + +- (void) setMpcfFolderName:(NSString *)theName +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) mpcfFolderName +{ + NSString *folderPath = [self mpcfFolderPath]; + return (folderPath != nil) ? [folderPath lastPathComponent] : NSSTRING_STATUS_NO_FOLDER_CHOSEN; +} + +- (void) setMpcfFolderPath:(NSString *)thePath +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) mpcfFolderPath +{ + return (mpcfFolderURL != nil) ? [mpcfFolderURL path] : nil; +} + +- (void) setMpcfDiskImageURL:(NSURL *)theURL +{ + [mpcfDiskImageURL release]; + mpcfDiskImageURL = [theURL retain]; + + NSString *thePath = [mpcfDiskImageURL path]; + [self setMpcfDiskImagePath:thePath]; + [self setMpcfDiskImageName:[thePath lastPathComponent]]; +} + +- (NSURL *) mpcfDiskImageURL +{ + return mpcfDiskImageURL; +} + +- (void) setMpcfDiskImageName:(NSString *)theName +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) mpcfDiskImageName +{ + NSString *diskImagePath = [self mpcfDiskImagePath]; + return (diskImagePath != nil) ? [diskImagePath lastPathComponent] : NSSTRING_STATUS_NO_DISK_IMAGE_CHOSEN; +} + +- (void) setMpcfDiskImagePath:(NSString *)thePath +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) mpcfDiskImagePath +{ + return (mpcfDiskImageURL != nil) ? [mpcfDiskImageURL path] : nil; +} + +- (IBAction) chooseMPCFPath:(id)sender +{ + const NSInteger mpcfOptionTag = [CocoaDSUtil getIBActionSenderTag:sender]; + + if (mpcfOptionTag == MPCF_OPTION_LOAD_WITH_ROM) + { + [[NSUserDefaults standardUserDefaults] setInteger:mpcfOptionTag forKey:@"Slot2_MPCF_PathOption"]; + return; + } + + NSOpenPanel *panel = [NSOpenPanel openPanel]; + NSArray *fileTypes = nil; + [panel setResolvesAliases:YES]; + [panel setAllowsMultipleSelection:NO]; + + if (mpcfOptionTag == MPCF_ACTION_CHOOSE_DIRECTORY) + { + [panel setTitle:NSSTRING_TITLE_SELECT_MPCF_FOLDER_PANEL]; + [panel setCanChooseDirectories:YES]; + [panel setCanChooseFiles:NO]; + } + else if (mpcfOptionTag == MPCF_ACTION_CHOOSE_DISK_IMAGE) + { + [panel setTitle:NSSTRING_TITLE_SELECT_MPCF_DISK_IMAGE_PANEL]; + [panel setCanChooseDirectories:NO]; + [panel setCanChooseFiles:YES]; + fileTypes = [NSArray arrayWithObjects:@"dmg", @"img", nil]; + } + else + { + return; + } + + NSNumber *mpcfOptionNumber = [[NSNumber numberWithInteger:mpcfOptionTag] retain]; // Released in chooseMPCFPathDidEnd:returnCode:contextInfo: + + // The NSOpenPanel/NSSavePanel method -(void)beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo + // is deprecated in Mac OS X v10.6. +#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 + [panel setAllowedFileTypes:fileTypes]; + [panel beginSheetModalForWindow:window + completionHandler:^(NSInteger result) { + [self chooseMPCFPathDidEnd:panel returnCode:result contextInfo:mpcfOptionNumber]; + } ]; +#else + [panel beginSheetForDirectory:nil + file:nil + types:fileTypes + modalForWindow:window + modalDelegate:self + didEndSelector:@selector(chooseMPCFPathDidEnd:returnCode:contextInfo:) + contextInfo:mpcfOptionNumber]; +#endif +} + +- (void) chooseMPCFPathDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo +{ + const NSInteger prevMpcfOption = [[NSUserDefaults standardUserDefaults] integerForKey:@"Slot2_MPCF_PathOption"]; + const NSInteger mpcfOptionTag = [(NSNumber *)contextInfo integerValue]; + [(NSNumber *)contextInfo release]; // Retained in chooseMPCFPath: + + [sheet orderOut:self]; + + // Temporarily set the MPCF path option in user defaults to some neutral value first and synchronize. + // When the user defaults are actually set later, this will force the proper state transitions to occur. + [[NSUserDefaults standardUserDefaults] setInteger:mpcfOptionTag forKey:@"Slot2_MPCF_PathOption"]; + [[NSUserDefaults standardUserDefaults] synchronize]; + + if (returnCode == NSCancelButton) + { + [[NSUserDefaults standardUserDefaults] setInteger:prevMpcfOption forKey:@"Slot2_MPCF_PathOption"]; + return; + } + + NSURL *selectedURL = [[sheet URLs] lastObject]; //hopefully also the first object + if(selectedURL == nil) + { + [[NSUserDefaults standardUserDefaults] setInteger:prevMpcfOption forKey:@"Slot2_MPCF_PathOption"]; + return; + } + + if (mpcfOptionTag == MPCF_ACTION_CHOOSE_DIRECTORY) + { + [self setMpcfFolderURL:selectedURL]; + [[NSUserDefaults standardUserDefaults] setObject:[selectedURL path] forKey:@"Slot2_MPCF_DirectoryPath"]; + [[NSUserDefaults standardUserDefaults] setInteger:MPCF_OPTION_LOAD_DIRECTORY forKey:@"Slot2_MPCF_PathOption"]; + } + else if (mpcfOptionTag == MPCF_ACTION_CHOOSE_DISK_IMAGE) + { + [self setMpcfDiskImageURL:selectedURL]; + [[NSUserDefaults standardUserDefaults] setObject:[selectedURL path] forKey:@"Slot2_MPCF_DiskImagePath"]; + [[NSUserDefaults standardUserDefaults] setInteger:MPCF_OPTION_LOAD_DISK_IMAGE forKey:@"Slot2_MPCF_PathOption"]; + } +} + +#pragma mark - +#pragma mark GBA Cartridge + +- (void) setGbaCartridgeURL:(NSURL *)theURL +{ + [gbaCartridgeURL release]; + gbaCartridgeURL = [theURL retain]; + + NSString *thePath = [gbaCartridgeURL path]; + [self setGbaCartridgePath:thePath]; + [self setGbaCartridgeName:[thePath lastPathComponent]]; +} + +- (NSURL *) gbaCartridgeURL +{ + return gbaCartridgeURL; +} + +- (void) setGbaCartridgeName:(NSString *)theName +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) gbaCartridgeName +{ + NSString *gbaCartPath = [self gbaCartridgePath]; + return (gbaCartPath != nil) ? [gbaCartPath lastPathComponent] : NSSTRING_STATUS_NO_GBA_CART_CHOSEN; +} + +- (void) setGbaCartridgePath:(NSString *)thePath +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) gbaCartridgePath +{ + return (gbaCartridgeURL != nil) ? [gbaCartridgeURL path] : nil; +} + +- (void) setGbaSRamURL:(NSURL *)theURL +{ + [gbaSRamURL release]; + gbaSRamURL = [theURL retain]; + + NSString *thePath = [gbaSRamURL path]; + [self setGbaSRamPath:thePath]; + [self setGbaSRamName:[thePath lastPathComponent]]; +} + +- (NSURL *) gbaSRamURL +{ + return gbaSRamURL; +} + +- (void) setGbaSRamName:(NSString *)theName +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) gbaSRamName +{ + NSString *sramPath = [self gbaSRamPath]; + return (sramPath != nil) ? [sramPath lastPathComponent] : NSSTRING_STATUS_NO_GBA_SRAM_CHOSEN; +} + +- (void) setGbaSRamPath:(NSString *)thePath +{ + // Do nothing. This is for KVO-compliance only. +} + +- (NSString *) gbaSRamPath +{ + return (gbaSRamURL != nil) ? [gbaSRamURL path] : nil; +} + +- (IBAction) chooseGbaCartridgePath:(id)sender +{ + NSOpenPanel *panel = [NSOpenPanel openPanel]; + [panel setResolvesAliases:YES]; + [panel setAllowsMultipleSelection:NO]; + [panel setTitle:NSSTRING_TITLE_CHOOSE_GBA_CARTRIDGE_PANEL]; + [panel setCanChooseDirectories:NO]; + [panel setCanChooseFiles:YES]; + NSArray *fileTypes = [NSArray arrayWithObjects:@FILE_EXT_GBA_ROM, nil]; + + // The NSOpenPanel/NSSavePanel method -(void)beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo + // is deprecated in Mac OS X v10.6. +#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 + [panel setAllowedFileTypes:fileTypes]; + [panel beginSheetModalForWindow:window + completionHandler:^(NSInteger result) { + [self chooseGbaCartridgePathDidEnd:panel returnCode:result contextInfo:nil]; + } ]; +#else + [panel beginSheetForDirectory:nil + file:nil + types:fileTypes + modalForWindow:window + modalDelegate:self + didEndSelector:@selector(chooseGbaCartridgePathDidEnd:returnCode:contextInfo:) + contextInfo:nil]; +#endif +} + +- (void) chooseGbaCartridgePathDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo +{ + [sheet orderOut:self]; + + if (returnCode == NSCancelButton) + { + return; + } + + NSURL *selectURL = [[sheet URLs] lastObject]; //hopefully also the first object + if(selectURL == nil) + { + return; + } + + [self setGbaCartridgeURL:selectURL]; + [[NSUserDefaults standardUserDefaults] setObject:[selectURL path] forKey:@"Slot2_GBA_CartridgePath"]; + + if ([self isGbaSRamWithCartridge]) + { + NSString *sramPath = [NSString stringWithFormat:@"%@.%s", [[selectURL path] stringByDeletingPathExtension], FILE_EXT_GBA_SRAM]; + [self setGbaSRamURL:[NSURL fileURLWithPath:sramPath]]; + [[NSUserDefaults standardUserDefaults] setObject:sramPath forKey:@"Slot2_GBA_SRAMPath"]; + } + else + { + [self clearSRamPath:self]; + } +} + +- (IBAction) chooseGbaSRamPath:(id)sender +{ + NSOpenPanel *panel = [NSOpenPanel openPanel]; + [panel setResolvesAliases:YES]; + [panel setAllowsMultipleSelection:NO]; + [panel setTitle:NSSTRING_TITLE_CHOOSE_GBA_SRAM_PANEL]; + [panel setCanChooseDirectories:NO]; + [panel setCanChooseFiles:YES]; + NSArray *fileTypes = [NSArray arrayWithObjects:@FILE_EXT_GBA_SRAM, nil]; + + // The NSOpenPanel/NSSavePanel method -(void)beginSheetForDirectory:file:types:modalForWindow:modalDelegate:didEndSelector:contextInfo + // is deprecated in Mac OS X v10.6. +#if MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 + [panel setAllowedFileTypes:fileTypes]; + [panel beginSheetModalForWindow:window + completionHandler:^(NSInteger result) { + [self chooseGbaSRamPathDidEnd:panel returnCode:result contextInfo:nil]; + } ]; +#else + [panel beginSheetForDirectory:nil + file:nil + types:fileTypes + modalForWindow:window + modalDelegate:self + didEndSelector:@selector(chooseGbaSRamPathDidEnd:returnCode:contextInfo:) + contextInfo:nil]; +#endif +} + +- (void) chooseGbaSRamPathDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo +{ + [sheet orderOut:self]; + + if (returnCode == NSCancelButton) + { + return; + } + + NSURL *selectURL = [[sheet URLs] lastObject]; //hopefully also the first object + if(selectURL == nil) + { + return; + } + + [self setGbaSRamURL:selectURL]; + [[NSUserDefaults standardUserDefaults] setObject:[selectURL path] forKey:@"Slot2_GBA_SRAMPath"]; +} + +- (IBAction) clearSRamPath:(id)sender +{ + [self setGbaSRamURL:nil]; + [[NSUserDefaults standardUserDefaults] setObject:nil forKey:@"Slot2_GBA_SRAMPath"]; +} + +- (BOOL) isGbaSRamWithCartridge +{ + BOOL result = NO; + NSString *gbaCartPath = [self gbaCartridgePath]; + + if (gbaCartPath == nil) + { + return result; + } + + NSString *sramPath = [NSString stringWithFormat:@"%@.%s", [gbaCartPath stringByDeletingPathExtension], FILE_EXT_GBA_SRAM]; + + NSFileManager *fileManager = [[NSFileManager alloc] init]; + result = [fileManager isReadableFileAtPath:sramPath]; + [fileManager release]; + + return result; +} + +#pragma mark - +#pragma mark Rumble Pak + +- (IBAction) testRumble:(id)sender +{ + NSDictionary *ffProperties = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:YES], @"ffState", + [NSNumber numberWithInteger:RUMBLE_ITERATIONS_TEST], @"iterations", + nil]; + + [[NSNotificationCenter defaultCenter] postNotificationName:@"org.desmume.DeSmuME.sendForceFeedback" + object:nil + userInfo:ffProperties]; +} + +- (void) sendForceFeedback:(NSNotification *)aNotification +{ + if ([self hidManager] == nil) + { + return; + } + + NSDictionary *ffProperties = (NSDictionary *)[aNotification userInfo]; + const BOOL ffState = [(NSNumber *)[ffProperties valueForKey:@"ffState"] boolValue]; + const UInt32 iterations = [(NSNumber *)[ffProperties valueForKey:@"iterations"] unsignedIntValue]; + + NSMutableArray *inputDeviceList = [[[self hidManager] deviceListController] arrangedObjects]; + + for (InputHIDDevice *inputDevice in inputDeviceList) + { + if ([inputDevice isForceFeedbackEnabled]) + { + if (ffState) + { + [inputDevice startForceFeedbackAndIterate:iterations flags:0]; + } + else + { + [inputDevice stopForceFeedback]; + } + } + } +} + +#pragma mark - +#pragma mark Paddle + +- (void) setPaddleDirectWithScalar:(float)scalar +{ + // Clamp the input value. + if (scalar < -1.0f) + { + scalar = -1.0f; + } + + if (scalar > 1.0f) + { + scalar = 1.0f; + } + + // Normalize the input value for the paddle. + const float paddleValue = 256.0f * scalar; + [[self deviceManager] setPaddleValue:(UInt16)paddleValue]; +} + +- (void) setPaddleRelativeWithInteger:(NSInteger)value +{ + NSInteger paddleValue = [[self deviceManager] paddleValue] + value; + [[self deviceManager] setPaddleValue:(UInt16)paddleValue]; +} + +#pragma mark - +#pragma mark NSTableViewDelegate Protocol + +- (void)tableViewSelectionDidChange:(NSNotification *)aNotification +{ + NSTableView *table = (NSTableView *)[aNotification object]; + NSInteger rowIndex = [table selectedRow]; + + if (rowIndex >= 0) + { + CocoaDSSlot2Device *theDevice = nil; + NSArray *selectedObjects = [deviceListController selectedObjects]; + + if ([selectedObjects count] > 0) + { + theDevice = (CocoaDSSlot2Device *)[selectedObjects objectAtIndex:0]; + [self setSelectedDevice:theDevice]; + } + + [self setDeviceViewByDevice:theDevice]; + } + else + { + NSRect frameRect = [currentDeviceView frame]; + [currentDeviceView retain]; + [deviceSettingsBox replaceSubview:currentDeviceView with:viewNoSelection]; + currentDeviceView = viewNoSelection; + [currentDeviceView setFrame:frameRect]; + } +} + +@end diff --git a/desmume/src/cocoa/userinterface/appDelegate.h b/desmume/src/cocoa/userinterface/appDelegate.h index fb789684d..a5310edb1 100644 --- a/desmume/src/cocoa/userinterface/appDelegate.h +++ b/desmume/src/cocoa/userinterface/appDelegate.h @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2011-2013 DeSmuME team + Copyright (C) 2011-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -38,12 +38,14 @@ NSObjectController *prefWindowController; NSObjectController *cheatWindowController; NSObjectController *cdsCoreController; + NSArrayController *inputDeviceListController; FileMigrationDelegate *migrationDelegate; InputManager *inputManager; NSWindow *prefWindow; NSWindow *troubleshootingWindow; NSWindow *cheatListWindow; + NSWindow *slot2Window; NSView *prefGeneralView; InputPrefsView *inputPrefsView; @@ -68,11 +70,13 @@ @property (readonly) IBOutlet NSObjectController *prefWindowController; @property (readonly) IBOutlet NSObjectController *cheatWindowController; @property (readonly) IBOutlet NSObjectController *cdsCoreController; +@property (readonly) IBOutlet NSArrayController *inputDeviceListController; @property (readonly) IBOutlet FileMigrationDelegate *migrationDelegate; @property (readonly) IBOutlet InputManager *inputManager; @property (readonly) IBOutlet NSWindow *prefWindow; @property (readonly) IBOutlet NSWindow *troubleshootingWindow; @property (readonly) IBOutlet NSWindow *cheatListWindow; +@property (readonly) IBOutlet NSWindow *slot2Window; @property (readonly) IBOutlet NSView *prefGeneralView; @property (readonly) IBOutlet NSMenu *mLoadStateSlot; @property (readonly) IBOutlet NSMenu *mSaveStateSlot; diff --git a/desmume/src/cocoa/userinterface/appDelegate.mm b/desmume/src/cocoa/userinterface/appDelegate.mm index 5dada9d80..d13abc91a 100644 --- a/desmume/src/cocoa/userinterface/appDelegate.mm +++ b/desmume/src/cocoa/userinterface/appDelegate.mm @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2011-2013 DeSmuME team + Copyright (C) 2011-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,6 +20,7 @@ #import "DisplayWindowController.h" #import "EmuControllerDelegate.h" #import "FileMigrationDelegate.h" +#import "Slot2WindowDelegate.h" #import "preferencesWindowDelegate.h" #import "troubleshootingWindowDelegate.h" #import "cheatWindowDelegate.h" @@ -40,6 +41,7 @@ @synthesize prefWindow; @synthesize troubleshootingWindow; @synthesize cheatListWindow; +@synthesize slot2Window; @synthesize prefGeneralView; @synthesize mLoadStateSlot; @synthesize mSaveStateSlot; @@ -50,6 +52,7 @@ @synthesize romInfoPanelController; @synthesize prefWindowController; @synthesize cdsCoreController; +@synthesize inputDeviceListController; @synthesize cheatWindowController; @synthesize migrationDelegate; @synthesize inputManager; @@ -115,6 +118,7 @@ EmuControllerDelegate *emuControl = (EmuControllerDelegate *)[emuControlController content]; PreferencesWindowDelegate *prefWindowDelegate = (PreferencesWindowDelegate *)[prefWindow delegate]; CheatWindowDelegate *cheatWindowDelegate = (CheatWindowDelegate *)[cheatListWindow delegate]; + Slot2WindowDelegate *slot2WindowDelegate = (Slot2WindowDelegate *)[slot2Window delegate]; // Create the needed directories in Application Support if they haven't already // been created. @@ -166,7 +170,8 @@ [self setRomInfoPanelBoxTitleColors]; // Set the preferences window to the general view by default. - [prefWindowDelegate switchContentView:prefGeneralView]; + [[prefWindowDelegate toolbar] setSelectedItemIdentifier:@"General"]; + [prefWindowDelegate changePrefView:self]; // Setup the slot menu items. We set this up manually instead of through Interface // Builder because we're assuming an arbitrary number of slot items. @@ -193,6 +198,11 @@ [NSThread sleepUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.01]]; } + // Update the SLOT-2 device list after the emulation core is initialized. + [slot2WindowDelegate update]; + [slot2WindowDelegate setHidManager:[inputManager hidManager]]; + [slot2WindowDelegate setAutoSelectedDeviceText:[[slot2WindowDelegate deviceManager] autoSelectedDeviceName]]; + // Start up the threads for our outputs. [NSThread detachNewThreadSelector:@selector(runThread:) toTarget:newSpeaker withObject:nil]; @@ -417,6 +427,7 @@ { EmuControllerDelegate *emuControl = (EmuControllerDelegate *)[emuControlController content]; PreferencesWindowDelegate *prefWindowDelegate = [prefWindow delegate]; + Slot2WindowDelegate *slot2WindowDelegate = (Slot2WindowDelegate *)[slot2Window delegate]; NSMutableDictionary *prefBindings = [prefWindowDelegate bindings]; CocoaDSCore *cdsCore = (CocoaDSCore *)[cdsCoreController content]; @@ -571,7 +582,7 @@ } else { - [prefBindings setValue:NSSTRING_STATUS_AUTOLOAD_ROM_NAME_NONE forKey:@"AutoloadRomName"]; + [prefBindings setValue:NSSTRING_STATUS_NO_ROM_CHOSEN forKey:@"AutoloadRomName"]; } // Set the menu for the display rotation. @@ -591,6 +602,15 @@ } [inputManager setMappingsWithMappings:userMappings]; + [[inputManager hidManager] setDeviceListController:inputDeviceListController]; + + // Set up the default SLOT-2 device. + [slot2WindowDelegate setMpcfFolderURL:[NSURL fileURLWithPath:[[NSUserDefaults standardUserDefaults] stringForKey:@"Slot2_MPCF_DirectoryPath"]]]; + [slot2WindowDelegate setMpcfDiskImageURL:[NSURL fileURLWithPath:[[NSUserDefaults standardUserDefaults] stringForKey:@"Slot2_MPCF_DiskImagePath"]]]; + [slot2WindowDelegate setGbaCartridgeURL:[NSURL fileURLWithPath:[[NSUserDefaults standardUserDefaults] stringForKey:@"Slot2_GBA_CartridgePath"]]]; + [slot2WindowDelegate setGbaSRamURL:[NSURL fileURLWithPath:[[NSUserDefaults standardUserDefaults] stringForKey:@"Slot2_GBA_SRAMPath"]]]; + [slot2WindowDelegate selectDeviceByType:[[NSUserDefaults standardUserDefaults] integerForKey:@"Slot2_LoadedDevice"]]; + [slot2WindowDelegate applySettings:nil]; // Set up the rest of the emulation-related user defaults. [emuControl setupUserDefaults]; diff --git a/desmume/src/cocoa/userinterface/inputPrefsView.h b/desmume/src/cocoa/userinterface/inputPrefsView.h index e8a3895c4..c815a0f22 100644 --- a/desmume/src/cocoa/userinterface/inputPrefsView.h +++ b/desmume/src/cocoa/userinterface/inputPrefsView.h @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2012-2013 DeSmuME team + Copyright (C) 2012-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,6 +45,7 @@ NSWindow *inputSettingsSaveStateSlot; NSWindow *inputSettingsSetSpeedLimit; NSWindow *inputSettingsGPUState; + NSWindow *inputSettingsPaddleController; InputManager *inputManager; NSString *configInputTargetID; @@ -75,6 +76,7 @@ @property (readonly) IBOutlet NSWindow *inputSettingsSaveStateSlot; @property (readonly) IBOutlet NSWindow *inputSettingsSetSpeedLimit; @property (readonly) IBOutlet NSWindow *inputSettingsGPUState; +@property (readonly) IBOutlet NSWindow *inputSettingsPaddleController; @property (readonly) IBOutlet InputManager *inputManager; @property (retain) NSString *configInputTargetID; diff --git a/desmume/src/cocoa/userinterface/inputPrefsView.mm b/desmume/src/cocoa/userinterface/inputPrefsView.mm index b733d6d19..b3c2ae9b1 100644 --- a/desmume/src/cocoa/userinterface/inputPrefsView.mm +++ b/desmume/src/cocoa/userinterface/inputPrefsView.mm @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2012-2013 DeSmuME team + Copyright (C) 2012-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -42,6 +42,7 @@ @synthesize inputSettingsSaveStateSlot; @synthesize inputSettingsSetSpeedLimit; @synthesize inputSettingsGPUState; +@synthesize inputSettingsPaddleController; @synthesize inputProfileSheet; @synthesize inputProfileRenameSheet; @synthesize inputManager; @@ -173,6 +174,7 @@ inputSettingsSaveStateSlot, @"Save State Slot", inputSettingsSetSpeedLimit, @"Set Speed", inputSettingsGPUState, @"Enable/Disable GPU State", + inputSettingsPaddleController, @"Paddle", nil]; } diff --git a/desmume/src/cocoa/userinterface/preferencesWindowDelegate.h b/desmume/src/cocoa/userinterface/preferencesWindowDelegate.h index 0b1707125..315108ac4 100644 --- a/desmume/src/cocoa/userinterface/preferencesWindowDelegate.h +++ b/desmume/src/cocoa/userinterface/preferencesWindowDelegate.h @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2012-2013 DeSmuME team + Copyright (C) 2012-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -30,6 +30,7 @@ { NSObject *dummyObject; NSWindow *window; + NSToolbar *toolbar; NSWindow *firmwareConfigSheet; NSObjectController *cdsCoreController; NSObjectController *emuController; @@ -42,6 +43,7 @@ NSView *viewDisplay; NSView *viewSound; NSView *viewEmulation; + NSDictionary *prefViewDict; NSPopUpButton *displayRotationMenu; NSMenuItem *displayRotationMenuCustomItem; @@ -62,6 +64,7 @@ @property (readonly) IBOutlet NSObject *dummyObject; @property (readonly) IBOutlet NSWindow *window; +@property (readonly) IBOutlet NSToolbar *toolbar; @property (readonly) IBOutlet NSWindow *firmwareConfigSheet; @property (readonly) IBOutlet NSObjectController *cdsCoreController; @property (readonly) IBOutlet NSObjectController *emuController; @@ -83,11 +86,7 @@ @property (readonly) NSMutableDictionary *bindings; -- (IBAction) showGeneralView:(id)sender; -- (IBAction) showInputView:(id)sender; -- (IBAction) showDisplayView:(id)sender; -- (IBAction) showSoundView:(id)sender; -- (IBAction) showEmulationView:(id)sender; +- (IBAction) changePrefView:(id)sender; - (IBAction) chooseAdvansceneDatabase:(id)sender; - (void) chooseAdvansceneDatabaseDidEnd:(NSOpenPanel *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo; diff --git a/desmume/src/cocoa/userinterface/preferencesWindowDelegate.mm b/desmume/src/cocoa/userinterface/preferencesWindowDelegate.mm index 7001f6063..44cf203c4 100644 --- a/desmume/src/cocoa/userinterface/preferencesWindowDelegate.mm +++ b/desmume/src/cocoa/userinterface/preferencesWindowDelegate.mm @@ -1,6 +1,6 @@ /* Copyright (C) 2011 Roger Manuel - Copyright (C) 2012-2013 DeSmuME team + Copyright (C) 2012-2014 DeSmuME Team This file is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -32,6 +32,7 @@ @synthesize dummyObject; @synthesize window; +@synthesize toolbar; @synthesize firmwareConfigSheet; @synthesize cdsCoreController; @synthesize emuController; @@ -113,6 +114,8 @@ [bindings setObject:iconVolumeFull forKey:@"volumeIconImage"]; + prefViewDict = nil; + return self; } @@ -124,34 +127,36 @@ [iconVolumeMute release]; [bindings release]; [videoFilter release]; + [prefViewDict release]; [super dealloc]; } -- (IBAction) showGeneralView:(id)sender +- (IBAction) changePrefView:(id)sender { - [self switchContentView:viewGeneral]; -} - -- (IBAction) showInputView:(id)sender -{ - [self switchContentView:(NSView *)viewInput]; - [window makeFirstResponder:(NSView *)viewInput]; -} - -- (IBAction) showDisplayView:(id)sender -{ - [self switchContentView:viewDisplay]; -} - -- (IBAction) showSoundView:(id)sender -{ - [self switchContentView:viewSound]; -} - -- (IBAction) showEmulationView:(id)sender -{ - [self switchContentView:viewEmulation]; + if (prefViewDict == nil) + { + // Associates NSView objects to their respective toolbar identifiers. + prefViewDict = [[NSDictionary alloc] initWithObjectsAndKeys: + viewGeneral, @"General", + viewInput, @"Input", + viewDisplay, @"Display", + viewSound, @"Sound", + viewEmulation, @"Emulation", + nil]; + } + + NSString *toolbarItemIdentifier = [[self toolbar] selectedItemIdentifier]; + NSView *theView = [prefViewDict objectForKey:toolbarItemIdentifier]; + if (theView != nil) + { + [self switchContentView:theView]; + + if ([toolbarItemIdentifier isEqualToString:@"Input"]) + { + [window makeFirstResponder:theView]; + } + } } - (IBAction) chooseRomForAutoload:(id)sender