summaryrefslogtreecommitdiff
path: root/macosx/plugins/DFXVideo/macsrc
diff options
context:
space:
mode:
authorSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2012-09-23 21:28:57 +0000
committerSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2012-09-23 21:28:57 +0000
commita602f4591fefa9e560a49395c9d4a7a6a126a4c5 (patch)
tree99e57afaa380c70bd5ba02ece871eacd7dd3240a /macosx/plugins/DFXVideo/macsrc
parente81974f7ecc531f43d42180985b9cb37ffb96934 (diff)
downloadpcsxr-a602f4591fefa9e560a49395c9d4a7a6a126a4c5.tar.gz
Quieting a warning in OS X localization implementation.
Fixing a few bugs on the OS X Software Shader support, and adding a quality selector. Changing the hacks type used in the Mac preference selector from unsigned long to unsigned int. git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@79982 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'macosx/plugins/DFXVideo/macsrc')
-rw-r--r--macosx/plugins/DFXVideo/macsrc/PluginConfigController.h1
-rw-r--r--macosx/plugins/DFXVideo/macsrc/PluginConfigController.m34
-rw-r--r--macosx/plugins/DFXVideo/macsrc/PluginGLView.m6
-rw-r--r--macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h1
4 files changed, 25 insertions, 17 deletions
diff --git a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h
index ec9c0203..a740ed67 100644
--- a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h
+++ b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.h
@@ -19,6 +19,7 @@
IBOutlet NSControl *vertexChooser;
IBOutlet NSControl *fragmentChooser;
IBOutlet NSView *shadersView;
+ IBOutlet NSPopUpButton *shaderQualitySelector;
NSURL *vertexPath;
NSURL *fragmentPath;
diff --git a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m
index b22167ca..4cb71fa9 100644
--- a/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m
+++ b/macosx/plugins/DFXVideo/macsrc/PluginConfigController.m
@@ -13,7 +13,7 @@
//If running under Mac OS X, use the Localizable.strings file instead.
#elif defined(_MACOSX)
#ifdef PCSXRCORE
-extern char* Pcsxr_locale_text(char* toloc);
+extern const char* Pcsxr_locale_text(char* toloc);
#define _(String) Pcsxr_locale_text(String)
#define N_(String) String
#else
@@ -26,7 +26,7 @@ extern char* Pcsxr_locale_text(char* toloc);
#define PLUGLOC_x(x,y) x ## y
#define PLUGLOC_y(x,y) PLUGLOC_x(x,y)
#define PLUGLOC PLUGLOC_y(PCSXRPLUG,_locale_text)
-extern char* PLUGLOC(char* toloc);
+extern const char* PLUGLOC(char* toloc);
#define _(String) PLUGLOC(String)
#define N_(String) String
#endif
@@ -111,6 +111,13 @@ NSURL *PSXFragmentShader()
return [keyValues objectForKey:@"FragmentShader"];
}
+float PSXShaderQuality()
+{
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+ NSDictionary *keyValues = [defaults dictionaryForKey:PrefsKey];
+ return (float)[[keyValues objectForKey:@"ShaderQuality"] intValue];
+}
+
void ReadConfig(void)
{
@@ -126,10 +133,11 @@ void ReadConfig(void)
[NSNumber numberWithBool:NO], @"VSync",
[NSNumber numberWithBool:NO], @"Enable Hacks",
[NSNumber numberWithInt:1], @"Dither Mode",
- [NSNumber numberWithLong:0], @"Hacks",
+ [NSNumber numberWithUnsignedInt:0], @"Hacks",
[[selfBundle URLForResource:@"gpuPeteOGL2" withExtension:@"slv"] fileReferenceURL], @"VertexShader",
[[selfBundle URLForResource:@"gpuPeteOGL2" withExtension:@"slf"] fileReferenceURL], @"FragmentShader",
[NSNumber numberWithBool:NO], @"UseShader",
+ [NSNumber numberWithInt:4], @"ShaderQuality",
nil], PrefsKey,
nil]];
@@ -143,7 +151,7 @@ void ReadConfig(void)
iUseFixes = [[keyValues objectForKey:@"Enable Hacks"] boolValue];
iUseDither = [[keyValues objectForKey:@"Dither Mode"] intValue];
- dwCfgFixes = [[keyValues objectForKey:@"Hacks"] longValue];
+ dwCfgFixes = [[keyValues objectForKey:@"Hacks"] unsignedIntValue];
iResX = 640;
iResY = 480;
@@ -189,10 +197,10 @@ void ReadConfig(void)
[writeDic setObject:[NSNumber numberWithInt:[vSync intValue]] forKey:@"VSync"];
[writeDic setObject:[NSNumber numberWithInt:[hackEnable intValue]] forKey:@"Enable Hacks"];
[writeDic setObject:[NSNumber numberWithInt:[shaders intValue]] forKey:@"UseShader"];
-
+ [writeDic setObject:[NSNumber numberWithInt:[shaderQualitySelector indexOfSelectedItem]] forKey:@"ShaderQuality"];
[writeDic setObject:[NSNumber numberWithInt:[ditherMode indexOfSelectedItem]] forKey:@"Dither Mode"];
- unsigned long hackValues = 0;
+ unsigned int hackValues = 0;
NSArray *views = [hacksView subviews];
for (NSView *control in views) {
if ([control isKindOfClass:[NSButton class]]) {
@@ -254,17 +262,13 @@ void ReadConfig(void)
[vertexPath release];
vertexPath = [[openPanel URL] copy];
[vertexShaderViewablePath setTitleWithMnemonic:[vertexPath path]];
-
} else {
[fragmentPath release];
fragmentPath = [[openPanel URL] copy];
[fragmentShaderViewablePath setTitleWithMnemonic:[fragmentPath path]];
-
}
}
-
-
[openPanel release];
}
@@ -283,14 +287,17 @@ void ReadConfig(void)
[frameSkipping setIntValue:[[keyValues objectForKey:@"Frame Skipping"] intValue]];
[vSync setIntValue:[[keyValues objectForKey:@"VSync"] intValue]];
[hackEnable setIntValue:[[keyValues objectForKey:@"Enable Hacks"] intValue]];
+ [shaders setIntValue:[[keyValues objectForKey:@"UseShader"] intValue]];
[ditherMode selectItemAtIndex:[[keyValues objectForKey:@"Dither Mode"] intValue]];
-
+ [shaderQualitySelector selectItemAtIndex:[[keyValues objectForKey:@"ShaderQuality"] intValue]];
+
vertexPath = [[keyValues objectForKey:@"VertexShader"] copy];
fragmentPath = [[keyValues objectForKey:@"FragmentShader"] copy];
[vertexShaderViewablePath setTitleWithMnemonic:[vertexPath path]];
[fragmentShaderViewablePath setTitleWithMnemonic:[fragmentPath path]];
- unsigned long hackValues = [[keyValues objectForKey:@"Hacks"] longValue];
+ unsigned int hackValues = [[keyValues objectForKey:@"Hacks"] unsignedIntValue];
+
NSArray *views = [hacksView subviews];
for (NSView *control in views) {
@@ -300,6 +307,7 @@ void ReadConfig(void)
}
[self hackToggle:hackEnable];
+ [self toggleShader:shaders];
}
- (void)awakeFromNib
@@ -319,7 +327,7 @@ void ReadConfig(void)
@end
-char* PLUGLOC(char *toloc)
+const char* PLUGLOC(char *toloc)
{
NSBundle *mainBundle = [NSBundle bundleForClass:[PluginConfigController class]];
NSString *origString = nil, *transString = nil;
diff --git a/macosx/plugins/DFXVideo/macsrc/PluginGLView.m b/macosx/plugins/DFXVideo/macsrc/PluginGLView.m
index 2c79436b..1836ebcd 100644
--- a/macosx/plugins/DFXVideo/macsrc/PluginGLView.m
+++ b/macosx/plugins/DFXVideo/macsrc/PluginGLView.m
@@ -155,10 +155,8 @@ void BlitScreen16NS(unsigned char * surf,long x,long y)
if(isShaderEnabled()){
// --- Params ---
- shaderQuality = 4.0;
- //vertexShader = LoadShader(GL_VERTEX_SHADER,"/Users/you/shader/gpuPeteOGL2.slv");
+ shaderQuality = PSXShaderQuality();
vertexShader = [self loadShader:GL_VERTEX_SHADER location:PSXVertexShader()];
- //fragmentShader = LoadShader(GL_FRAGMENT_SHADER,"/Users/you/shader/gpuPeteOGL2.slf");
fragmentShader = [self loadShader:GL_FRAGMENT_SHADER location:PSXFragmentShader()];
//--- shader loading ---
@@ -660,7 +658,7 @@ void BlitScreen16NS(unsigned char * surf,long x,long y)
GLuint lu2 = *((GLuint *)pD+1);
GLuint lu3 = *((GLuint *)pD+2);
GLuint *dst = ((GLuint *)((surf)+(column*lPitch)+(row<<2)));
-#ifdef __POWERPC__
+#ifdef __BIG_ENDIAN__
*(dst)=
(((lu1>>24)&0xff)<<16)|(((lu1>>16)&0xff)<<8)|(((lu1>>8)&0xff));
*(dst+1)=
diff --git a/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h b/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h
index a4cb1054..27449a69 100644
--- a/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h
+++ b/macosx/plugins/DFXVideo/macsrc/SGPUPreferences.h
@@ -14,5 +14,6 @@
BOOL isShaderEnabled();
NSURL *PSXFragmentShader();
NSURL *PSXVertexShader();
+float PSXShaderQuality();
#endif