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 |
God of War®: Ghost of Sparta |
v1.16.4 |
2023-10-01 |
ReadFromHardware: Invalid address 04800000 near PC 08a64c18 LR 08a6542c |
God of War®: Ghost of Sparta |
v1.13.1 |
2023-10-01 |
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 r4p0-00rel0 [Revision 96995].
01f34551:00000f3d HWX C T N LM Fog RevN Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 Cull
#version 100
// Mali-450 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 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);
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 * 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_lig |
God of War®: Ghost of Sparta |
v1.13.1 |
2023-10-01 |
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 r4p0-00rel0 [Revision 96995].
01f34550:00000f3d HWX C T N LM Fog RevN Tex Light: 0: c:0 t:0 1: c:1 t:1 2: c:1 t:1 3: c:0 t:1 MatUp:3 Cull
#version 100
// Mali-450 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 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 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);
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 * color0.rgb) * max(ldot, 0.0);
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*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * color0.rgb) * max(ldot, 0.0);
lightS |
God of War®: Ghost of Sparta |
v1.14 |
2023-09-30 |
UI scissor out of bounds in GameSettingsScreen: 294,0-1295,721 / 1600,720 |
God of War®: Ghost of Sparta |
v1.14 |
2023-09-30 |
UI scissor out of bounds in GameSettingsScreen: 232,0-1026,544 / 1208,544 |
God of War®: Ghost of Sparta |
v1.16.5 |
2023-10-01 |
Can't draw: No current render step. Step count: 0 |
God of War®: Ghost of Sparta |
v1.16.2 |
2023-09-23 |
Unknown GE command : fefefff8 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-20 |
WriteToHardware: Invalid address 000002a0 near PC 08a99330 LR 08a99360 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-19 |
WriteToHardware: Invalid address 00000368 near PC 08ad0f20 LR 08a9d0c0 |
God of War®: Ghost of Sparta |
v1.16.1 |
2023-09-19 |
WriteToHardware: Invalid address 00000064 near PC 08809c54 LR 0880bf9c |
God of War®: Ghost of Sparta |
v1.16.1 |
2023-09-19 |
ReadFromHardware: Invalid address 00000068 near PC 08809c54 LR 0880bf9c |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-18 |
sceKernelLoadModule: unsupported options size=00000014, flags=08aea468, pos=0, access=1, data=2, text=2 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-18 |
sceKernelLoadModule: unsupported options size=00000014, flags=09ee9c80, pos=0, access=1, data=1, text=1 |
God of War®: Ghost of Sparta |
v1.10.3 |
2023-09-17 |
Unknown syscall in known module 'sceOpenPSID_driver': 0xd857cf93 |
God of War®: Ghost of Sparta |
v1.10.3 |
2023-09-17 |
Unknown syscall in known module 'sceOpenPSID_driver': 0xc287ad90 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-16 |
MIPSCompileOp: Invalid instruction 000102a8 |
God of War®: Ghost of Sparta |
v1.12.2 |
2023-09-08 |
Jump to invalid address: 0784d480 |
God of War®: Ghost of Sparta |
v1.12.2 |
2023-09-08 |
Jump to invalid address: 07853bc0 |
God of War®: Ghost of Sparta |
v1.12.2 |
2023-09-08 |
Jump to invalid address: 07912b80 |
God of War®: Ghost of Sparta |
v1.12.2 |
2023-09-08 |
Jump to invalid address: 0791e7c0 |
God of War®: Ghost of Sparta |
v1.12.2 |
2023-09-08 |
Jump to invalid address: 078105c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 735f6d61 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 746e6920 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 6e756f72 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 74796220 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 7069746c |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 756d2061 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 7a69735f |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 6e674920 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 74617265 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 706f2070 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 75642074 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 73657571 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-07 |
MIPSCompileOp: Invalid instruction 73756150 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-03 |
MIPSCompileOp: Invalid instruction 40272704 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-03 |
MIPSCompileOp: Invalid instruction 42ddcbb0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-03 |
Jump to invalid address: 015f8a40 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-03 |
Jump to invalid address: 077df5c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-03 |
Jump to invalid address: 0683f7c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-09-02 |
WriteToHardware: Invalid address 000002a0 near PC 08a8873c LR 08a880cc |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-31 |
Jump to invalid address: 07911fc0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078a9340 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0785bcc0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07896480 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0789c3c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078967c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078a9b00 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0786f5c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0786f280 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078912c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07894440 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0788f4c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0788fe40 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07894cc0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07893400 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07892240 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0788ef80 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07893a80 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07891880 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07892b80 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07895d00 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07895380 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078a18c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078aa180 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07836280 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0786fa40 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078c1d40 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07870440 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 079b1a40 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 06d85fc0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078002c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 077fdcc0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0785a9c0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078f4500 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 06d80e40 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078c9700 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0789ccc0 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07874540 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07870c80 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 07896f00 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 078a3300 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-30 |
Jump to invalid address: 0791bd00 |
God of War®: Ghost of Sparta |
v1.15.3 |
2023-08-30 |
80630007=sceAtracSetData(2, 08d4b180, 00004d00): atracID uses different codec type than data |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-28 |
Branch in Jump delay slot at 09fff4a0 in block starting at 09fff498 |
God of War®: Ghost of Sparta |
v1.9.4 |
2023-08-28 |
WriteToHardware: Invalid address c2c74d76 near PC 08000000 LR 08000000 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-27 |
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 r8p0-01rel0 [Revision 96995].
01b14054:00000b29 HWX C T N LM Light: 0: c:0 t:1 1: c:1 t:1 3: c:0 t:1 MatUp:1 Cull
#version 100
// Driver: Mali-450 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01b14054:00000b29 HWX C T N LM Light: 0: c:0 t:1 1: c:1 t:1 3: c:0 t:1 MatUp:1 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 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_lightpos3;
uniform mediump vec3 u_lightatt3;
uniform lowp vec3 u_lightambient3;
uniform lowp vec3 u_lightdiffuse3;
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_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 = u_matdiffuse.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);
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_lightpos3 - worldpos;
distance = length(toLight);
toLight /= distance;
ldot = dot(toLight, worldnormal);
lightScale = clamp(1.0 / dot(u_lightatt3, vec3(1.0, distance, distance*distance)), 0.0, 1.0);
diffuse = (u_lightdiffuse3 * diffuseColor) * max(ldot, 0.0);
lightSum0.rgb += (u_lightambient3 * ambientColor.rgb + diffuse) * lightScale;
v_color0 = clamp(lightSum0, 0.0, 1.0);
v_color1 = clamp(lightSum1, 0.0, 1.0);
v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0);
v_fogdepth = (viewPos.z + u_fogcoef.x) * u_fogcoef.y;
vec3 projPos = outPos.xyz / outPos.w;
float projZ = (projPos.z - u_depthRange.z) * u_depthRange.w;
if (u_cullRangeMi |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-27 |
WriteToHardware: Invalid address 00000064 near PC 08b08ac4 LR 08b8688c |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-27 |
ReadFromHardware: Invalid address 00000068 near PC 08b08ac4 LR 08b8688c |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-27 |
Unknown GE command : 4ee607f6 |
God of War®: Ghost of Sparta |
v1.14.2 |
2023-08-24 |
UI scissor out of bounds in GameSettingsScreen: 325,0-1262,720 / 1504,720 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-20 |
Unexpected mpeg first timestamp: d2fd47bc0c7 / 14499079504071 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-18 |
MIPSCompileOp: Invalid instruction 0000053d |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-18 |
MIPSCompileOp: Invalid instruction cccccd00 |
God of War®: Ghost of Sparta |
v1.15.4 |
2023-08-18 |
ReadFromHardware: Invalid address 000015ab near PC 000015ab LR 088e5030 |
God of War®: Ghost of Sparta |
v1.15 |
2023-08-16 |
sceKernelLoadModule: unsupported options size=00000014, flags=00000021, pos=0, access=1, data=1, text=1 |
God of War®: Ghost of Sparta |
v1.15.3 |
2023-08-18 |
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 r4p0-00rel0 [Revision 96995].
01f34511:00000f29 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 Cull
#version 100
// Driver: Mali-450 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f34511:00000f29 HWX C T N LM RevN Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 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 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 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;
ldot = dot(toLight, worldnormal);
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 ;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1;
ldot = dot(toLight, worldnormal);
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 ;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.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 * 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_lightspecular2 * specularColor * ldot * lightScale;
}
lightSum0.rgb += ( |
God of War®: Ghost of Sparta |
v1.15.3 |
2023-08-18 |
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 r4p0-00rel0 [Revision 96995].
01f34511:00000b29 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 t:1 MatUp:3 Cull
#version 100
// Driver: Mali-450 MP - GLSL 100
precision highp float;
#define gl_VertexIndex gl_VertexID
#define splat3(x) vec3(x)
#define mul(x, y) ((x) * (y))
// 01f34511:00000b29 HWX C T N LM Light: 0: c:1 t:0 1: c:1 t:0 2: c:1 t:1 3: c:0 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 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 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;
ldot = dot(toLight, worldnormal);
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 ;
}
lightSum0.rgb += (u_lightambient0 * ambientColor.rgb + diffuse);
toLight = u_lightpos1;
ldot = dot(toLight, worldnormal);
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 ;
}
lightSum0.rgb += (u_lightambient1 * ambientColor.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 * 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_lightspecular2 * specularColor * ldot * lightScale;
}
lightSum0.rgb += (u_lightambi |
God of War®: Ghost of Sparta |
v1.5.4 |
2023-08-11 |
BJUMP to illegal address 0e66f52c - ignoring! data=58e62c |
God of War®: Ghost of Sparta |
v1.5.4 |
2023-08-11 |
Bad vertex address 0e021512! |
God of War®: Ghost of Sparta |
v1.5.4 |
2023-08-11 |
Vertices without position found: (02f00031) P: s8 N: s8 C: 565 T: u8 Morph: 5 (through) (size: 50) |