summaryrefslogtreecommitdiff
path: root/macosx/plugins
diff options
context:
space:
mode:
authorSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2013-07-04 19:16:29 +0000
committerSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2013-07-04 19:16:29 +0000
commite8799fe621a86267ea50ae45ec03b5fb05c66905 (patch)
treef4735dcbe52001b96db037d4a1ac0cf09d8baf1f /macosx/plugins
parentdd7da2fae96b9ba6bdbc28f7b26469373801f21e (diff)
downloadpcsxr-e8799fe621a86267ea50ae45ec03b5fb05c66905.tar.gz
Copy over DFCdrom to bladesio1 on OS X. to begin the process for the OS X plug-in.
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@85814 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'macosx/plugins')
-rw-r--r--macosx/plugins/Bladesio1/ARCBridge.h36
-rw-r--r--macosx/plugins/Bladesio1/DFCdrom.xcodeproj/project.pbxproj409
-rw-r--r--macosx/plugins/Bladesio1/English.lproj/Credits.rtf13
-rw-r--r--macosx/plugins/Bladesio1/English.lproj/DFCdromPluginConfig.xib785
-rwxr-xr-xmacosx/plugins/Bladesio1/English.lproj/InfoPlist.stringsbin0 -> 486 bytes
-rw-r--r--macosx/plugins/Bladesio1/English.lproj/Localizable.strings9
-rw-r--r--macosx/plugins/Bladesio1/Info.plist24
-rwxr-xr-xmacosx/plugins/Bladesio1/macsrc/PluginConfigController.h18
-rwxr-xr-xmacosx/plugins/Bladesio1/macsrc/PluginConfigController.m171
-rwxr-xr-xmacosx/plugins/Bladesio1/macsrc/cdr-macosx.c252
-rwxr-xr-xmacosx/plugins/Bladesio1/macsrc/cfg.c53
-rw-r--r--macosx/plugins/Bladesio1/version.plist16
12 files changed, 1786 insertions, 0 deletions
diff --git a/macosx/plugins/Bladesio1/ARCBridge.h b/macosx/plugins/Bladesio1/ARCBridge.h
new file mode 100644
index 00000000..ea274b84
--- /dev/null
+++ b/macosx/plugins/Bladesio1/ARCBridge.h
@@ -0,0 +1,36 @@
+//
+// ARCBridge.h
+// PPMacho
+//
+// Created by C.W. Betts on 12/23/12.
+//
+//
+
+#ifndef PPMacho_ARCBridge_h
+#define PPMacho_ARCBridge_h
+
+#if __has_feature(objc_arc)
+
+#define SUPERDEALLOC
+#define RELEASEOBJ(obj)
+#define RETAINOBJ(obj) obj
+#define RETAINOBJNORETURN(obj)
+#define AUTORELEASEOBJ(obj) obj
+#define AUTORELEASEOBJNORETURN(obj)
+#define BRIDGE(toType, obj) (__bridge toType)(obj)
+#define __arcweak __weak
+
+#else
+
+#define SUPERDEALLOC [super dealloc]
+#define RELEASEOBJ(obj) [obj release]
+#define RETAINOBJ(obj) [obj retain]
+#define RETAINOBJNORETURN(obj) [obj retain]
+#define AUTORELEASEOBJ(obj) [obj autorelease]
+#define AUTORELEASEOBJNORETURN(obj) [obj autorelease]
+#define BRIDGE(toType, obj) (toType)obj
+#define __arcweak
+
+#endif
+
+#endif
diff --git a/macosx/plugins/Bladesio1/DFCdrom.xcodeproj/project.pbxproj b/macosx/plugins/Bladesio1/DFCdrom.xcodeproj/project.pbxproj
new file mode 100644
index 00000000..8a48676b
--- /dev/null
+++ b/macosx/plugins/Bladesio1/DFCdrom.xcodeproj/project.pbxproj
@@ -0,0 +1,409 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 46;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 28586CC614651E870082B8EC /* DFCdromPluginConfig.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28586CC414651E870082B8EC /* DFCdromPluginConfig.xib */; };
+ 2BD707180555997500CB5D9B /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2BD707170555997500CB5D9B /* IOKit.framework */; };
+ 552E4CBA1474737A00FB231F /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 552E4CBC1474737A00FB231F /* Localizable.strings */; };
+ 5586006E1785137C00CB3D85 /* ARCBridge.h in Headers */ = {isa = PBXBuildFile; fileRef = 5586006D1785137C00CB3D85 /* ARCBridge.h */; };
+ 713DB2E811F113C30001BDD4 /* cdr.c in Sources */ = {isa = PBXBuildFile; fileRef = 713DB2E311F113C30001BDD4 /* cdr.c */; };
+ 713DB2E911F113C30001BDD4 /* cdr.h in Headers */ = {isa = PBXBuildFile; fileRef = 713DB2E411F113C30001BDD4 /* cdr.h */; };
+ 713DB2EB11F113C30001BDD4 /* util.c in Sources */ = {isa = PBXBuildFile; fileRef = 713DB2E611F113C30001BDD4 /* util.c */; };
+ 71F3C32811F3CD0B007B9F12 /* cdr-macosx.c in Sources */ = {isa = PBXBuildFile; fileRef = 71F3C32411F3CD0B007B9F12 /* cdr-macosx.c */; };
+ 71F3C32911F3CD0B007B9F12 /* cfg.c in Sources */ = {isa = PBXBuildFile; fileRef = 71F3C32511F3CD0B007B9F12 /* cfg.c */; };
+ 71F3C32A11F3CD0B007B9F12 /* PluginConfigController.h in Headers */ = {isa = PBXBuildFile; fileRef = 71F3C32611F3CD0B007B9F12 /* PluginConfigController.h */; };
+ 71F3C32B11F3CD0B007B9F12 /* PluginConfigController.m in Sources */ = {isa = PBXBuildFile; fileRef = 71F3C32711F3CD0B007B9F12 /* PluginConfigController.m */; };
+ 71F3C38611F3CFED007B9F12 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 71F3C38511F3CFED007B9F12 /* AppKit.framework */; };
+ 71F3C38811F3CFF7007B9F12 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 71F3C38711F3CFF7007B9F12 /* Carbon.framework */; };
+ 71F3C47A11F3D108007B9F12 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 71F3C47811F3D108007B9F12 /* Credits.rtf */; };
+ 8D576314048677EA00EA77CD /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0AA1909FFE8422F4C02AAC07 /* CoreFoundation.framework */; };
+ 8D5B49A804867FD3000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8D5B49A704867FD3000E48DA /* InfoPlist.strings */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 0AA1909FFE8422F4C02AAC07 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
+ 28586CC514651E870082B8EC /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/DFCdromPluginConfig.xib; sourceTree = "<group>"; };
+ 2BD707170555997500CB5D9B /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
+ 552E4CBB1474737A00FB231F /* English */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = "<group>"; };
+ 5586006D1785137C00CB3D85 /* ARCBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ARCBridge.h; sourceTree = "<group>"; };
+ 713DB2E311F113C30001BDD4 /* cdr.c */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.c; lineEnding = 2; name = cdr.c; path = ../../../plugins/dfcdrom/cdr.c; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+ 713DB2E411F113C30001BDD4 /* cdr.h */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.h; name = cdr.h; path = ../../../plugins/dfcdrom/cdr.h; sourceTree = SOURCE_ROOT; };
+ 713DB2E611F113C30001BDD4 /* util.c */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.c; lineEnding = 0; name = util.c; path = ../../../plugins/dfcdrom/util.c; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+ 71F3C32411F3CD0B007B9F12 /* cdr-macosx.c */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.c; lineEnding = 0; name = "cdr-macosx.c"; path = "macsrc/cdr-macosx.c"; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
+ 71F3C32511F3CD0B007B9F12 /* cfg.c */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.c; name = cfg.c; path = macsrc/cfg.c; sourceTree = "<group>"; };
+ 71F3C32611F3CD0B007B9F12 /* PluginConfigController.h */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.h; name = PluginConfigController.h; path = macsrc/PluginConfigController.h; sourceTree = "<group>"; };
+ 71F3C32711F3CD0B007B9F12 /* PluginConfigController.m */ = {isa = PBXFileReference; fileEncoding = 0; lastKnownFileType = sourcecode.c.objc; name = PluginConfigController.m; path = macsrc/PluginConfigController.m; sourceTree = "<group>"; };
+ 71F3C38511F3CFED007B9F12 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
+ 71F3C38711F3CFF7007B9F12 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
+ 71F3C47911F3D108007B9F12 /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/Credits.rtf; sourceTree = "<group>"; };
+ 8D576316048677EA00EA77CD /* DFCdrom.psxplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DFCdrom.psxplugin; sourceTree = BUILT_PRODUCTS_DIR; };
+ 8D576317048677EA00EA77CD /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 8D576313048677EA00EA77CD /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D576314048677EA00EA77CD /* CoreFoundation.framework in Frameworks */,
+ 2BD707180555997500CB5D9B /* IOKit.framework in Frameworks */,
+ 71F3C38611F3CFED007B9F12 /* AppKit.framework in Frameworks */,
+ 71F3C38811F3CFF7007B9F12 /* Carbon.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 089C166AFE841209C02AAC07 /* CdrDevMac */ = {
+ isa = PBXGroup;
+ children = (
+ 08FB77AFFE84173DC02AAC07 /* Source Files */,
+ 089C167CFE841241C02AAC07 /* Resources */,
+ 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
+ 19C28FB6FE9D52B211CA2CBB /* Products */,
+ );
+ name = CdrDevMac;
+ sourceTree = "<group>";
+ };
+ 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
+ isa = PBXGroup;
+ children = (
+ 71F3C38511F3CFED007B9F12 /* AppKit.framework */,
+ 71F3C38711F3CFF7007B9F12 /* Carbon.framework */,
+ 0AA1909FFE8422F4C02AAC07 /* CoreFoundation.framework */,
+ 2BD707170555997500CB5D9B /* IOKit.framework */,
+ );
+ name = "External Frameworks and Libraries";
+ sourceTree = "<group>";
+ };
+ 089C167CFE841241C02AAC07 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ 28586CC414651E870082B8EC /* DFCdromPluginConfig.xib */,
+ 71F3C47811F3D108007B9F12 /* Credits.rtf */,
+ 8D576317048677EA00EA77CD /* Info.plist */,
+ 8D5B49A704867FD3000E48DA /* InfoPlist.strings */,
+ 552E4CBC1474737A00FB231F /* Localizable.strings */,
+ );
+ name = Resources;
+ sourceTree = "<group>";
+ };
+ 08FB77AFFE84173DC02AAC07 /* Source Files */ = {
+ isa = PBXGroup;
+ children = (
+ 71F3C32111F3CCEF007B9F12 /* macsrc */,
+ 71F3C30911F3CC22007B9F12 /* src */,
+ );
+ name = "Source Files";
+ sourceTree = "<group>";
+ };
+ 19C28FB6FE9D52B211CA2CBB /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 8D576316048677EA00EA77CD /* DFCdrom.psxplugin */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 71F3C30911F3CC22007B9F12 /* src */ = {
+ isa = PBXGroup;
+ children = (
+ 713DB2E311F113C30001BDD4 /* cdr.c */,
+ 713DB2E411F113C30001BDD4 /* cdr.h */,
+ 713DB2E611F113C30001BDD4 /* util.c */,
+ );
+ name = src;
+ sourceTree = "<group>";
+ };
+ 71F3C32111F3CCEF007B9F12 /* macsrc */ = {
+ isa = PBXGroup;
+ children = (
+ 5586006D1785137C00CB3D85 /* ARCBridge.h */,
+ 71F3C32411F3CD0B007B9F12 /* cdr-macosx.c */,
+ 71F3C32511F3CD0B007B9F12 /* cfg.c */,
+ 71F3C32611F3CD0B007B9F12 /* PluginConfigController.h */,
+ 71F3C32711F3CD0B007B9F12 /* PluginConfigController.m */,
+ );
+ name = macsrc;
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXHeadersBuildPhase section */
+ 8D57630E048677EA00EA77CD /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 713DB2E911F113C30001BDD4 /* cdr.h in Headers */,
+ 71F3C32A11F3CD0B007B9F12 /* PluginConfigController.h in Headers */,
+ 5586006E1785137C00CB3D85 /* ARCBridge.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
+/* Begin PBXNativeTarget section */
+ 8D57630D048677EA00EA77CD /* DFCdrom */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 710735990FDEED75004AD098 /* Build configuration list for PBXNativeTarget "DFCdrom" */;
+ buildPhases = (
+ 8D57630E048677EA00EA77CD /* Headers */,
+ 8D57630F048677EA00EA77CD /* Resources */,
+ 8D576311048677EA00EA77CD /* Sources */,
+ 8D576313048677EA00EA77CD /* Frameworks */,
+ 8D576315048677EA00EA77CD /* Rez */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = DFCdrom;
+ productInstallPath = "$(HOME)/Library/Bundles";
+ productName = CdrDevMac;
+ productReference = 8D576316048677EA00EA77CD /* DFCdrom.psxplugin */;
+ productType = "com.apple.product-type.bundle";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 089C1669FE841209C02AAC07 /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastUpgradeCheck = 0460;
+ };
+ buildConfigurationList = 7107359E0FDEED75004AD098 /* Build configuration list for PBXProject "DFCdrom" */;
+ compatibilityVersion = "Xcode 3.2";
+ developmentRegion = English;
+ hasScannedForEncodings = 1;
+ knownRegions = (
+ English,
+ Japanese,
+ French,
+ German,
+ );
+ mainGroup = 089C166AFE841209C02AAC07 /* CdrDevMac */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 8D57630D048677EA00EA77CD /* DFCdrom */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 8D57630F048677EA00EA77CD /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D5B49A804867FD3000E48DA /* InfoPlist.strings in Resources */,
+ 71F3C47A11F3D108007B9F12 /* Credits.rtf in Resources */,
+ 28586CC614651E870082B8EC /* DFCdromPluginConfig.xib in Resources */,
+ 552E4CBA1474737A00FB231F /* Localizable.strings in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXRezBuildPhase section */
+ 8D576315048677EA00EA77CD /* Rez */ = {
+ isa = PBXRezBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXRezBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 8D576311048677EA00EA77CD /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 713DB2E811F113C30001BDD4 /* cdr.c in Sources */,
+ 713DB2EB11F113C30001BDD4 /* util.c in Sources */,
+ 71F3C32811F3CD0B007B9F12 /* cdr-macosx.c in Sources */,
+ 71F3C32911F3CD0B007B9F12 /* cfg.c in Sources */,
+ 71F3C32B11F3CD0B007B9F12 /* PluginConfigController.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+ 28586CC414651E870082B8EC /* DFCdromPluginConfig.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 28586CC514651E870082B8EC /* English */,
+ );
+ name = DFCdromPluginConfig.xib;
+ sourceTree = "<group>";
+ };
+ 552E4CBC1474737A00FB231F /* Localizable.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 552E4CBB1474737A00FB231F /* English */,
+ );
+ name = Localizable.strings;
+ sourceTree = "<group>";
+ };
+ 71F3C47811F3D108007B9F12 /* Credits.rtf */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 71F3C47911F3D108007B9F12 /* English */,
+ );
+ name = Credits.rtf;
+ sourceTree = "<group>";
+ };
+ 8D5B49A704867FD3000E48DA /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 089C167EFE841241C02AAC07 /* English */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ 7107359A0FDEED75004AD098 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ "CLANG_ENABLE_OBJC_ARC[arch=x86_64]" = YES;
+ COMBINE_HIDPI_IMAGES = YES;
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "PCSXRPLUG=DFCdrom",
+ "$(inherited)",
+ );
+ GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
+ GCC_WARN_UNKNOWN_PRAGMAS = NO;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(USER_LIBRARY_DIR)/Playstation Emulator Plugins";
+ OTHER_LDFLAGS = "";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SECTORDER_FLAGS = "";
+ WRAPPER_EXTENSION = psxplugin;
+ };
+ name = Debug;
+ };
+ 7107359B0FDEED75004AD098 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ "CLANG_ENABLE_OBJC_ARC[arch=x86_64]" = YES;
+ COMBINE_HIDPI_IMAGES = YES;
+ COPY_PHASE_STRIP = YES;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_OPTIMIZATION_LEVEL = s;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "PCSXRPLUG=DFCdrom",
+ "$(inherited)",
+ );
+ GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
+ GCC_WARN_UNKNOWN_PRAGMAS = NO;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(USER_LIBRARY_DIR)/Playstation Emulator Plugins";
+ OTHER_LDFLAGS = "";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SECTORDER_FLAGS = "";
+ WRAPPER_EXTENSION = psxplugin;
+ };
+ name = Release;
+ };
+ 7107359F0FDEED75004AD098 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DEBUG_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "_MACOSX=1",
+ "$(DEBUG_PREPROCESSOR_DEFINITIONS)",
+ );
+ GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ ../../../libpcsxcore,
+ ../..,
+ ../../../plugins/dfcdrom,
+ );
+ MACOSX_DEPLOYMENT_TARGET = 10.6;
+ ONLY_ACTIVE_ARCH = YES;
+ SDKROOT = macosx;
+ STRIP_INSTALLED_PRODUCT = NO;
+ VALID_ARCHS = "i386 x86_64";
+ };
+ name = Debug;
+ };
+ 710735A00FDEED75004AD098 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DEBUG_PREPROCESSOR_DEFINITIONS = "";
+ GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "_MACOSX=1",
+ "$(DEBUG_PREPROCESSOR_DEFINITIONS)",
+ );
+ GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ HEADER_SEARCH_PATHS = (
+ ../../../libpcsxcore,
+ ../..,
+ ../../../plugins/dfcdrom,
+ );
+ MACOSX_DEPLOYMENT_TARGET = 10.6;
+ SDKROOT = macosx;
+ VALID_ARCHS = "i386 x86_64";
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 710735990FDEED75004AD098 /* Build configuration list for PBXNativeTarget "DFCdrom" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7107359A0FDEED75004AD098 /* Debug */,
+ 7107359B0FDEED75004AD098 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 7107359E0FDEED75004AD098 /* Build configuration list for PBXProject "DFCdrom" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 7107359F0FDEED75004AD098 /* Debug */,
+ 710735A00FDEED75004AD098 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 089C1669FE841209C02AAC07 /* Project object */;
+}
diff --git a/macosx/plugins/Bladesio1/English.lproj/Credits.rtf b/macosx/plugins/Bladesio1/English.lproj/Credits.rtf
new file mode 100644
index 00000000..76fa6442
--- /dev/null
+++ b/macosx/plugins/Bladesio1/English.lproj/Credits.rtf
@@ -0,0 +1,13 @@
+{\rtf1\mac\ansicpg10025\cocoartf824\cocoasubrtf420
+{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;}
+{\colortbl;\red255\green255\blue255;}
+\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
+
+\f0\b\fs24 \cf0 Original coder:
+\f1\b0 \
+ linuzappz\
+\
+
+\f0\b Macintosh Port:
+\f1\b0 \
+ Wei Mingzhi} \ No newline at end of file
diff --git a/macosx/plugins/Bladesio1/English.lproj/DFCdromPluginConfig.xib b/macosx/plugins/Bladesio1/English.lproj/DFCdromPluginConfig.xib
new file mode 100644
index 00000000..43710512
--- /dev/null
+++ b/macosx/plugins/Bladesio1/English.lproj/DFCdromPluginConfig.xib
@@ -0,0 +1,785 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
+ <data>
+ <int key="IBDocument.SystemTarget">1060</int>
+ <string key="IBDocument.SystemVersion">11C74</string>
+ <string key="IBDocument.InterfaceBuilderVersion">1938</string>
+ <string key="IBDocument.AppKitVersion">1138.23</string>
+ <string key="IBDocument.HIToolboxVersion">567.00</string>
+ <object class="NSMutableDictionary" key="IBDocument.PluginVersions">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="NS.object.0">1938</string>
+ </object>
+ <array key="IBDocument.IntegratedClassDependencies">
+ <string>NSPopUpButton</string>
+ <string>NSButton</string>
+ <string>NSMenu</string>
+ <string>NSTextFieldCell</string>
+ <string>NSButtonCell</string>
+ <string>NSMenuItem</string>
+ <string>NSBox</string>
+ <string>NSSlider</string>
+ <string>NSSliderCell</string>
+ <string>NSCustomObject</string>
+ <string>NSView</string>
+ <string>NSWindowTemplate</string>
+ <string>NSTextField</string>
+ <string>NSPopUpButtonCell</string>
+ </array>
+ <array key="IBDocument.PluginDependencies">
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ </array>
+ <object class="NSMutableDictionary" key="IBDocument.Metadata">
+ <string key="NS.key.0">PluginDependencyRecalculationVersion</string>
+ <integer value="1" key="NS.object.0"/>
+ </object>
+ <array class="NSMutableArray" key="IBDocument.RootObjects" id="1058953981">
+ <object class="NSCustomObject" id="509300364">
+ <string key="NSClassName">DFCdromPluginConfigController</string>
+ </object>
+ <object class="NSCustomObject" id="141927618">
+ <string key="NSClassName">FirstResponder</string>
+ </object>
+ <object class="NSCustomObject" id="44201914">
+ <string key="NSClassName">NSApplication</string>
+ </object>
+ <object class="NSWindowTemplate" id="151678379">
+ <int key="NSWindowStyleMask">1</int>
+ <int key="NSWindowBacking">2</int>
+ <string key="NSWindowRect">{{131, 362}, {377, 238}}</string>
+ <int key="NSWTFlags">1886912512</int>
+ <string key="NSWindowTitle">CDR Configuration</string>
+ <string key="NSWindowClass">NSWindow</string>
+ <object class="NSMutableString" key="NSViewClass">
+ <characters key="NS.bytes">View</characters>
+ </object>
+ <nil key="NSUserInterfaceItemIdentifier"/>
+ <string key="NSWindowContentMinSize">{283.34100000000001, 107}</string>
+ <object class="NSView" key="NSWindowView" id="127793487">
+ <reference key="NSNextResponder"/>
+ <int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSButton" id="348063277">
+ <reference key="NSNextResponder" ref="127793487"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{119, 9}, {122, 32}}</string>
+ <reference key="NSSuperview" ref="127793487"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="921967453">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents">Cancel</string>
+ <object class="NSFont" key="NSSupport" id="918131184">
+ <string key="NSName">LucidaGrande</string>
+ <double key="NSSize">13</double>
+ <int key="NSfFlags">1044</int>
+ </object>
+ <reference key="NSControlView" ref="348063277"/>
+ <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags2">1</int>
+ <reference key="NSAlternateImage" ref="918131184"/>
+ <string key="NSAlternateContents"/>
+ <string type="base64-UTF8" key="NSKeyEquivalent">Gw</string>
+ <int key="NSPeriodicDelay">200</int>
+ <int key="NSPeriodicInterval">25</int>
+ </object>
+ </object>
+ <object class="NSButton" id="45529240">
+ <reference key="NSNextResponder" ref="127793487"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{241, 9}, {122, 32}}</string>
+ <reference key="NSSuperview" ref="127793487"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="764681236">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents">OK</string>
+ <reference key="NSSupport" ref="918131184"/>
+ <reference key="NSControlView" ref="45529240"/>
+ <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags2">1</int>
+ <reference key="NSAlternateImage" ref="918131184"/>
+ <string key="NSAlternateContents"/>
+ <string type="base64-UTF8" key="NSKeyEquivalent">DQ</string>
+ <int key="NSPeriodicDelay">200</int>
+ <int key="NSPeriodicInterval">25</int>
+ </object>
+ </object>
+ <object class="NSBox" id="548324376">
+ <reference key="NSNextResponder" ref="127793487"/>
+ <int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSView" id="418330975">
+ <reference key="NSNextResponder" ref="548324376"/>
+ <int key="NSvFlags">274</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSTextField" id="424374056">
+ <reference key="NSNextResponder" ref="418330975"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{13, 43}, {114, 17}}</string>
+ <reference key="NSSuperview" ref="418330975"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="936109188">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">272629760</int>
+ <string type="base64-UTF8" key="NSContents">Q0QtUk9NIFNwZWVkOgo</string>
+ <reference key="NSSupport" ref="918131184"/>
+ <reference key="NSControlView" ref="424374056"/>
+ <object class="NSColor" key="NSBackgroundColor" id="898725700">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">controlColor</string>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
+ </object>
+ </object>
+ <object class="NSColor" key="NSTextColor" id="930899956">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">controlTextColor</string>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MAA</bytes>
+ </object>
+ </object>
+ </object>
+ </object>
+ <object class="NSButton" id="496450943">
+ <reference key="NSNextResponder" ref="418330975"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{26, 13}, {151, 18}}</string>
+ <reference key="NSSuperview" ref="418330975"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="1007528481">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">Use Cached Reading</string>
+ <reference key="NSSupport" ref="918131184"/>
+ <reference key="NSControlView" ref="496450943"/>
+ <int key="NSButtonFlags">1211912703</int>
+ <int key="NSButtonFlags2">2</int>
+ <object class="NSCustomResource" key="NSNormalImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSSwitch</string>
+ </object>
+ <object class="NSButtonImageSource" key="NSAlternateImage">
+ <string key="NSImageName">NSSwitch</string>
+ </object>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent"/>
+ <int key="NSPeriodicDelay">200</int>
+ <int key="NSPeriodicInterval">25</int>
+ </object>
+ </object>
+ <object class="NSPopUpButton" id="261802645">
+ <reference key="NSNextResponder" ref="418330975"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{129, 38}, {197, 26}}</string>
+ <reference key="NSSuperview" ref="418330975"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSPopUpButtonCell" key="NSCell" id="255050593">
+ <int key="NSCellFlags">-2076049856</int>
+ <int key="NSCellFlags2">2048</int>
+ <reference key="NSSupport" ref="918131184"/>
+ <reference key="NSControlView" ref="261802645"/>
+ <int key="NSButtonFlags">109199615</int>
+ <int key="NSButtonFlags2">1</int>
+ <object class="NSFont" key="NSAlternateImage">
+ <string key="NSName">LucidaGrande</string>
+ <double key="NSSize">13</double>
+ <int key="NSfFlags">16</int>
+ </object>
+ <string key="NSAlternateContents"/>
+ <object class="NSMutableString" key="NSKeyEquivalent">
+ <characters key="NS.bytes"/>
+ </object>
+ <int key="NSPeriodicDelay">400</int>
+ <int key="NSPeriodicInterval">75</int>
+ <object class="NSMenuItem" key="NSMenuItem" id="1063899678">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">Default</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <int key="NSState">1</int>
+ <object class="NSCustomResource" key="NSOnImage" id="95901124">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSMenuCheckmark</string>
+ </object>
+ <object class="NSCustomResource" key="NSMixedImage" id="155122072">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSMenuMixedState</string>
+ </object>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ <bool key="NSMenuItemRespectAlignment">YES</bool>
+ <object class="NSMenu" key="NSMenu" id="145165516">
+ <object class="NSMutableString" key="NSTitle">
+ <characters key="NS.bytes">OtherViews</characters>
+ </object>
+ <array class="NSMutableArray" key="NSMenuItems">
+ <reference ref="1063899678"/>
+ <object class="NSMenuItem" id="1059898521">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">1 X</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="95901124"/>
+ <reference key="NSMixedImage" ref="155122072"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">1</int>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ <object class="NSMenuItem" id="527290898">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">2 X</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="95901124"/>
+ <reference key="NSMixedImage" ref="155122072"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">2</int>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ <object class="NSMenuItem" id="908287039">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">4 X</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="95901124"/>
+ <reference key="NSMixedImage" ref="155122072"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">4</int>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ <object class="NSMenuItem" id="875353175">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">8 X</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="95901124"/>
+ <reference key="NSMixedImage" ref="155122072"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">8</int>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ <object class="NSMenuItem" id="31683939">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">16 X</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="95901124"/>
+ <reference key="NSMixedImage" ref="155122072"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">16</int>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ <object class="NSMenuItem" id="349933729">
+ <reference key="NSMenu" ref="145165516"/>
+ <string key="NSTitle">32 X</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="95901124"/>
+ <reference key="NSMixedImage" ref="155122072"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">32</int>
+ <reference key="NSTarget" ref="255050593"/>
+ </object>
+ </array>
+ </object>
+ <int key="NSSelectedIndex">-1</int>
+ <int key="NSPreferredEdge">3</int>
+ <bool key="NSUsesItemFromMenu">YES</bool>
+ <bool key="NSAltersState">YES</bool>
+ <int key="NSArrowPosition">1</int>
+ </object>
+ </object>
+ </array>
+ <string key="NSFrame">{{2, 2}, {339, 73}}</string>
+ <reference key="NSSuperview" ref="548324376"/>
+ <reference key="NSWindow"/>
+ </object>
+ </array>
+ <string key="NSFrame">{{17, 128}, {343, 90}}</string>
+ <reference key="NSSuperview" ref="127793487"/>
+ <reference key="NSWindow"/>
+ <string key="NSOffsets">{0, 0}</string>
+ <object class="NSTextFieldCell" key="NSTitleCell">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">General Settings</string>
+ <object class="NSFont" key="NSSupport" id="26">
+ <string key="NSName">LucidaGrande</string>
+ <double key="NSSize">11</double>
+ <int key="NSfFlags">3100</int>
+ </object>
+ <object class="NSColor" key="NSBackgroundColor" id="724614546">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">textBackgroundColor</string>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MQA</bytes>
+ </object>
+ </object>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgwMDAwMDAxAA</bytes>
+ </object>
+ </object>
+ <reference key="NSContentView" ref="418330975"/>
+ <int key="NSBorderType">3</int>
+ <int key="NSBoxType">0</int>
+ <int key="NSTitlePosition">2</int>
+ <bool key="NSTransparent">NO</bool>
+ </object>
+ <object class="NSBox" id="115811219">
+ <reference key="NSNextResponder" ref="127793487"/>
+ <int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSView" id="201726531">
+ <reference key="NSNextResponder" ref="115811219"/>
+ <int key="NSvFlags">274</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSTextField" id="273919177">
+ <reference key="NSNextResponder" ref="201726531"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{13, 19}, {114, 17}}</string>
+ <reference key="NSSuperview" ref="201726531"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="252874191">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">272629760</int>
+ <string type="base64-UTF8" key="NSContents">Q2FjaGUgU2l6ZToKA</string>
+ <reference key="NSSupport" ref="918131184"/>
+ <reference key="NSControlView" ref="273919177"/>
+ <reference key="NSBackgroundColor" ref="898725700"/>
+ <reference key="NSTextColor" ref="930899956"/>
+ </object>
+ </object>
+ <object class="NSSlider" id="875846271">
+ <reference key="NSNextResponder" ref="201726531"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{130, 15}, {195, 25}}</string>
+ <reference key="NSSuperview" ref="201726531"/>
+ <reference key="NSWindow"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSSliderCell" key="NSCell" id="456056995">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">0</int>
+ <object class="NSMutableString" key="NSContents">
+ <characters key="NS.bytes"/>
+ </object>
+ <object class="NSFont" key="NSSupport">
+ <string key="NSName">Helvetica</string>
+ <double key="NSSize">12</double>
+ <int key="NSfFlags">16</int>
+ </object>
+ <reference key="NSControlView" ref="875846271"/>
+ <double key="NSMaxValue">512</double>
+ <double key="NSMinValue">32</double>
+ <double key="NSValue">64</double>
+ <double key="NSAltIncValue">0.0</double>
+ <int key="NSNumberOfTickMarks">16</int>
+ <int key="NSTickMarkPosition">0</int>
+ <bool key="NSAllowsTickMarkValuesOnly">YES</bool>
+ <bool key="NSVertical">NO</bool>
+ </object>
+ </object>
+ </array>
+ <string key="NSFrame">{{2, 2}, {339, 51}}</string>
+ <reference key="NSSuperview" ref="115811219"/>
+ <reference key="NSWindow"/>
+ </object>
+ </array>
+ <string key="NSFrame">{{17, 49}, {343, 68}}</string>
+ <reference key="NSSuperview" ref="127793487"/>
+ <reference key="NSWindow"/>
+ <string key="NSOffsets">{0, 0}</string>
+ <object class="NSTextFieldCell" key="NSTitleCell">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">Misc</string>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSBackgroundColor" ref="724614546"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgwMDAwMDAxAA</bytes>
+ </object>
+ </object>
+ <reference key="NSContentView" ref="201726531"/>
+ <int key="NSBorderType">3</int>
+ <int key="NSBoxType">0</int>
+ <int key="NSTitlePosition">2</int>
+ <bool key="NSTransparent">NO</bool>
+ </object>
+ </array>
+ <string key="NSFrameSize">{377, 238}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ </object>
+ <string key="NSScreenRect">{{0, 0}, {1024, 746}}</string>
+ <string key="NSMinSize">{283.34100000000001, 129}</string>
+ <string key="NSMaxSize">{10000000000000, 10000000000000}</string>
+ <bool key="NSWindowIsRestorable">YES</bool>
+ </object>
+ </array>
+ <object class="IBObjectContainer" key="IBDocument.Objects">
+ <array class="NSMutableArray" key="connectionRecords">
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">ok:</string>
+ <reference key="source" ref="509300364"/>
+ <reference key="destination" ref="45529240"/>
+ </object>
+ <int key="connectionID">133</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">cancel:</string>
+ <reference key="source" ref="509300364"/>
+ <reference key="destination" ref="348063277"/>
+ </object>
+ <int key="connectionID">134</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">window</string>
+ <reference key="source" ref="509300364"/>
+ <reference key="destination" ref="151678379"/>
+ </object>
+ <int key="connectionID">141</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">Cached</string>
+ <reference key="source" ref="509300364"/>
+ <reference key="destination" ref="496450943"/>
+ </object>
+ <int key="connectionID">183</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">CdSpeed</string>
+ <reference key="source" ref="509300364"/>
+ <reference key="destination" ref="261802645"/>
+ </object>
+ <int key="connectionID">182</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">CacheSize</string>
+ <reference key="source" ref="509300364"/>
+ <reference key="destination" ref="875846271"/>
+ </object>
+ <int key="connectionID">184</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="151678379"/>
+ <reference key="destination" ref="509300364"/>
+ </object>
+ <int key="connectionID">158</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">nextKeyView</string>
+ <reference key="source" ref="45529240"/>
+ <reference key="destination" ref="348063277"/>
+ </object>
+ <int key="connectionID">9</int>
+ </object>
+ </array>
+ <object class="IBMutableOrderedSet" key="objectRecords">
+ <array key="orderedObjects">
+ <object class="IBObjectRecord">
+ <int key="objectID">0</int>
+ <array key="object" id="0"/>
+ <reference key="children" ref="1058953981"/>
+ <nil key="parent"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-2</int>
+ <reference key="object" ref="509300364"/>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">File's Owner</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-1</int>
+ <reference key="object" ref="141927618"/>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">First Responder</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">5</int>
+ <reference key="object" ref="151678379"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="127793487"/>
+ </array>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">Window</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">6</int>
+ <reference key="object" ref="127793487"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="348063277"/>
+ <reference ref="45529240"/>
+ <reference ref="548324376"/>
+ <reference ref="115811219"/>
+ </array>
+ <reference key="parent" ref="151678379"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">7</int>
+ <reference key="object" ref="348063277"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="921967453"/>
+ </array>
+ <reference key="parent" ref="127793487"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">8</int>
+ <reference key="object" ref="45529240"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="764681236"/>
+ </array>
+ <reference key="parent" ref="127793487"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">162</int>
+ <reference key="object" ref="548324376"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="424374056"/>
+ <reference ref="496450943"/>
+ <reference ref="261802645"/>
+ </array>
+ <reference key="parent" ref="127793487"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">164</int>
+ <reference key="object" ref="115811219"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="273919177"/>
+ <reference ref="875846271"/>
+ </array>
+ <reference key="parent" ref="127793487"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">186</int>
+ <reference key="object" ref="921967453"/>
+ <reference key="parent" ref="348063277"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">187</int>
+ <reference key="object" ref="764681236"/>
+ <reference key="parent" ref="45529240"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-3</int>
+ <reference key="object" ref="44201914"/>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">Application</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">168</int>
+ <reference key="object" ref="424374056"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="936109188"/>
+ </array>
+ <reference key="parent" ref="548324376"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">188</int>
+ <reference key="object" ref="936109188"/>
+ <reference key="parent" ref="424374056"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">169</int>
+ <reference key="object" ref="496450943"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="1007528481"/>
+ </array>
+ <reference key="parent" ref="548324376"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">189</int>
+ <reference key="object" ref="1007528481"/>
+ <reference key="parent" ref="496450943"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">173</int>
+ <reference key="object" ref="261802645"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="255050593"/>
+ </array>
+ <reference key="parent" ref="548324376"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">190</int>
+ <reference key="object" ref="255050593"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="145165516"/>
+ </array>
+ <reference key="parent" ref="261802645"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">174</int>
+ <reference key="object" ref="145165516"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="527290898"/>
+ <reference ref="1063899678"/>
+ <reference ref="1059898521"/>
+ <reference ref="875353175"/>
+ <reference ref="908287039"/>
+ <reference ref="31683939"/>
+ <reference ref="349933729"/>
+ </array>
+ <reference key="parent" ref="255050593"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">175</int>
+ <reference key="object" ref="527290898"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">176</int>
+ <reference key="object" ref="1063899678"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">177</int>
+ <reference key="object" ref="1059898521"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">178</int>
+ <reference key="object" ref="875353175"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">179</int>
+ <reference key="object" ref="908287039"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">180</int>
+ <reference key="object" ref="31683939"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">181</int>
+ <reference key="object" ref="349933729"/>
+ <reference key="parent" ref="145165516"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">171</int>
+ <reference key="object" ref="273919177"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="252874191"/>
+ </array>
+ <reference key="parent" ref="115811219"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">191</int>
+ <reference key="object" ref="252874191"/>
+ <reference key="parent" ref="273919177"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">172</int>
+ <reference key="object" ref="875846271"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="456056995"/>
+ </array>
+ <reference key="parent" ref="115811219"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">192</int>
+ <reference key="object" ref="456056995"/>
+ <reference key="parent" ref="875846271"/>
+ </object>
+ </array>
+ </object>
+ <dictionary class="NSMutableDictionary" key="flattenedProperties">
+ <string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="162.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="164.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="168.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="169.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="171.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="172.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="173.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="174.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="175.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="176.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="177.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="178.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="179.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="180.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="181.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="186.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="187.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="188.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="189.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="190.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="191.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="192.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="5.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="6.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
+ <nil key="activeLocalization"/>
+ <dictionary class="NSMutableDictionary" key="localizations"/>
+ <nil key="sourceID"/>
+ <int key="maxID">192</int>
+ </object>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">DFCdromPluginConfigController</string>
+ <string key="superclassName">NSWindowController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">./Classes/DFCdromPluginConfigController.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
+ <int key="IBDocument.localizationMode">0</int>
+ <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
+ <real value="1060" key="NS.object.0"/>
+ </object>
+ <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
+ <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
+ <real value="1060" key="NS.object.0"/>
+ </object>
+ <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
+ <int key="IBDocument.defaultPropertyAccessControl">3</int>
+ <dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
+ <string key="NSMenuCheckmark">{9, 8}</string>
+ <string key="NSMenuMixedState">{7, 2}</string>
+ <string key="NSSwitch">{15, 15}</string>
+ </dictionary>
+ </data>
+</archive>
diff --git a/macosx/plugins/Bladesio1/English.lproj/InfoPlist.strings b/macosx/plugins/Bladesio1/English.lproj/InfoPlist.strings
new file mode 100755
index 00000000..ea885a5d
--- /dev/null
+++ b/macosx/plugins/Bladesio1/English.lproj/InfoPlist.strings
Binary files differ
diff --git a/macosx/plugins/Bladesio1/English.lproj/Localizable.strings b/macosx/plugins/Bladesio1/English.lproj/Localizable.strings
new file mode 100644
index 00000000..2faf6e07
--- /dev/null
+++ b/macosx/plugins/Bladesio1/English.lproj/Localizable.strings
@@ -0,0 +1,9 @@
+/*
+ Localizable.strings
+ DFCdrom
+
+ Created by C.W. Betts on 11/16/11.
+ Copyright 2011 __MyCompanyName__. All rights reserved.
+ */
+
+"CD-ROM Drive Reader" = "CD-ROM Drive Reader";
diff --git a/macosx/plugins/Bladesio1/Info.plist b/macosx/plugins/Bladesio1/Info.plist
new file mode 100644
index 00000000..34e2144e
--- /dev/null
+++ b/macosx/plugins/Bladesio1/Info.plist
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIconFile</key>
+ <string></string>
+ <key>CFBundleIdentifier</key>
+ <string>net.pcsxr.DFCdrom</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundlePackageType</key>
+ <string>PsxP</string>
+ <key>CFBundleSignature</key>
+ <string>CdDI</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>NSPrincipalClass</key>
+ <string>DFCdromPluginConfigController</string>
+</dict>
+</plist>
diff --git a/macosx/plugins/Bladesio1/macsrc/PluginConfigController.h b/macosx/plugins/Bladesio1/macsrc/PluginConfigController.h
new file mode 100755
index 00000000..b7f6fafb
--- /dev/null
+++ b/macosx/plugins/Bladesio1/macsrc/PluginConfigController.h
@@ -0,0 +1,18 @@
+#define PluginConfigController DFCdromPluginConfigController
+
+#import <Cocoa/Cocoa.h>
+
+@interface PluginConfigController : NSWindowController
+{
+ IBOutlet NSControl *Cached;
+ IBOutlet NSSlider *CacheSize;
+ IBOutlet NSPopUpButton *CdSpeed;
+
+ NSMutableDictionary *keyValues;
+}
+- (IBAction)cancel:(id)sender;
+- (IBAction)ok:(id)sender;
+
+- (void)loadValues;
+
+@end
diff --git a/macosx/plugins/Bladesio1/macsrc/PluginConfigController.m b/macosx/plugins/Bladesio1/macsrc/PluginConfigController.m
new file mode 100755
index 00000000..801a47f2
--- /dev/null
+++ b/macosx/plugins/Bladesio1/macsrc/PluginConfigController.m
@@ -0,0 +1,171 @@
+/*
+ * Copyright (c) 2010, Wei Mingzhi <whistler@openoffice.org>.
+ * All Rights Reserved.
+ *
+ * Based on: Cdrom for Psemu Pro like Emulators
+ * By: linuzappz <linuzappz@hotmail.com>
+ *
+ * This program 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 program 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 this program; if not, see <http://www.gnu.org/licenses>.
+ */
+
+#import "PluginConfigController.h"
+#include "cdr.h"
+#import "ARCBridge.h"
+
+#define APP_ID @"net.pcsxr.DFCdrom"
+#define PrefsKey APP_ID @" Settings"
+
+static PluginConfigController *windowController = nil;
+
+void AboutDlgProc()
+{
+ // Get parent application instance
+ NSApplication *app = [NSApplication sharedApplication];
+ NSBundle *bundle = [NSBundle bundleWithIdentifier:APP_ID];
+
+ // Get Credits.rtf
+ NSString *path = [bundle pathForResource:@"Credits" ofType:@"rtf"];
+ NSAttributedString *credits;
+ if (path) {
+ credits = [[NSAttributedString alloc] initWithPath: path
+ documentAttributes:NULL];
+ AUTORELEASEOBJNORETURN(credits);
+
+ } else {
+ credits = AUTORELEASEOBJ([[NSAttributedString alloc] initWithString:@""]);
+ }
+
+ // Get Application Icon
+ NSImage *icon = [[NSWorkspace sharedWorkspace] iconForFile:[bundle bundlePath]];
+ NSSize size = NSMakeSize(64, 64);
+ [icon setSize:size];
+
+ [app orderFrontStandardAboutPanelWithOptions:[NSDictionary dictionaryWithObjectsAndKeys:
+ [bundle objectForInfoDictionaryKey:@"CFBundleName"], @"ApplicationName",
+ icon, @"ApplicationIcon",
+ [bundle objectForInfoDictionaryKey:@"CFBundleShortVersionString"], @"ApplicationVersion",
+ [bundle objectForInfoDictionaryKey:@"CFBundleVersion"], @"Version",
+ [bundle objectForInfoDictionaryKey:@"NSHumanReadableCopyright"], @"Copyright",
+ credits, @"Credits",
+ nil]];
+}
+
+void ConfDlgProc()
+{
+ NSWindow *window;
+
+ if (windowController == nil) {
+ windowController = [[PluginConfigController alloc] initWithWindowNibName:@"DFCdromPluginConfig"];
+ }
+ window = [windowController window];
+
+ [windowController loadValues];
+
+ [window center];
+ [window makeKeyAndOrderFront:nil];
+}
+
+void ReadConfig()
+{
+ NSDictionary *keyValues;
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+ [defaults registerDefaults:[NSDictionary dictionaryWithObjectsAndKeys:
+ [NSDictionary dictionaryWithObjectsAndKeys:
+ @YES, @"Threaded",
+ @64, @"Cache Size",
+ @0, @"Speed",
+ nil], PrefsKey, nil]];
+
+ keyValues = [defaults dictionaryForKey:PrefsKey];
+
+ ReadMode = ([[keyValues objectForKey:@"Threaded"] boolValue] ? THREADED : NORMAL);
+ CacheSize = [[keyValues objectForKey:@"Cache Size"] intValue];
+ CdrSpeed = [[keyValues objectForKey:@"Speed"] intValue];
+}
+
+@implementation PluginConfigController
+
+- (IBAction)cancel:(id)sender
+{
+ [self close];
+}
+
+- (IBAction)ok:(id)sender
+{
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+
+ NSMutableDictionary *writeDic = [NSMutableDictionary dictionaryWithDictionary:keyValues];
+
+ [writeDic setObject:@((BOOL)[Cached intValue]) forKey:@"Threaded"];
+ [writeDic setObject:@([CacheSize intValue]) forKey:@"Cache Size"];
+
+ switch ([CdSpeed indexOfSelectedItem]) {
+ case 1: [writeDic setObject:@1 forKey:@"Speed"]; break;
+ case 2: [writeDic setObject:@2 forKey:@"Speed"]; break;
+ case 3: [writeDic setObject:@4 forKey:@"Speed"]; break;
+ case 4: [writeDic setObject:@8 forKey:@"Speed"]; break;
+ case 5: [writeDic setObject:@16 forKey:@"Speed"]; break;
+ case 6: [writeDic setObject:@32 forKey:@"Speed"]; break;
+ default: [writeDic setObject:@0 forKey:@"Speed"]; break;
+ }
+
+ // write to defaults
+ [defaults setObject:writeDic forKey:PrefsKey];
+ [defaults synchronize];
+
+ // and set global values accordingly
+ ReadConfig();
+
+ [self close];
+}
+
+- (void)loadValues
+{
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+
+ ReadConfig();
+
+ // load from preferences
+ RELEASEOBJ(keyValues);
+ keyValues = [[defaults dictionaryForKey:PrefsKey] mutableCopy];
+
+ [Cached setIntValue:[[keyValues objectForKey:@"Threaded"] intValue]];
+ [CacheSize setIntValue:[[keyValues objectForKey:@"Cache Size"] intValue]];
+
+ switch ([[keyValues objectForKey:@"Speed"] intValue]) {
+ case 1: [CdSpeed selectItemAtIndex:1]; break;
+ case 2: [CdSpeed selectItemAtIndex:2]; break;
+ case 4: [CdSpeed selectItemAtIndex:3]; break;
+ case 8: [CdSpeed selectItemAtIndex:4]; break;
+ case 16: [CdSpeed selectItemAtIndex:5]; break;
+ case 32: [CdSpeed selectItemAtIndex:6]; break;
+ default: [CdSpeed selectItemAtIndex:0]; break;
+ }
+}
+
+- (void)awakeFromNib
+{
+}
+
+@end
+
+char* PLUGLOC(char *toloc)
+{
+ NSBundle *mainBundle = [NSBundle bundleForClass:[PluginConfigController class]];
+ NSString *origString = nil, *transString = nil;
+ origString = [NSString stringWithCString:toloc encoding:NSUTF8StringEncoding];
+ transString = [mainBundle localizedStringForKey:origString value:nil table:nil];
+ return (char*)[transString cStringUsingEncoding:NSUTF8StringEncoding];
+}
+
diff --git a/macosx/plugins/Bladesio1/macsrc/cdr-macosx.c b/macosx/plugins/Bladesio1/macsrc/cdr-macosx.c
new file mode 100755
index 00000000..94cf8996
--- /dev/null
+++ b/macosx/plugins/Bladesio1/macsrc/cdr-macosx.c
@@ -0,0 +1,252 @@
+/*
+ * Copyright (c) 2010, Wei Mingzhi <whistler@openoffice.org>.
+ * All Rights Reserved.
+ *
+ * Based on: Cdrom for Psemu Pro like Emulators
+ * By: linuzappz <linuzappz@hotmail.com>
+ *
+ * This program 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 program 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 this program; if not, see <http://www.gnu.org/licenses>.
+ */
+
+#include "cdr.h"
+
+#ifdef _MACOSX
+
+#include <IOKit/IOKitLib.h>
+#include <IOKit/IOBSD.h>
+#include <IOKit/storage/IOCDMedia.h>
+#include <IOKit/storage/IODVDMedia.h>
+#include <IOKit/storage/IOMedia.h>
+#include <IOKit/storage/IOCDMediaBSDClient.h>
+#include <CoreFoundation/CoreFoundation.h>
+
+int cdHandle = -1;
+char cdDevice[4096] = "";
+
+static int IsPsxDisc(const char *dev) {
+ int fd;
+ char buf[CD_FRAMESIZE_RAW];
+ dk_cd_read_t r;
+
+ fd = open(dev, O_RDONLY, 0);
+ if (fd < 0) return 0;
+
+ memset(&r, 0, sizeof(r));
+
+ r.offset = msf_to_lba(0, 2, 4) * CD_FRAMESIZE_RAW;
+ r.sectorArea = 0xF8;
+ r.sectorType = kCDSectorTypeUnknown;
+ r.bufferLength = CD_FRAMESIZE_RAW;
+ r.buffer = buf;
+
+ if (ioctl(fd, DKIOCCDREAD, &r) != kIOReturnSuccess) {
+ close(fd);
+ return 0;
+ }
+
+ close(fd);
+
+ if (strncmp(buf + 56, "Sony Computer Entertainment", 27) == 0) {
+ return 1;
+ }
+
+ return 0;
+}
+
+static void FindCdDevice(char *dev) {
+ io_object_t next_media;
+ kern_return_t kern_result;
+ io_iterator_t media_iterator;
+ CFMutableDictionaryRef classes_to_match;
+ const char *name, *cd = kIOCDMediaClass, *dvd = kIODVDMediaClass;
+
+ dev[0] = '\0';
+ name = cd;
+
+start:
+ classes_to_match = IOServiceMatching(name);
+ if (classes_to_match == NULL) goto end;
+
+ CFDictionarySetValue(classes_to_match, CFSTR(kIOMediaEjectableKey),
+ kCFBooleanTrue);
+
+ kern_result = IOServiceGetMatchingServices(kIOMasterPortDefault,
+ classes_to_match, &media_iterator);
+
+ if (kern_result != KERN_SUCCESS) goto end;
+
+ next_media = IOIteratorNext(media_iterator);
+ if (next_media != 0) {
+ char psz_buf[0x32];
+ size_t dev_path_length;
+ CFTypeRef str_bsd_path;
+
+ do {
+ str_bsd_path = IORegistryEntryCreateCFProperty(next_media,
+ CFSTR(kIOBSDNameKey), kCFAllocatorDefault, 0);
+
+ if (str_bsd_path == NULL) {
+ IOObjectRelease(next_media);
+ continue;
+ }
+
+ strcpy(psz_buf, "/dev/r");
+ dev_path_length = strlen(psz_buf);
+
+ if (CFStringGetCString(str_bsd_path, (char *)&psz_buf + dev_path_length,
+ sizeof(psz_buf) - dev_path_length, kCFStringEncodingASCII))
+ {
+ strcpy(dev, psz_buf);
+
+ if (IsPsxDisc(dev)) {
+ CFRelease(str_bsd_path);
+ IOObjectRelease(next_media);
+ IOObjectRelease(media_iterator);
+ return;
+ }
+ }
+
+ CFRelease(str_bsd_path);
+ IOObjectRelease(next_media);
+ } while ((next_media = IOIteratorNext(media_iterator)) != 0);
+ }
+
+ IOObjectRelease(media_iterator);
+
+end:
+ if (dev[0] == '\0') {
+ if (name == cd) {
+ name = dvd; // Is this really necessary or correct? Dunno...
+ goto start;
+ }
+ }
+}
+
+int OpenCdHandle(const char *dev) {
+ if (dev != NULL && dev[0] != '\0') strcpy(cdDevice, dev);
+ else if (cdDevice[0] == '\0') FindCdDevice(cdDevice);
+
+ cdHandle = open(cdDevice, O_RDONLY, 0);
+ if (cdHandle < 0) return -1;
+
+ if (CdrSpeed > 0) {
+ u_int16_t speed = kCDSpeedMin * CdrSpeed;
+ ioctl(cdHandle, DKIOCCDSETSPEED, &speed);
+ }
+
+ return 0;
+}
+
+void CloseCdHandle() {
+ if (cdHandle != -1) close(cdHandle);
+ cdHandle = -1;
+}
+
+int IsCdHandleOpen() {
+ return (cdHandle != -1);
+}
+
+long GetTN(unsigned char *buffer) {
+ if (cdHandle < 0) return -1;
+
+ // TODO
+ buffer[0] = 1;
+ buffer[1] = 1;
+
+ return 0;
+}
+
+long GetTD(unsigned char track, unsigned char *buffer) {
+ if (cdHandle < 0) return -1;
+
+ // TODO
+ memset(buffer + 1, 0, 3);
+ return 0;
+}
+
+long GetTE(unsigned char track, unsigned char *m, unsigned char *s, unsigned char *f) {
+ return -1; // TODO
+}
+
+long ReadSector(crdata *cr) {
+ int lba;
+ dk_cd_read_t r;
+ char buf[CD_FRAMESIZE_RAW];
+
+ if (cdHandle < 0) return -1;
+
+ lba = msf_to_lba(cr->msf.cdmsf_min0, cr->msf.cdmsf_sec0, cr->msf.cdmsf_frame0);
+
+ memset(&r, 0, sizeof(r));
+
+ r.offset = lba * CD_FRAMESIZE_RAW;
+ r.sectorArea = 0xF8;
+ r.sectorType = kCDSectorTypeUnknown;
+ r.bufferLength = CD_FRAMESIZE_RAW;
+ r.buffer = buf; // ??? Why using cr->buf directly does not work in threaded mode?
+
+ if (ioctl(cdHandle, DKIOCCDREAD, &r) != kIOReturnSuccess) {
+ return -1;
+ }
+
+ memcpy(cr->buf, buf, CD_FRAMESIZE_RAW);
+ return 0;
+}
+
+long PlayCDDA(unsigned char *sector) {
+ return 0; // TODO
+}
+
+long StopCDDA() {
+ return 0; // TODO
+}
+
+long GetStatus(int playing, struct CdrStat *stat) {
+ memset(stat, 0, sizeof(struct CdrStat));
+ stat->Type = 0x01;
+
+ // Close and reopen the CD handle. If opening failed,
+ // then there is no CD in drive.
+ // Note that this WILL be screwed if user inserted another
+ // removable device such as USB stick when tray is open.
+ // There may be a better way, but this should do the job.
+ if (cdHandle >= 0) {
+ close(cdHandle);
+ cdHandle = -1;
+ }
+
+ cdHandle = open(cdDevice, O_RDONLY, 0);
+ if (cdHandle < 0) {
+ // No CD in drive
+ stat->Type = 0xff;
+ stat->Status |= 0x10;
+ } else {
+ if (CdrSpeed > 0) {
+ u_int16_t speed = kCDSpeedMin * CdrSpeed;
+ ioctl(cdHandle, DKIOCCDSETSPEED, &speed);
+ }
+ }
+
+ return 0;
+}
+
+unsigned char *ReadSub(const unsigned char *time) {
+ return NULL; // TODO
+}
+
+char *CDRgetDriveLetter(void) {
+ return cdDevice;
+}
+
+#endif
diff --git a/macosx/plugins/Bladesio1/macsrc/cfg.c b/macosx/plugins/Bladesio1/macsrc/cfg.c
new file mode 100755
index 00000000..6b5c1513
--- /dev/null
+++ b/macosx/plugins/Bladesio1/macsrc/cfg.c
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) 2010, Wei Mingzhi <whistler@openoffice.org>.
+ * All Rights Reserved.
+ *
+ * Based on: Cdrom for Psemu Pro like Emulators
+ * By: linuzappz <linuzappz@hotmail.com>
+ *
+ * This program 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 program 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 this program; if not, see <http://www.gnu.org/licenses>.
+ */
+
+#include "cdr.h"
+
+void AboutDlgProc();
+void ConfDlgProc();
+void ReadConfig();
+
+char CdromDev[256];
+long ReadMode;
+long UseSubQ;
+long CacheSize;
+long CdrSpeed;
+long SpinDown;
+
+void LoadConf() {
+ strcpy(CdromDev, "");
+ ReadMode = THREADED;
+ UseSubQ = 0;
+ CacheSize = 64;
+ CdrSpeed = 0;
+ SpinDown = SPINDOWN_VENDOR_SPECIFIC;
+
+ ReadConfig();
+}
+
+long CDRconfigure() {
+ ConfDlgProc();
+ return 0;
+}
+
+void CDRabout() {
+ AboutDlgProc();
+} \ No newline at end of file
diff --git a/macosx/plugins/Bladesio1/version.plist b/macosx/plugins/Bladesio1/version.plist
new file mode 100644
index 00000000..a9c51a62
--- /dev/null
+++ b/macosx/plugins/Bladesio1/version.plist
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>BuildVersion</key>
+ <string>38</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>ProjectName</key>
+ <string>DFCdrom</string>
+ <key>SourceVersion</key>
+ <string>2350000</string>
+</dict>
+</plist>