To see your stuff show here, enable Compatibility Server Reports in PPSSPP.
Click on a version, game, or report message to show similar entries. Hover over version to see platform info, and hover over a game title to see region and version info.
Game title |
Version |
Latest Report |
Message |
SOCOM: Fireteam Bravo 3 |
v1.17.1 |
2024-02-07 |
MIPSCompileOp: Invalid instruction 4ff40002 |
SOCOM: Fireteam Bravo 3 |
v1.17.1 |
2024-02-07 |
MIPSCompileOp: Invalid instruction 0000005f |
SOCOM: Fireteam Bravo 3 |
v1.17.1 |
2024-02-07 |
MIPSCompileOp: Invalid instruction 00210001 |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2024-02-01 |
sceDmacMemcpy(dest=04088000, src=092875c0, size=557056): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.17 |
2024-01-31 |
sceDmacMemcpy(dest=087711f0, src=09a167b0, size=8288): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2024-01-24 |
sceDmacMemcpy(dest=08e2be00, src=08e3b200, size=9024): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2024-01-23 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
01710551:00000b3d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 MatUp:1 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_tex |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2024-01-23 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
01f35155:00000b3d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:1 t:1 MatUp:3 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot ;
}
lightSum0 |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2024-01-23 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
01f15551:00000b3d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:1 t:1 MatUp:1 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * li |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2024-01-23 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
05f35155:40c00b3d HWX C T N LM Fog Tex Bones:4 Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:1 t:1 MatUp:3 WScale 2 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute mediump vec4 w1;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform mat4 u_bone0;
uniform mat4 u_bone1;
uniform mat4 u_bone2;
uniform mat4 u_bone3;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
mat4 skinMatrix = mul(w1.x, u_bone0) + mul(w1.y, u_bone1) + mul(w1.z, u_bone2) + mul(w1.w, u_bone3);
vec3 skinnedpos = mul(vec4(position, 1.0), skinMatrix).xyz * 1.999969482421875;
vec3 worldpos = mul(vec4(skinnedpos, 1.0), u_world).xyz;
mediump vec3 skinnednormal = mul(vec4(normal, 0.0), skinMatrix).xyz * 1.999969482421875;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(skinnednormal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_light |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2024-01-23 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
01f35515:00000b3d HWX C T N LM Fog Tex Light: 0: c:1 t:1 1: c:1 t:0 2: c:1 t:1 3: c:1 t:1 MatUp:3 Cull
#version 100
// Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos1;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse);
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_li |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2024-01-20 |
ReadFromHardware: Invalid address 6f706f74 near PC 6f706f74 LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2024-01-20 |
ReadFromHardware: Invalid address bbe5bb3e near PC bbe5bb3e LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2024-01-20 |
ReadFromHardware: Invalid address 00000008 near PC 00000008 LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.14.4 |
2024-01-16 |
sceDmacMemcpy(dest=09d1dc20, src=09881e20, size=249760): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.12.3-1264-gf8c219b7f |
2024-01-11 |
Failed to read valid video stream data from header |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2024-01-04 |
00000400=sceGeEdramSetAddrTranslation(00000800) |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2024-01-04 |
Rendering to framebuffer offset at 04162000 +256x0 (stride 512) |
SOCOM: Fireteam Bravo 3 |
v1.13.1 |
2024-01-01 |
sceKernelCreateSema(RealMutex) unsupported options parameter, size = 147002140 |
SOCOM: Fireteam Bravo 3 |
v1.13.1 |
2024-01-01 |
sceKernelCreateSema(RealMutex) unsupported options parameter, size = 146993220 |
SOCOM: Fireteam Bravo 3 |
v1.13.1 |
2024-01-01 |
sceKernelCreateSema(SNDMUTEX) unsupported options parameter, size = 166232480 |
SOCOM: Fireteam Bravo 3 |
v1.13.1 |
2024-01-01 |
sceKernelCreateSema(SNDMUTEX) unsupported options parameter, size = 158723776 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-12-18 |
sceDmacMemcpy(dest=0410df10, src=08638950, size=16384): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
MIPSCompileOp: Invalid instruction 0006e3e8 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Branch in RSRTComp delay slot at 08cdea34 in block starting at 08cde8a8 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 06628160 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 0337aa30 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
MIPSCompileOp: Invalid instruction 000003de |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 066291a0 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 068a5ac0 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 06629140 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 06614da0 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 066290e0 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
Jump to invalid address: 06650c40 |
SOCOM: Fireteam Bravo 3 |
v1.11.3 |
2023-12-16 |
sceDmacMemcpy(dest=04122760, src=098b1060, size=608416): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.10.3 |
2023-12-14 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
01f35551:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:1 t:1 MatUp:3
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * color0.rgb) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*d |
SOCOM: Fireteam Bravo 3 |
v1.10.3 |
2023-12-14 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r10p0-00dev0 [Revision 96995].
01f15551:00000b1d HWX C T N LM Fog Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:1 t:1 MatUp:1
#version 100
precision highp float;
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform mediump vec3 u_lightatt2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec3 u_matdiffuse;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
void main() {
vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz;
mediump vec3 worldnormal = normalize((u_world * vec4(normal, 0.0)).xyz);
vec4 viewPos = u_view * vec4(worldpos, 1.0);
vec4 outPos = u_proj * viewPos;
lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = vec3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ;
}
lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse);
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos2 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0);
if (ldot >= 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
if (u_matspecular.a <= 0.0) {
ldot = 1.0;
} else {
ldot = pow(max(ldot, 0.0), u_matspecular.a);
}
if (ldot > 0.0)
lightSum1 += u_lightspecular2 * u_matspecular.rgb * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient2 * color0.rgb + diffuse) * lightScale;
toLight = u_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lig |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-12-05 |
sceKernelLoadModule: unsupported options size=00000014, flags=00000021, pos=0, access=1, data=2, text=2 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-12-05 |
sceKernelLoadModule: unsupported options size=00000014, flags=00000021, pos=0, access=1, data=1, text=1 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-12-03 |
WriteToHardware: Invalid address 000001f0 near PC 08b81348 LR 08b7a174 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-11-28 |
sceDmacMemcpy(dest=08f3d760, src=08f376a0, size=15168): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.6.3 |
2023-11-28 |
Jump to invalid address: 03cb8100 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-11-26 |
ReadFromHardware: Invalid address 6c46512e near PC 6c46512e LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-11-21 |
800200d2=scePsmfPlayerSetPsmfCB(0987bfd0, disc0:/PSP_GAME/USRDIR/video/FMV_001_2.pmf): too many streams in PSMF video, bogus data |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2023-11-18 |
sceKernelReleaseWaitThread(): Refusing to wake HLE-delayed thread, right thing to do? |
SOCOM: Fireteam Bravo 3 |
v1.14.4 |
2023-12-11 |
sceDmacMemcpy(dest=08e28300, src=08e36300, size=9104): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-11-05 |
Can't draw: No current render step. Step count: 0 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-11-05 |
ReadFromHardware: Invalid address 69284790 near PC 69284790 LR 08a7c6d4 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-19 |
Unusual bezier/spline vtype: 12a4a4a4, morph: 1, bones: 3 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-19 |
Drawing region rate add non-zero: 0120, 0108 of 0225, 01b3 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-19 |
Vertices without position found: (04ff1212) P: ? C: 565 T: u16 W: u8 (5x) I: u16 Morph: 8 (through) (size: 128) |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-19 |
VTYPE with morph used: THRU=1 TC=2 COL=4 POS=0 NRM=0 WT=1 NW=5 IDX=2 MC=8 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-19 |
Unusual bezier/spline vtype: 12ff1212, morph: 7, bones: 5 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-19 |
Unknown GE command : 5aa69b69 |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-14 |
80000107=sceDisplaySetFrameBuf(04000000, 512, 0, 0): must change latched framebuf first |
SOCOM: Fireteam Bravo 3 |
v1.16.6 |
2023-10-14 |
80000107=sceDisplaySetFrameBuf(04044000, 512, 0, 0): must change latched framebuf first |
SOCOM: Fireteam Bravo 3 |
v1.10-6-g8ac4efd3c |
2023-10-13 |
sceDmacMemcpy(dest=095f5750, src=098a7680, size=20608): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.16.5 |
2023-10-02 |
sceDmacMemcpy(dest=041a67d0, src=094e1b40, size=9296): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.16.5 |
2023-10-02 |
00000400=sceGeEdramSetAddrTranslation(00000400) |
SOCOM: Fireteam Bravo 3 |
v1.14 |
2023-09-28 |
UI scissor out of bounds in GameSettingsScreen: 280,0-1147,720 / 1344,720 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-09-20 |
sceDmacMemcpy(dest=08e2ed50, src=08e3cd50, size=8384): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.16.1 |
2023-09-18 |
WriteToHardware: Invalid address 000001f0 near PC 08b7a124 LR 08b7a090 |
SOCOM: Fireteam Bravo 3 |
v1.16.1 |
2023-09-17 |
ReadFromHardware: Invalid address e7bfbde4 near PC e7bfbde4 LR 08b793e8 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-09-10 |
sceMpegRingbufferPut(): invalid mpeg data |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-09-04 |
sceKernelLoadModuleByID: unsupported options size=00000014, flags=ffffabcd, pos=0, access=1, data=2, text=2 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-31 |
__KernelStopThread: thread 296 does not exist (ApctlThread deleted) |
SOCOM: Fireteam Bravo 3 |
v1.12.3 |
2023-08-27 |
80630011=sceAtracSetHalfwayBufferAndGetID(08bff040, 00000000, 00040000): buffer too small |
SOCOM: Fireteam Bravo 3 |
v1.15.3 |
2023-08-26 |
Error in shader compilation: info: 0:1: F0002: Mali-400 GP register allocation failed for vertex shader.
Please contact [email protected] with the shader causing
the problem, along with this error message.
Mali online shader compiler r4p1-01rel0 [Revision 96995].
01f35155:00000b29 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:1 t:1 MatUp:3 Cull
#version 100
// Driver: Mali-400 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f35155:00000b29 HWX C T N LM Light: 0: c:1 t:1 1: c:1 t:1 2: c:1 t:0 3: c:1 t:1 MatUp:3 Cull
attribute vec3 position;
attribute mediump vec3 normal;
attribute vec2 texcoord;
attribute lowp vec4 color0;
uniform mat4 u_proj;
uniform mat4 u_world;
uniform mat4 u_view;
uniform vec4 u_uvscaleoffset;
uniform vec3 u_lightpos0;
uniform mediump vec3 u_lightatt0;
uniform lowp vec3 u_lightambient0;
uniform lowp vec3 u_lightdiffuse0;
uniform lowp vec3 u_lightspecular0;
uniform vec3 u_lightpos1;
uniform mediump vec3 u_lightatt1;
uniform lowp vec3 u_lightambient1;
uniform lowp vec3 u_lightdiffuse1;
uniform lowp vec3 u_lightspecular1;
uniform vec3 u_lightpos2;
uniform lowp vec3 u_lightambient2;
uniform lowp vec3 u_lightdiffuse2;
uniform lowp vec3 u_lightspecular2;
uniform vec3 u_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
uniform lowp vec3 u_lightspecular3;
uniform lowp vec4 u_ambient;
uniform lowp vec4 u_matspecular;
uniform lowp vec3 u_matemissive;
uniform lowp vec4 u_matambientalpha;
uniform highp vec2 u_fogcoef;
uniform highp vec4 u_depthRange;
uniform highp vec4 u_cullRangeMin;
uniform highp vec4 u_cullRangeMax;
varying lowp vec4 v_color0;
varying lowp vec3 v_color1;
varying mediump vec3 v_texcoord;
varying mediump float v_fogdepth;
vec3 normalizeOr001(vec3 v) {
return length(v) == 0.0 ? vec3(0.0, 0.0, 1.0) : normalize(v);
}
void main() {
vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz;
mediump vec3 worldnormal = normalizeOr001(mul(vec4(normal, 0.0), u_world).xyz);
vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0);
vec4 outPos = mul(u_proj, viewPos);
vec4 ambientColor = color0;
vec3 diffuseColor = color0.rgb;
vec3 specularColor = u_matspecular.rgb;
lowp vec4 lightSum0 = u_ambient * ambientColor + vec4(u_matemissive, 0.0);
lowp vec3 lightSum1 = splat3(0.0);
vec3 toLight;
lowp vec3 diffuse;
float distance;
lowp float lightScale;
mediump float ldot;
toLight = u_lightpos0 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse0 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular0 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos1 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse1 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal);
ldot = pow(max(ldot, 0.0), u_matspecular.a);
} else {
ldot = 1.0;
}
if (ldot > 0.0)
lightSum1 += u_lightspecular1 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.rgb + diffuse) * lightScale;
toLight = u_lightpos2;
ldot = dot(toLight, worldnormal);
diffuse = (u_lightdiffuse2 * diffuseColor) * max(ldot, 0.0);
if (ldot >= 0.0) {
if (u_matspecular.a > 0.0) {
ld |
SOCOM: Fireteam Bravo 3 |
v1.15.3 |
2023-08-26 |
__KernelStopThread: thread 392 does not exist (helper deleted) |
SOCOM: Fireteam Bravo 3 |
v1.15.4-1215-g6b89788e6 |
2023-08-25 |
UNIMPL sceP3daBridgeInit(00000004, 00000800) |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-19 |
ReadFromHardware: Invalid address 43938000 near PC 08a778c4 LR 0892a8b4 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-14 |
sceDmacMemcpy(dest=08f3d6f0, src=08f375d0, size=15168): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-13 |
sceDmacMemcpy(dest=0877a650, src=099a45e0, size=8288): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-10 |
ReadFromHardware: Invalid address 06e1acc8 near PC 06e1acc8 LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-10 |
ReadFromHardware: Invalid address 250000bf near PC 250000bf LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-08-08 |
sceDmacMemcpy(dest=04116760, src=086c1920, size=16384): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-08-03 |
WriteToHardware: Invalid address 00000dc0 near PC 08b79e84 LR 08b79e84 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-07-26 |
sceDmacMemcpy(dest=08703040, src=097f0e70, size=11136): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-07-15 |
Error in shader program link: info: Variable u_texelDelta has unmatched precision qualifier in different shaders
fs: postshader
#version 320 es
precision mediump float;
precision highp int;
uniform vec2 u_texelDelta;
uniform vec2 u_pixelDelta;
layout(binding = 0) uniform mediump sampler2D sampler0;
uniform vec4 u_time;
in vec2 v_texcoord0;
out vec4 _RESERVED_IDENTIFIER_FIXUP_gl_FragColor;
in vec4 v_texcoordNC0;
in vec4 v_texcoordNC1;
in vec4 v_texcoordNC2;
in vec4 v_texcoordNC3;
mediump int SEPIA;
mediump int GRAYSCALE;
mediump int NEGATIVE;
mediump int PSPCOLORS;
bvec4 _and_(bvec4 A, bvec4 B)
{
return bvec4(A.x && B.x, A.y && B.y, A.z && B.z, A.w && B.w);
}
vec4 df(vec4 A, vec4 B)
{
return abs(A - B);
}
bvec4 close(vec4 A, vec4 B)
{
vec4 param = A;
vec4 param_1 = B;
return lessThan(df(param, param_1), vec4(15.0));
}
bvec4 _or_(bvec4 A, bvec4 B)
{
return bvec4(A.x || B.x, A.y || B.y, A.z || B.z, A.w || B.w);
}
vec4 weighted_distance(vec4 a, vec4 b, vec4 c, vec4 d, vec4 e, vec4 f, vec4 g, vec4 h)
{
vec4 param = a;
vec4 param_1 = b;
vec4 param_2 = a;
vec4 param_3 = c;
vec4 param_4 = d;
vec4 param_5 = e;
vec4 param_6 = d;
vec4 param_7 = f;
vec4 param_8 = g;
vec4 param_9 = h;
return (((df(param, param_1) + df(param_2, param_3)) + df(param_4, param_5)) + df(param_6, param_7)) + (df(param_8, param_9) * 4.0);
}
vec3 processxBR(vec3 color)
{
vec2 pS = vec2(1.0) / u_texelDelta;
vec2 fp = fract(v_texcoord0 * pS);
vec2 TexCoord_0 = v_texcoord0 - (fp * u_pixelDelta);
vec2 dx = vec2(u_texelDelta.x, 0.0);
vec2 dy = vec2(0.0, u_texelDelta.y);
vec2 y2 = dy + dy;
vec2 x2 = dx + dx;
vec3 A = texture(sampler0, (TexCoord_0 - dx) - dy).xyz;
vec3 B = texture(sampler0, TexCoord_0 - dy).xyz;
vec3 C = texture(sampler0, (TexCoord_0 + dx) - dy).xyz;
vec3 D = texture(sampler0, TexCoord_0 - dx).xyz;
vec3 E = texture(sampler0, TexCoord_0).xyz;
vec3 F = texture(sampler0, TexCoord_0 + dx).xyz;
vec3 G = texture(sampler0, (TexCoord_0 - dx) + dy).xyz;
vec3 H = texture(sampler0, TexCoord_0 + dy).xyz;
vec3 I = texture(sampler0, (TexCoord_0 + dx) + dy).xyz;
vec3 A1 = texture(sampler0, (TexCoord_0 - dx) - y2).xyz;
vec3 C1 = texture(sampler0, (TexCoord_0 + dx) - y2).xyz;
vec3 A0 = texture(sampler0, (TexCoord_0 - x2) - dy).xyz;
vec3 G0 = texture(sampler0, (TexCoord_0 - x2) + dy).xyz;
vec3 C4 = texture(sampler0, (TexCoord_0 + x2) - dy).xyz;
vec3 I4 = texture(sampler0, (TexCoord_0 + x2) + dy).xyz;
vec3 G5 = texture(sampler0, (TexCoord_0 - dx) + y2).xyz;
vec3 I5 = texture(sampler0, (TexCoord_0 + dx) + y2).xyz;
vec3 B1 = texture(sampler0, TexCoord_0 - y2).xyz;
vec3 D0 = texture(sampler0, TexCoord_0 - x2).xyz;
vec3 H5 = texture(sampler0, TexCoord_0 + y2).xyz;
vec3 F4 = texture(sampler0, TexCoord_0 + x2).xyz;
vec4 b = vec4(dot(B, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(D, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(H, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(F, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 c = vec4(dot(C, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(A, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(G, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(I, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 d = vec4(b.y, b.z, b.w, b.x);
vec4 e = vec4(dot(E, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)));
vec4 f = vec4(b.w, b.x, b.y, b.z);
vec4 g = vec4(c.z, c.w, c.x, c.y);
vec4 h = vec4(b.z, b.w, b.x, b.y);
vec4 i = vec4(c.w, c.x, c.y, c.z);
vec4 i4 = vec4(dot(I4, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)), dot(C1, vec3(16.1630001068115234375, 23.3509998321533203125, 8.477199554443359375)) |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-07-10 |
sceDmacMemcpy(dest=08768b70, src=0999a6a0, size=9376): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 0209c1b0 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
MIPSCompileOp: Invalid instruction 7fffffff |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 0209b870 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 03cc6400 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 07feaf80 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 0209b8b0 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 03230340 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 03240000 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 0209bb80 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
ReadFromHardware: Invalid address 00000000 near PC 00000000 LR 09ffa170 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
MIPSCompileOp: Invalid instruction 0000c8ff |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 036ae3f0 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Unknown GetPointer 00000097 PC 08a02af8 LR 08a05d90 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-07-01 |
Jump to invalid address: 07fe8750 |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-06-29 |
sceDmacMemcpy(dest=08782b30, src=09a9b460, size=8288): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.13.2 |
2023-06-27 |
ReadFromHardware: Invalid address 29f6e870 near PC 29f6e870 LR 088eeb88 |
SOCOM: Fireteam Bravo 3 |
v1.8.0 |
2023-06-26 |
sceDmacMemcpy(dest=08e3de70, src=08e4be70, size=8224): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.15.4 |
2023-06-23 |
sceDmacMemcpy(dest=08e2be00, src=08e3ae00, size=8416): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.10.3 |
2023-06-16 |
sceDmacMemcpy(dest=040cc000, src=08f312d0, size=140320): overlapping read |
SOCOM: Fireteam Bravo 3 |
v1.15.3 |
2023-06-15 |
sceGeBreak(mode=0, unknown=08dfeba8): unknown ptr (valid) |