Added mod/tracker support through Dumb.
parent
2b0eaf3369
commit
6b7550de97
|
@ -87,6 +87,7 @@
|
||||||
17C8099A0C3BD233005707C4 /* FileSource.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C808790C3BD167005707C4 /* FileSource.bundle */; };
|
17C8099A0C3BD233005707C4 /* FileSource.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C808790C3BD167005707C4 /* FileSource.bundle */; };
|
||||||
17C809E60C3BD487005707C4 /* CoreAudio.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C809E30C3BD46D005707C4 /* CoreAudio.bundle */; };
|
17C809E60C3BD487005707C4 /* CoreAudio.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C809E30C3BD46D005707C4 /* CoreAudio.bundle */; };
|
||||||
17C8F3CF0CBED66C008D969D /* GME.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C8F3CD0CBED663008D969D /* GME.bundle */; };
|
17C8F3CF0CBED66C008D969D /* GME.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C8F3CD0CBED663008D969D /* GME.bundle */; };
|
||||||
|
17C8F7D80CBEF3EF008D969D /* Dumb.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C8F7D70CBEF3E8008D969D /* Dumb.bundle */; };
|
||||||
17E41E070C130DFF00AC744D /* Credits.html in Resources */ = {isa = PBXBuildFile; fileRef = 17E41E060C130DFF00AC744D /* Credits.html */; };
|
17E41E070C130DFF00AC744D /* Credits.html in Resources */ = {isa = PBXBuildFile; fileRef = 17E41E060C130DFF00AC744D /* Credits.html */; };
|
||||||
17E41E230C130EE200AC744D /* Help in Resources */ = {isa = PBXBuildFile; fileRef = 17E41E220C130EE200AC744D /* Help */; };
|
17E41E230C130EE200AC744D /* Help in Resources */ = {isa = PBXBuildFile; fileRef = 17E41E220C130EE200AC744D /* Help */; };
|
||||||
17F3BB890CBC565900864489 /* CueSheet.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17F3BB880CBC565100864489 /* CueSheet.bundle */; };
|
17F3BB890CBC565900864489 /* CueSheet.bundle in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17F3BB880CBC565100864489 /* CueSheet.bundle */; };
|
||||||
|
@ -295,6 +296,20 @@
|
||||||
remoteGlobalIDString = 8D5B49AC048680CD000E48DA /* GME Plugin */;
|
remoteGlobalIDString = 8D5B49AC048680CD000E48DA /* GME Plugin */;
|
||||||
remoteInfo = "GME Plugin";
|
remoteInfo = "GME Plugin";
|
||||||
};
|
};
|
||||||
|
17C8F7D60CBEF3E8008D969D /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = 17C8F7D20CBEF3E8008D969D /* Dumb.xcodeproj */;
|
||||||
|
proxyType = 2;
|
||||||
|
remoteGlobalIDString = 8D5B49B6048680CD000E48DA /* Dumb.bundle */;
|
||||||
|
remoteInfo = Dumb;
|
||||||
|
};
|
||||||
|
17C8F7D90CBEF3F9008D969D /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = 17C8F7D20CBEF3E8008D969D /* Dumb.xcodeproj */;
|
||||||
|
proxyType = 1;
|
||||||
|
remoteGlobalIDString = 8D5B49AC048680CD000E48DA /* Dumb */;
|
||||||
|
remoteInfo = Dumb;
|
||||||
|
};
|
||||||
17F3BB870CBC565100864489 /* PBXContainerItemProxy */ = {
|
17F3BB870CBC565100864489 /* PBXContainerItemProxy */ = {
|
||||||
isa = PBXContainerItemProxy;
|
isa = PBXContainerItemProxy;
|
||||||
containerPortal = 17F3BB830CBC565100864489 /* CueSheet.xcodeproj */;
|
containerPortal = 17F3BB830CBC565100864489 /* CueSheet.xcodeproj */;
|
||||||
|
@ -374,6 +389,7 @@
|
||||||
dstPath = "";
|
dstPath = "";
|
||||||
dstSubfolderSpec = 13;
|
dstSubfolderSpec = 13;
|
||||||
files = (
|
files = (
|
||||||
|
17C8F7D80CBEF3EF008D969D /* Dumb.bundle in CopyFiles */,
|
||||||
17C8F3CF0CBED66C008D969D /* GME.bundle in CopyFiles */,
|
17C8F3CF0CBED66C008D969D /* GME.bundle in CopyFiles */,
|
||||||
17F3BB890CBC565900864489 /* CueSheet.bundle in CopyFiles */,
|
17F3BB890CBC565900864489 /* CueSheet.bundle in CopyFiles */,
|
||||||
8E8D41C80CBB0DA900135C1B /* Pls.bundle in CopyFiles */,
|
8E8D41C80CBB0DA900135C1B /* Pls.bundle in CopyFiles */,
|
||||||
|
@ -537,6 +553,7 @@
|
||||||
17C808B70C3BD1D2005707C4 /* Vorbis.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Vorbis.xcodeproj; path = Plugins/Vorbis/Vorbis.xcodeproj; sourceTree = "<group>"; };
|
17C808B70C3BD1D2005707C4 /* Vorbis.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Vorbis.xcodeproj; path = Plugins/Vorbis/Vorbis.xcodeproj; sourceTree = "<group>"; };
|
||||||
17C808C00C3BD1DD005707C4 /* WavPack.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = WavPack.xcodeproj; path = Plugins/WavPack/WavPack.xcodeproj; sourceTree = "<group>"; };
|
17C808C00C3BD1DD005707C4 /* WavPack.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = WavPack.xcodeproj; path = Plugins/WavPack/WavPack.xcodeproj; sourceTree = "<group>"; };
|
||||||
17C8F3C80CBED663008D969D /* GME.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = GME.xcodeproj; path = Plugins/GME/GME.xcodeproj; sourceTree = "<group>"; };
|
17C8F3C80CBED663008D969D /* GME.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = GME.xcodeproj; path = Plugins/GME/GME.xcodeproj; sourceTree = "<group>"; };
|
||||||
|
17C8F7D20CBEF3E8008D969D /* Dumb.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Dumb.xcodeproj; path = Plugins/Dumb/Dumb.xcodeproj; sourceTree = "<group>"; };
|
||||||
17E41C470C1304BB00AC744D /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Swedish.lproj/MainMenu.nib; sourceTree = "<group>"; };
|
17E41C470C1304BB00AC744D /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Swedish.lproj/MainMenu.nib; sourceTree = "<group>"; };
|
||||||
17E41C480C1304C700AC744D /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Swedish.lproj/OpenURLPanel.nib; sourceTree = "<group>"; };
|
17E41C480C1304C700AC744D /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = Swedish; path = Swedish.lproj/OpenURLPanel.nib; sourceTree = "<group>"; };
|
||||||
17E41C490C1304D200AC744D /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Swedish; path = Swedish.lproj/Localizable.strings; sourceTree = "<group>"; };
|
17E41C490C1304D200AC744D /* Swedish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Swedish; path = Swedish.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||||
|
@ -825,6 +842,7 @@
|
||||||
17B619FF0B909ED400BC003F /* PlugIns */ = {
|
17B619FF0B909ED400BC003F /* PlugIns */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
17C8F7D20CBEF3E8008D969D /* Dumb.xcodeproj */,
|
||||||
17C8F3C80CBED663008D969D /* GME.xcodeproj */,
|
17C8F3C80CBED663008D969D /* GME.xcodeproj */,
|
||||||
17F3BB830CBC565100864489 /* CueSheet.xcodeproj */,
|
17F3BB830CBC565100864489 /* CueSheet.xcodeproj */,
|
||||||
8E8D41C20CBB0DA000135C1B /* Pls.xcodeproj */,
|
8E8D41C20CBB0DA000135C1B /* Pls.xcodeproj */,
|
||||||
|
@ -940,6 +958,14 @@
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
17C8F7D30CBEF3E8008D969D /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
17C8F7D70CBEF3E8008D969D /* Dumb.bundle */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
17F3BB840CBC565100864489 /* Products */ = {
|
17F3BB840CBC565100864489 /* Products */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
@ -1171,6 +1197,7 @@
|
||||||
8E8D41CC0CBB0DD200135C1B /* PBXTargetDependency */,
|
8E8D41CC0CBB0DD200135C1B /* PBXTargetDependency */,
|
||||||
17F3BB8B0CBC566200864489 /* PBXTargetDependency */,
|
17F3BB8B0CBC566200864489 /* PBXTargetDependency */,
|
||||||
17C8F44C0CBEDD37008D969D /* PBXTargetDependency */,
|
17C8F44C0CBEDD37008D969D /* PBXTargetDependency */,
|
||||||
|
17C8F7DA0CBEF3F9008D969D /* PBXTargetDependency */,
|
||||||
);
|
);
|
||||||
name = Cog;
|
name = Cog;
|
||||||
productInstallPath = "$(HOME)/Applications";
|
productInstallPath = "$(HOME)/Applications";
|
||||||
|
@ -1209,6 +1236,10 @@
|
||||||
ProductGroup = 17F3BB840CBC565100864489 /* Products */;
|
ProductGroup = 17F3BB840CBC565100864489 /* Products */;
|
||||||
ProjectRef = 17F3BB830CBC565100864489 /* CueSheet.xcodeproj */;
|
ProjectRef = 17F3BB830CBC565100864489 /* CueSheet.xcodeproj */;
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ProductGroup = 17C8F7D30CBEF3E8008D969D /* Products */;
|
||||||
|
ProjectRef = 17C8F7D20CBEF3E8008D969D /* Dumb.xcodeproj */;
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ProductGroup = 17C808720C3BD167005707C4 /* Products */;
|
ProductGroup = 17C808720C3BD167005707C4 /* Products */;
|
||||||
ProjectRef = 17C808710C3BD167005707C4 /* FileSource.xcodeproj */;
|
ProjectRef = 17C808710C3BD167005707C4 /* FileSource.xcodeproj */;
|
||||||
|
@ -1357,6 +1388,13 @@
|
||||||
remoteRef = 17C8F3CC0CBED663008D969D /* PBXContainerItemProxy */;
|
remoteRef = 17C8F3CC0CBED663008D969D /* PBXContainerItemProxy */;
|
||||||
sourceTree = BUILT_PRODUCTS_DIR;
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
};
|
};
|
||||||
|
17C8F7D70CBEF3E8008D969D /* Dumb.bundle */ = {
|
||||||
|
isa = PBXReferenceProxy;
|
||||||
|
fileType = wrapper.cfbundle;
|
||||||
|
path = Dumb.bundle;
|
||||||
|
remoteRef = 17C8F7D60CBEF3E8008D969D /* PBXContainerItemProxy */;
|
||||||
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
|
};
|
||||||
17F3BB880CBC565100864489 /* CueSheet.bundle */ = {
|
17F3BB880CBC565100864489 /* CueSheet.bundle */ = {
|
||||||
isa = PBXReferenceProxy;
|
isa = PBXReferenceProxy;
|
||||||
fileType = wrapper.cfbundle;
|
fileType = wrapper.cfbundle;
|
||||||
|
@ -1564,6 +1602,11 @@
|
||||||
name = "GME Plugin";
|
name = "GME Plugin";
|
||||||
targetProxy = 17C8F44B0CBEDD37008D969D /* PBXContainerItemProxy */;
|
targetProxy = 17C8F44B0CBEDD37008D969D /* PBXContainerItemProxy */;
|
||||||
};
|
};
|
||||||
|
17C8F7DA0CBEF3F9008D969D /* PBXTargetDependency */ = {
|
||||||
|
isa = PBXTargetDependency;
|
||||||
|
name = Dumb;
|
||||||
|
targetProxy = 17C8F7D90CBEF3F9008D969D /* PBXContainerItemProxy */;
|
||||||
|
};
|
||||||
17F3BB8B0CBC566200864489 /* PBXTargetDependency */ = {
|
17F3BB8B0CBC566200864489 /* PBXTargetDependency */ = {
|
||||||
isa = PBXTargetDependency;
|
isa = PBXTargetDependency;
|
||||||
name = CueSheet;
|
name = CueSheet;
|
||||||
|
|
|
@ -633,8 +633,10 @@
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
OBJROOT = ../../build;
|
||||||
PREBINDING = NO;
|
PREBINDING = NO;
|
||||||
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
||||||
|
SYMROOT = ../../build;
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
|
@ -643,8 +645,10 @@
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
OBJROOT = ../../build;
|
||||||
PREBINDING = NO;
|
PREBINDING = NO;
|
||||||
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
||||||
|
SYMROOT = ../../build;
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,356 @@
|
||||||
|
// !$*UTF8*$!
|
||||||
|
{
|
||||||
|
archiveVersion = 1;
|
||||||
|
classes = {
|
||||||
|
};
|
||||||
|
objectVersion = 42;
|
||||||
|
objects = {
|
||||||
|
|
||||||
|
/* Begin PBXBuildFile section */
|
||||||
|
17C8F6950CBEE846008D969D /* DumbDecoder.m in Sources */ = {isa = PBXBuildFile; fileRef = 17C8F68F0CBEE846008D969D /* DumbDecoder.m */; };
|
||||||
|
17C8F6960CBEE846008D969D /* DumbPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 17C8F6910CBEE846008D969D /* DumbPlugin.m */; };
|
||||||
|
17C8F6970CBEE846008D969D /* DumbPropertiesReader.m in Sources */ = {isa = PBXBuildFile; fileRef = 17C8F6930CBEE846008D969D /* DumbPropertiesReader.m */; };
|
||||||
|
17C8F69F0CBEE85F008D969D /* Dumb.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C8F69E0CBEE857008D969D /* Dumb.framework */; };
|
||||||
|
17C8F70D0CBEEC87008D969D /* Plugin.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 17C8F70C0CBEEC87008D969D /* Plugin.h */; };
|
||||||
|
17C8F7B90CBEF380008D969D /* Dumb.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17C8F69E0CBEE857008D969D /* Dumb.framework */; };
|
||||||
|
8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||||
|
8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; };
|
||||||
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
|
/* Begin PBXContainerItemProxy section */
|
||||||
|
17C8F69D0CBEE857008D969D /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = 17C8F6990CBEE857008D969D /* Dumb.xcodeproj */;
|
||||||
|
proxyType = 2;
|
||||||
|
remoteGlobalIDString = 8DC2EF5B0486A6940098B216 /* Dumb.framework */;
|
||||||
|
remoteInfo = "Dumb Framework";
|
||||||
|
};
|
||||||
|
17C8F6A00CBEE867008D969D /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = 17C8F6990CBEE857008D969D /* Dumb.xcodeproj */;
|
||||||
|
proxyType = 1;
|
||||||
|
remoteGlobalIDString = 8DC2EF4F0486A6940098B216 /* Dumb Framework */;
|
||||||
|
remoteInfo = "Dumb Framework";
|
||||||
|
};
|
||||||
|
/* End PBXContainerItemProxy section */
|
||||||
|
|
||||||
|
/* Begin PBXCopyFilesBuildPhase section */
|
||||||
|
17C8F6A20CBEE86E008D969D /* CopyFiles */ = {
|
||||||
|
isa = PBXCopyFilesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
dstPath = "";
|
||||||
|
dstSubfolderSpec = 10;
|
||||||
|
files = (
|
||||||
|
17C8F69F0CBEE85F008D969D /* Dumb.framework in CopyFiles */,
|
||||||
|
17C8F70D0CBEEC87008D969D /* Plugin.h in CopyFiles */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXCopyFilesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXFileReference section */
|
||||||
|
089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
|
||||||
|
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||||
|
089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
||||||
|
1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
|
||||||
|
17C8F68E0CBEE846008D969D /* DumbDecoder.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DumbDecoder.h; sourceTree = "<group>"; };
|
||||||
|
17C8F68F0CBEE846008D969D /* DumbDecoder.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = DumbDecoder.m; sourceTree = "<group>"; };
|
||||||
|
17C8F6900CBEE846008D969D /* DumbPlugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DumbPlugin.h; sourceTree = "<group>"; };
|
||||||
|
17C8F6910CBEE846008D969D /* DumbPlugin.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = DumbPlugin.m; sourceTree = "<group>"; };
|
||||||
|
17C8F6920CBEE846008D969D /* DumbPropertiesReader.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DumbPropertiesReader.h; sourceTree = "<group>"; };
|
||||||
|
17C8F6930CBEE846008D969D /* DumbPropertiesReader.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = DumbPropertiesReader.m; sourceTree = "<group>"; };
|
||||||
|
17C8F6990CBEE857008D969D /* Dumb.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Dumb.xcodeproj; path = ../../Frameworks/Dumb/Dumb.xcodeproj; sourceTree = SOURCE_ROOT; };
|
||||||
|
17C8F70C0CBEEC87008D969D /* Plugin.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = Plugin.h; path = ../../Audio/Plugin.h; sourceTree = SOURCE_ROOT; };
|
||||||
|
32DBCF630370AF2F00C91783 /* Dumb_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Dumb_Prefix.pch; sourceTree = "<group>"; };
|
||||||
|
8D5B49B6048680CD000E48DA /* Dumb.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Dumb.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
8D5B49B7048680CD000E48DA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||||
|
D2F7E65807B2D6F200F64583 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
|
||||||
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
8D5B49B3048680CD000E48DA /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
17C8F7B90CBEF380008D969D /* Dumb.framework in Frameworks */,
|
||||||
|
8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXFrameworksBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXGroup section */
|
||||||
|
089C166AFE841209C02AAC07 /* Dumb */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
08FB77AFFE84173DC02AAC07 /* Classes */,
|
||||||
|
32C88E010371C26100C91783 /* Other Sources */,
|
||||||
|
089C167CFE841241C02AAC07 /* Resources */,
|
||||||
|
089C1671FE841209C02AAC07 /* Frameworks and Libraries */,
|
||||||
|
19C28FB8FE9D52D311CA2CBB /* Products */,
|
||||||
|
);
|
||||||
|
name = Dumb;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
089C1671FE841209C02AAC07 /* Frameworks and Libraries */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */,
|
||||||
|
1058C7AEFEA557BF11CA2CBB /* Other Frameworks */,
|
||||||
|
);
|
||||||
|
name = "Frameworks and Libraries";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
089C167CFE841241C02AAC07 /* Resources */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
8D5B49B7048680CD000E48DA /* Info.plist */,
|
||||||
|
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
|
||||||
|
);
|
||||||
|
name = Resources;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
08FB77AFFE84173DC02AAC07 /* Classes */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
17C8F70C0CBEEC87008D969D /* Plugin.h */,
|
||||||
|
17C8F68E0CBEE846008D969D /* DumbDecoder.h */,
|
||||||
|
17C8F68F0CBEE846008D969D /* DumbDecoder.m */,
|
||||||
|
17C8F6900CBEE846008D969D /* DumbPlugin.h */,
|
||||||
|
17C8F6910CBEE846008D969D /* DumbPlugin.m */,
|
||||||
|
17C8F6920CBEE846008D969D /* DumbPropertiesReader.h */,
|
||||||
|
17C8F6930CBEE846008D969D /* DumbPropertiesReader.m */,
|
||||||
|
);
|
||||||
|
name = Classes;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
17C8F6990CBEE857008D969D /* Dumb.xcodeproj */,
|
||||||
|
1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */,
|
||||||
|
);
|
||||||
|
name = "Linked Frameworks";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
1058C7AEFEA557BF11CA2CBB /* Other Frameworks */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
089C167FFE841241C02AAC07 /* AppKit.framework */,
|
||||||
|
D2F7E65807B2D6F200F64583 /* CoreData.framework */,
|
||||||
|
089C1672FE841209C02AAC07 /* Foundation.framework */,
|
||||||
|
);
|
||||||
|
name = "Other Frameworks";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
17C8F69A0CBEE857008D969D /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
17C8F69E0CBEE857008D969D /* Dumb.framework */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
19C28FB8FE9D52D311CA2CBB /* Products */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
8D5B49B6048680CD000E48DA /* Dumb.bundle */,
|
||||||
|
);
|
||||||
|
name = Products;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
32C88E010371C26100C91783 /* Other Sources */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
32DBCF630370AF2F00C91783 /* Dumb_Prefix.pch */,
|
||||||
|
);
|
||||||
|
name = "Other Sources";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
/* End PBXGroup section */
|
||||||
|
|
||||||
|
/* Begin PBXNativeTarget section */
|
||||||
|
8D5B49AC048680CD000E48DA /* Dumb */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = 1DEB913A08733D840010E9CD /* Build configuration list for PBXNativeTarget "Dumb" */;
|
||||||
|
buildPhases = (
|
||||||
|
8D5B49AF048680CD000E48DA /* Resources */,
|
||||||
|
8D5B49B1048680CD000E48DA /* Sources */,
|
||||||
|
8D5B49B3048680CD000E48DA /* Frameworks */,
|
||||||
|
17C8F6A20CBEE86E008D969D /* CopyFiles */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
17C8F6A10CBEE867008D969D /* PBXTargetDependency */,
|
||||||
|
);
|
||||||
|
name = Dumb;
|
||||||
|
productInstallPath = "$(HOME)/Library/Bundles";
|
||||||
|
productName = Dumb;
|
||||||
|
productReference = 8D5B49B6048680CD000E48DA /* Dumb.bundle */;
|
||||||
|
productType = "com.apple.product-type.bundle";
|
||||||
|
};
|
||||||
|
/* End PBXNativeTarget section */
|
||||||
|
|
||||||
|
/* Begin PBXProject section */
|
||||||
|
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||||
|
isa = PBXProject;
|
||||||
|
buildConfigurationList = 1DEB913E08733D840010E9CD /* Build configuration list for PBXProject "Dumb" */;
|
||||||
|
hasScannedForEncodings = 1;
|
||||||
|
mainGroup = 089C166AFE841209C02AAC07 /* Dumb */;
|
||||||
|
projectDirPath = "";
|
||||||
|
projectReferences = (
|
||||||
|
{
|
||||||
|
ProductGroup = 17C8F69A0CBEE857008D969D /* Products */;
|
||||||
|
ProjectRef = 17C8F6990CBEE857008D969D /* Dumb.xcodeproj */;
|
||||||
|
},
|
||||||
|
);
|
||||||
|
targets = (
|
||||||
|
8D5B49AC048680CD000E48DA /* Dumb */,
|
||||||
|
);
|
||||||
|
};
|
||||||
|
/* End PBXProject section */
|
||||||
|
|
||||||
|
/* Begin PBXReferenceProxy section */
|
||||||
|
17C8F69E0CBEE857008D969D /* Dumb.framework */ = {
|
||||||
|
isa = PBXReferenceProxy;
|
||||||
|
fileType = wrapper.framework;
|
||||||
|
path = Dumb.framework;
|
||||||
|
remoteRef = 17C8F69D0CBEE857008D969D /* PBXContainerItemProxy */;
|
||||||
|
sourceTree = BUILT_PRODUCTS_DIR;
|
||||||
|
};
|
||||||
|
/* End PBXReferenceProxy section */
|
||||||
|
|
||||||
|
/* Begin PBXResourcesBuildPhase section */
|
||||||
|
8D5B49AF048680CD000E48DA /* Resources */ = {
|
||||||
|
isa = PBXResourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXResourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
8D5B49B1048680CD000E48DA /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
17C8F6950CBEE846008D969D /* DumbDecoder.m in Sources */,
|
||||||
|
17C8F6960CBEE846008D969D /* DumbPlugin.m in Sources */,
|
||||||
|
17C8F6970CBEE846008D969D /* DumbPropertiesReader.m in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXTargetDependency section */
|
||||||
|
17C8F6A10CBEE867008D969D /* PBXTargetDependency */ = {
|
||||||
|
isa = PBXTargetDependency;
|
||||||
|
name = "Dumb Framework";
|
||||||
|
targetProxy = 17C8F6A00CBEE867008D969D /* PBXContainerItemProxy */;
|
||||||
|
};
|
||||||
|
/* End PBXTargetDependency section */
|
||||||
|
|
||||||
|
/* Begin PBXVariantGroup section */
|
||||||
|
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||||
|
isa = PBXVariantGroup;
|
||||||
|
children = (
|
||||||
|
089C167EFE841241C02AAC07 /* English */,
|
||||||
|
);
|
||||||
|
name = InfoPlist.strings;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
/* End PBXVariantGroup section */
|
||||||
|
|
||||||
|
/* Begin XCBuildConfiguration section */
|
||||||
|
1DEB913B08733D840010E9CD /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
COPY_PHASE_STRIP = NO;
|
||||||
|
GCC_DYNAMIC_NO_PIC = NO;
|
||||||
|
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||||
|
GCC_MODEL_TUNING = G5;
|
||||||
|
GCC_OPTIMIZATION_LEVEL = 0;
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
GCC_PREFIX_HEADER = Dumb_Prefix.pch;
|
||||||
|
INFOPLIST_FILE = Info.plist;
|
||||||
|
INSTALL_PATH = "$(HOME)/Library/Bundles";
|
||||||
|
OBJROOT = ../../build;
|
||||||
|
PRODUCT_NAME = Dumb;
|
||||||
|
SYMROOT = ../../build;
|
||||||
|
WRAPPER_EXTENSION = bundle;
|
||||||
|
ZERO_LINK = YES;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
1DEB913C08733D840010E9CD /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
ARCHS = (
|
||||||
|
ppc,
|
||||||
|
i386,
|
||||||
|
);
|
||||||
|
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
|
||||||
|
GCC_MODEL_TUNING = G5;
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
GCC_PREFIX_HEADER = Dumb_Prefix.pch;
|
||||||
|
INFOPLIST_FILE = Info.plist;
|
||||||
|
INSTALL_PATH = "$(HOME)/Library/Bundles";
|
||||||
|
OBJROOT = ../../build;
|
||||||
|
PRODUCT_NAME = Dumb;
|
||||||
|
SYMROOT = ../../build;
|
||||||
|
WRAPPER_EXTENSION = bundle;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
1DEB913F08733D840010E9CD /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
OBJROOT = ../../build;
|
||||||
|
PREBINDING = NO;
|
||||||
|
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
||||||
|
SYMROOT = ../../build;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
1DEB914008733D840010E9CD /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
OBJROOT = ../../build;
|
||||||
|
PREBINDING = NO;
|
||||||
|
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
||||||
|
SYMROOT = ../../build;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
|
/* Begin XCConfigurationList section */
|
||||||
|
1DEB913A08733D840010E9CD /* Build configuration list for PBXNativeTarget "Dumb" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
1DEB913B08733D840010E9CD /* Debug */,
|
||||||
|
1DEB913C08733D840010E9CD /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
1DEB913E08733D840010E9CD /* Build configuration list for PBXProject "Dumb" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
1DEB913F08733D840010E9CD /* Debug */,
|
||||||
|
1DEB914008733D840010E9CD /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
defaultConfigurationName = Release;
|
||||||
|
};
|
||||||
|
/* End XCConfigurationList section */
|
||||||
|
};
|
||||||
|
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
//
|
||||||
|
// DumbFile.h
|
||||||
|
// Cog
|
||||||
|
//
|
||||||
|
// Created by Vincent Spader on 5/29/06.
|
||||||
|
// Copyright 2006 Vincent Spader. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
#import <Dumb/dumb.h>
|
||||||
|
|
||||||
|
#import "Plugin.h"
|
||||||
|
|
||||||
|
@interface DumbDecoder : NSObject <CogDecoder> {
|
||||||
|
DUMBFILE *df;
|
||||||
|
DUMBFILE_SYSTEM dfs;
|
||||||
|
DUH *duh;
|
||||||
|
DUH_SIGRENDERER *dsr;
|
||||||
|
|
||||||
|
id<CogSource> source;
|
||||||
|
long length;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)setSource:(id<CogSource>)s;
|
||||||
|
- (id<CogSource>)source;
|
||||||
|
- (void)cleanUp;
|
||||||
|
@end
|
|
@ -0,0 +1,194 @@
|
||||||
|
//
|
||||||
|
// DumbFile.m
|
||||||
|
// Cog
|
||||||
|
//
|
||||||
|
// Created by Vincent Spader on 5/29/06.
|
||||||
|
// Copyright 2006 Vincent Spader. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "DumbDecoder.h"
|
||||||
|
|
||||||
|
@implementation DumbDecoder
|
||||||
|
|
||||||
|
int skipCallback(void *f, long n)
|
||||||
|
{
|
||||||
|
DumbDecoder *decoder = (DumbDecoder *)f;
|
||||||
|
|
||||||
|
NSLog(@"SKIPPING");
|
||||||
|
|
||||||
|
if (![[decoder source] seek:n whence: SEEK_CUR])
|
||||||
|
{
|
||||||
|
return 1; //Non-zero is error
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0; //Zero for success
|
||||||
|
}
|
||||||
|
|
||||||
|
int getCharCallback(void *f)
|
||||||
|
{
|
||||||
|
DumbDecoder *decoder = (DumbDecoder *)f;
|
||||||
|
|
||||||
|
NSLog(@"Getting Character");
|
||||||
|
|
||||||
|
char c;
|
||||||
|
|
||||||
|
if ([[decoder source] read:&c amount:1] < 1)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return c;
|
||||||
|
}
|
||||||
|
|
||||||
|
long readCallback(char *ptr, long n, void *f)
|
||||||
|
{
|
||||||
|
NSLog(@"READ");
|
||||||
|
DumbDecoder *decoder = (DumbDecoder *)f;
|
||||||
|
|
||||||
|
return [[decoder source] read:ptr amount:n];
|
||||||
|
}
|
||||||
|
|
||||||
|
void closeCallback(void *f)
|
||||||
|
{
|
||||||
|
// DumbDecoder *decoder = (DumbDecoder *)f;
|
||||||
|
NSLog(@"CLOSE"); //I DO NOTHING
|
||||||
|
}
|
||||||
|
|
||||||
|
- (BOOL)open:(id<CogSource>)s
|
||||||
|
{
|
||||||
|
[self setSource:s];
|
||||||
|
|
||||||
|
dfs.open = NULL;
|
||||||
|
dfs.skip = skipCallback;
|
||||||
|
dfs.getc = getCharCallback;
|
||||||
|
dfs.getnc = readCallback;
|
||||||
|
dfs.close = closeCallback;
|
||||||
|
|
||||||
|
dumb_register_stdfiles();
|
||||||
|
|
||||||
|
df = dumbfile_open_ex(self, &dfs);
|
||||||
|
if (!df)
|
||||||
|
{
|
||||||
|
NSLog(@"EX Failed");
|
||||||
|
return NO;
|
||||||
|
}
|
||||||
|
|
||||||
|
NSString *ext = [[[[s url] path] pathExtension] lowercaseString];
|
||||||
|
if ([ext isEqualToString:@"it"])
|
||||||
|
duh = dumb_read_it(df);
|
||||||
|
else if ([ext isEqualToString:@"xm"])
|
||||||
|
// duh = dumb_read_xm(df);
|
||||||
|
duh = dumb_load_xm([[[s url] path] UTF8String]);
|
||||||
|
else if ([ext isEqualToString:@"s3m"])
|
||||||
|
duh = dumb_read_s3m(df);
|
||||||
|
else if ([ext isEqualToString:@"mod"])
|
||||||
|
duh = dumb_read_mod(df);
|
||||||
|
else {
|
||||||
|
NSLog(@"DUH IS NUL!!!");
|
||||||
|
duh = NULL;
|
||||||
|
}
|
||||||
|
if (!duh)
|
||||||
|
{
|
||||||
|
NSLog(@"Failed to create duh");
|
||||||
|
return NO;
|
||||||
|
}
|
||||||
|
|
||||||
|
length = duh_get_length(duh);
|
||||||
|
|
||||||
|
|
||||||
|
dsr = duh_start_sigrenderer(duh, 0, 2 /* stereo */, 0 /* start from the beginning */);
|
||||||
|
if (!dsr)
|
||||||
|
{
|
||||||
|
NSLog(@"Failed to create dsr");
|
||||||
|
return NO;
|
||||||
|
}
|
||||||
|
|
||||||
|
return YES;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NSDictionary *)properties
|
||||||
|
{
|
||||||
|
return [NSDictionary dictionaryWithObjectsAndKeys:
|
||||||
|
[NSNumber numberWithInt:0], @"bitrate",
|
||||||
|
[NSNumber numberWithFloat:44100], @"sampleRate",
|
||||||
|
[NSNumber numberWithDouble:length / 65.536f], @"length",
|
||||||
|
[NSNumber numberWithInt:16], @"bitsPerSample", //Samples are short
|
||||||
|
[NSNumber numberWithInt:2], @"channels", //output from gme_play is in stereo
|
||||||
|
[NSNumber numberWithBool:[source seekable]], @"seekable",
|
||||||
|
@"host", @"endian",
|
||||||
|
nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (int)fillBuffer:(void *)buf ofSize:(UInt32)size
|
||||||
|
{
|
||||||
|
if (duh_sigrenderer_get_position(dsr) > length) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 4*duh_render(dsr, 16 /* shorts */, 0 /* not unsigned */, 1.0 /* volume */, 65536.0f / 44100.0f /* 65536 hz? */, size/(2*2), buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
- (double)seekToTime:(double)milliseconds
|
||||||
|
{
|
||||||
|
double pos = (double)duh_sigrenderer_get_position(dsr) / 65.536f;
|
||||||
|
double seekPos = milliseconds;
|
||||||
|
|
||||||
|
if (seekPos < pos) {
|
||||||
|
//Reset. Dumb cannot seek backwards. It's dumb.
|
||||||
|
[self cleanUp];
|
||||||
|
[self open:source];
|
||||||
|
|
||||||
|
pos = 0.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int numSamples = (seekPos - pos)/1000 * 44100;
|
||||||
|
|
||||||
|
duh_sigrenderer_generate_samples(dsr, 1.0f, 65536.0f / 44100.0f, numSamples, NULL);
|
||||||
|
|
||||||
|
return milliseconds;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)cleanUp
|
||||||
|
{
|
||||||
|
if (dsr) {
|
||||||
|
duh_end_sigrenderer(dsr);
|
||||||
|
dsr = NULL;
|
||||||
|
}
|
||||||
|
if (duh) {
|
||||||
|
unload_duh(duh);
|
||||||
|
duh = NULL;
|
||||||
|
}
|
||||||
|
if (df) {
|
||||||
|
dumbfile_close(df);
|
||||||
|
df = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)close
|
||||||
|
{
|
||||||
|
[self cleanUp];
|
||||||
|
|
||||||
|
if (source) {
|
||||||
|
[source close];
|
||||||
|
[self setSource:nil];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+ (NSArray *)fileTypes
|
||||||
|
{
|
||||||
|
return [NSArray arrayWithObjects:@"it", @"xm", @"s3m", @"mod",nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)setSource:(id<CogSource>)s
|
||||||
|
{
|
||||||
|
[s retain];
|
||||||
|
[source release];
|
||||||
|
source = s;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (id<CogSource>)source
|
||||||
|
{
|
||||||
|
return source;
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,17 @@
|
||||||
|
//
|
||||||
|
// DumbPlugin.h
|
||||||
|
// GME
|
||||||
|
//
|
||||||
|
// Created by Vincent Spader on 10/11/07.
|
||||||
|
// Copyright 2007 __MyCompanyName__. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
#import "Plugin.h"
|
||||||
|
|
||||||
|
@interface DumbPlugin : NSObject <CogPlugin> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,24 @@
|
||||||
|
//
|
||||||
|
// DumbPlugin.m
|
||||||
|
// GME
|
||||||
|
//
|
||||||
|
// Created by Vincent Spader on 10/11/07.
|
||||||
|
// Copyright 2007 __MyCompanyName__. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "DumbPlugin.h"
|
||||||
|
|
||||||
|
#import "DumbDecoder.h"
|
||||||
|
#import "DumbPropertiesReader.h"
|
||||||
|
|
||||||
|
@implementation DumbPlugin
|
||||||
|
|
||||||
|
+ (NSDictionary *)pluginInfo
|
||||||
|
{
|
||||||
|
return [NSDictionary dictionaryWithObjectsAndKeys:
|
||||||
|
kCogDecoder, [DumbDecoder className],
|
||||||
|
kCogPropertiesReader, [DumbPropertiesReader className],
|
||||||
|
nil];
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,18 @@
|
||||||
|
//
|
||||||
|
// DumbPropertiesReader.h
|
||||||
|
// GME
|
||||||
|
//
|
||||||
|
// Created by Vincent Spader on 10/10/07.
|
||||||
|
// Copyright 2007 __MyCompanyName__. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
#import "Plugin.h"
|
||||||
|
|
||||||
|
@interface DumbPropertiesReader : NSObject <CogPropertiesReader>
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,42 @@
|
||||||
|
//
|
||||||
|
// DumbPropertiesReader.m
|
||||||
|
// GME
|
||||||
|
//
|
||||||
|
// Created by Vincent Spader on 10/10/07.
|
||||||
|
// Copyright 2007 __MyCompanyName__. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "DumbPropertiesReader.h"
|
||||||
|
#import "DumbDecoder.h"
|
||||||
|
|
||||||
|
@implementation DumbPropertiesReader
|
||||||
|
|
||||||
|
+ (NSDictionary *)propertiesForSource:(id<CogSource>)source
|
||||||
|
{
|
||||||
|
NSDictionary *properties;
|
||||||
|
DumbDecoder *decoder;
|
||||||
|
|
||||||
|
decoder = [[DumbDecoder alloc] init];
|
||||||
|
if (![decoder open:source])
|
||||||
|
{
|
||||||
|
NSLog(@"Could not open");
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
|
||||||
|
properties = [decoder properties];
|
||||||
|
|
||||||
|
NSLog(@"Properties! %@", properties);
|
||||||
|
|
||||||
|
[decoder close];
|
||||||
|
[decoder release];
|
||||||
|
|
||||||
|
return properties;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
+ (NSArray *)fileTypes
|
||||||
|
{
|
||||||
|
return [DumbDecoder fileTypes];
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,7 @@
|
||||||
|
//
|
||||||
|
// Prefix header for all source files of the 'Dumb' target in the 'Dumb' project.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifdef __OBJC__
|
||||||
|
#import <Cocoa/Cocoa.h>
|
||||||
|
#endif
|
Binary file not shown.
|
@ -0,0 +1,26 @@
|
||||||
|
<?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>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>English</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>${EXECUTABLE_NAME}</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>${PRODUCT_NAME}</string>
|
||||||
|
<key>CFBundleIconFile</key>
|
||||||
|
<string></string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>com.yourcompany.yourcocoabundle</string>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>BNDL</string>
|
||||||
|
<key>CFBundleSignature</key>
|
||||||
|
<string>????</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>1.0</string>
|
||||||
|
<key>NSPrincipalClass</key>
|
||||||
|
<string>DumbPlugin</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
|
@ -322,8 +322,10 @@
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
OBJROOT = ../../build;
|
||||||
PREBINDING = NO;
|
PREBINDING = NO;
|
||||||
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
||||||
|
SYMROOT = ../../build;
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
};
|
};
|
||||||
|
@ -332,8 +334,10 @@
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
|
OBJROOT = ../../build;
|
||||||
PREBINDING = NO;
|
PREBINDING = NO;
|
||||||
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
|
||||||
|
SYMROOT = ../../build;
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue