Recent logs - The 3rd Birthday®

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
The 3rd Birthday® v1.9.4 2020-02-13 sceDmacMemcpy(dest=09535080, src=09cf0040, size=1069632): overlapping read
The 3rd Birthday® v1.9.4 2020-02-07 sceDmacMemcpy(dest=090627c0, src=09145340, size=6528): overlapping read
The 3rd Birthday® v1.9.4 2020-02-05 sceDmacMemcpy(dest=09065ac0, src=09269b00, size=1676224): overlapping read
The 3rd Birthday® v1.8.0-454-g492df41b7 2020-02-01 sceDmacMemcpy(dest=093f9280, src=09cf0040, size=1610304): overlapping read
The 3rd Birthday® v1.9.4 2020-01-27 sceDmacMemcpy(dest=08fedfc0, src=09cf0040, size=369216): overlapping read
The 3rd Birthday® v1.9.4 2020-01-26 UNIMPL sceKernelStopUnloadSelfModuleWithStatus(00000001, 00000000, 00000000, 00000000, 00000000): game has likely crashed
The 3rd Birthday® v1.9.4 2020-01-22 sceDmacMemcpy(dest=08fedfc0, src=08ff1080, size=12480): overlapping read
The 3rd Birthday® v1.9.4 2020-01-19 sceDmacMemcpy(dest=092fd040, src=09cf0040, size=1734400): overlapping read
The 3rd Birthday® v1.9.3 2020-01-16 sceDmacMemcpy(dest=09260fc0, src=09cf0040, size=1536256): overlapping read
The 3rd Birthday® v1.9.4 2020-01-10 sceDmacMemcpy(dest=08fa1c00, src=09cf0040, size=291648): overlapping read
The 3rd Birthday® v1.9.4 2020-01-10 sceDmacMemcpy(dest=0907b500, src=092ca140, size=1495744): overlapping read
The 3rd Birthday® v1.9.4 2020-01-07 sceDmacMemcpy(dest=08400000, src=09cf0040, size=86768): overlapping read
The 3rd Birthday® v1.9.4 2020-02-27 sceDmacMemcpy(dest=08feb780, src=09cf0040, size=369216): overlapping read
The 3rd Birthday® v1.9.3 2019-12-28 sceDmacMemcpy(dest=09463d00, src=09cf0040, size=1609920): overlapping read
The 3rd Birthday® v1.9.4 2019-12-26 sceDmacMemcpy(dest=08400000, src=09cf0040, size=204128): overlapping read
The 3rd Birthday® v1.9.4 2019-12-22 sceDmacMemcpy(dest=090459c0, src=09f58fc0, size=10304): overlapping read
The 3rd Birthday® v1.9.3 2019-12-22 sceDmacMemcpy(dest=09041980, src=093fe800, size=690688): overlapping read
The 3rd Birthday® v1.9.4 2019-12-20 sceDmacMemcpy(dest=093b6bc0, src=09cf0040, size=1264256): overlapping read
The 3rd Birthday® v1.9.3 2019-12-20 sceDmacMemcpy(dest=08fedfc0, src=09cf0040, size=498944): overlapping read
The 3rd Birthday® v1.9.3 2019-12-20 sceDmacMemcpy(dest=0906e240, src=09cf0040, size=1676480): overlapping read
The 3rd Birthday® v1.7.5 2019-12-18 sceDmacMemcpy(dest=08feb780, src=09cf0040, size=498944): overlapping read
The 3rd Birthday® v1.9.3 2019-12-16 sceDmacMemcpy(dest=08400000, src=09cf0040, size=96256): overlapping read
The 3rd Birthday® v1.9.3 2019-12-15 sceDmacMemcpy(dest=092aca40, src=09cf0040, size=1683648): overlapping read
The 3rd Birthday® v1.9.3 2019-12-14 sceDmacMemcpy(dest=0952ac80, src=09cf0040, size=690688): overlapping read
The 3rd Birthday® v1.9.3 2019-12-14 sceDmacMemcpy(dest=09056900, src=09cf0040, size=498944): overlapping read
The 3rd Birthday® v1.9.4 2019-11-22 sceDmacMemcpy(dest=092ade40, src=0944f580, size=687488): overlapping read
The 3rd Birthday® v1.9.3-80-g73bf6098e 2019-11-21 __KernelStopThread: thread 1281 does not exist
The 3rd Birthday® v1.8.0 2019-11-21 sceDmacMemcpy(dest=092ae400, src=09cf0040, size=1419072): overlapping read
The 3rd Birthday® v1.9.4 2019-11-11 sceDmacMemcpy(dest=08ff0800, src=09cf0040, size=555840): overlapping read
The 3rd Birthday® v1.9.2 2019-11-10 sceDmacMemcpy(dest=090d7880, src=09cf0040, size=661952): overlapping read
The 3rd Birthday® v1.9.4 2019-11-08 sceDmacMemcpy(dest=09056900, src=091f1740, size=10304): overlapping read
The 3rd Birthday® v1.9.2 2019-11-06 sceDmacMemcpy(dest=090528c0, src=090fb780, size=48832): overlapping read
The 3rd Birthday® v1.9.2 2019-11-05 sceDmacMemcpy(dest=09167280, src=09cf0040, size=1575360): overlapping read
The 3rd Birthday® v1.9.2 2019-11-05 sceDmacMemcpy(dest=09078340, src=09120d40, size=48896): overlapping read
The 3rd Birthday® v1.9.4 2019-11-04 sceDmacMemcpy(dest=0956fd80, src=09cf0040, size=111104): overlapping read
The 3rd Birthday® v1.9.4 2019-10-20 sceDmacMemcpy(dest=0905e200, src=09cf0040, size=1662080): overlapping read
The 3rd Birthday® v1.9.4 2019-10-20 sceDmacMemcpy(dest=08400000, src=09cf0040, size=88912): overlapping read
The 3rd Birthday® v1.9.3-68-g94339b228 2019-10-14 __KernelStopThread: thread 467 does not exist
The 3rd Birthday® v1.6.3 2019-10-13 sceDmacMemcpy(dest=09180940, src=09325ac0, size=1511680): overlapping read
The 3rd Birthday® v1.9.3-68-g94339b228 2019-10-13 sceDmacMemcpy(dest=09066980, src=09191a00, size=522688): overlapping read
The 3rd Birthday® v1.8.0 2019-10-13 sceDmacMemcpy(dest=09263800, src=09cf0040, size=1536256): overlapping read
The 3rd Birthday® v1.9.3-77-gaca18a188 2019-10-15 __KernelStopThread: thread 293 does not exist
The 3rd Birthday® v1.8.0 2019-09-26 sceDmacMemcpy(dest=090c1040, src=09cf0040, size=1724224): overlapping read
The 3rd Birthday® v1.8.0 2019-09-19 Unknown GetPointer 00000000 PC 08b30dec LR 08b30dec
The 3rd Birthday® v1.8.0 2019-08-30 sceDmacMemcpy(dest=093b04c0, src=09f4ffc0, size=48832): overlapping read
The 3rd Birthday® v1.8.0 2019-08-25 sceDmacMemcpy(dest=08ff0800, src=09cf0040, size=277120): overlapping read
The 3rd Birthday® v1.8.0 2019-08-25 sceDmacMemcpy(dest=092e31c0, src=09f58fc0, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-08-23 sceDmacMemcpy(dest=0953ca40, src=09cf0040, size=1071104): overlapping read
The 3rd Birthday® v1.9.4 2020-02-14 Unexpected mpeg first timestamp: 8b795310703 / 9584575055619
The 3rd Birthday® v1.8.0 2019-08-18 sceDmacMemcpy(dest=09050080, src=0915e000, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-08-18 Error in shader compilation: info: 0:8(2): error: `gl_FragColor' undeclared 0:8(2): error: value of type vec4 cannot be assigned to variable of type error depal #version 450 varying vec2 v_texcoord0; uniform sampler2D tex; uniform sampler2D pal; void main() { vec4 index = texture2D(tex, v_texcoord0); float coord = (index.r * 0.029297) + 0.000977; gl_FragColor = texture2D(pal, vec2(coord, 0.0)); }
The 3rd Birthday® v1.8.0 2019-08-18 Error in shader compilation: info: 0:8(2): error: `gl_FragColor' undeclared 0:8(2): error: value of type vec4 cannot be assigned to variable of type error depal #version 450 varying vec2 v_texcoord0; uniform sampler2D tex; uniform sampler2D pal; void main() { vec4 index = texture2D(tex, v_texcoord0); float coord = (mod(index.g * 15.999375, 16.0) * 0.001953) + 0.000977; gl_FragColor = texture2D(pal, vec2(coord, 0.0)); }
The 3rd Birthday® v1.8.0 2019-08-17 sceDmacMemcpy(dest=09238240, src=09cf0040, size=1515520): overlapping read
The 3rd Birthday® v1.6.3 2019-08-10 sceDmacMemcpy(dest=0934a640, src=09cf0040, size=1459392): overlapping read
The 3rd Birthday® v1.8.0 2019-08-03 sceDmacMemcpy(dest=0933d540, src=09cf0040, size=1035520): overlapping read
The 3rd Birthday® v1.8.0 2019-07-28 Error in shader program link: info: (unknown reason) fs: 00000000:00a1d022 Tex TexAlpha Fog 2x TFuncMod AlphaTest0 > #version 330 #define lowp #define mediump #define highp uniform sampler2D tex; uniform sampler2D testtex; in vec4 v_color0; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; v.rgb = clamp(v.rgb * 2.0, 0.0, 1.0); float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); if (v.a < 0.002) discard; fragColor0 = v; } vs: 01770551:00000b14 HWX T N Fog Tex Light: 0: c:1 t:0 1: c:1 t:1 2: c:1 t:1 MatUp:7 #version 330 #define lowp #define mediump #define highp in vec3 position; in mediump vec3 normal; in vec2 texcoord; 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; out lowp vec4 v_color0; out mediump vec3 v_texcoord; out 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 * u_matambientalpha + 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 * u_matambientalpha.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 * u_matambientalpha.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 * u_matambientalpha.rgb + diffuse) * lightScale; v_color0 = clamp(clamp(lightSum0, 0.0, 1.0) + ve
The 3rd Birthday® v1.8.0 2019-07-28 Error in shader program link: info: (unknown reason) fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod #version 330 #define lowp #define mediump #define highp uniform sampler2D tex; in vec4 v_color0; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = v; } vs: 00000000:0000001c C Fog Tex #version 330 #define lowp #define mediump #define highp in vec4 position; in vec2 texcoord; in lowp vec4 color0; uniform mat4 u_proj; uniform highp vec2 u_fogcoef; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; out lowp vec4 v_color0; out mediump vec3 v_texcoord; out mediump float v_fogdepth; void main() { v_texcoord = vec3(texcoord, 1.0); v_color0 = color0; v_fogdepth = position.w; vec4 outPos = u_proj * vec4(position.xyz, 1.0); vec3 projPos = outPos.xyz / outPos.w; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
The 3rd Birthday® v1.8.0 2019-07-28 Error in shader program link: info: (unknown reason) fs: 00000000:00200022 Tex TexAlpha Fog TFuncMod #version 330 #define lowp #define mediump #define highp uniform sampler2D tex; in vec4 v_color0; uniform vec3 u_fogcolor; in mediump float v_fogdepth; in mediump vec3 v_texcoord; out vec4 fragColor0; void main() { vec4 t = texture(tex, v_texcoord.xy); vec4 p = v_color0; vec4 v = p * t; float fogCoef = clamp(v_fogdepth, 0.0, 1.0); v = mix(vec4(u_fogcolor, v.a), v, fogCoef); fragColor0 = v; } vs: 00000000:00000914 HWX T Fog Tex #version 330 #define lowp #define mediump #define highp in vec3 position; in vec2 texcoord; uniform mat4 u_proj; uniform mat4 u_world; uniform mat4 u_view; uniform vec4 u_uvscaleoffset; uniform lowp vec4 u_matambientalpha; uniform highp vec2 u_fogcoef; uniform highp vec4 u_cullRangeMin; uniform highp vec4 u_cullRangeMax; out lowp vec4 v_color0; out mediump vec3 v_texcoord; out mediump float v_fogdepth; void main() { vec3 worldpos = (u_world * vec4(position.xyz, 1.0)).xyz; mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0); vec4 viewPos = u_view * vec4(worldpos, 1.0); vec4 outPos = u_proj * viewPos; v_color0 = u_matambientalpha; 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; if (u_cullRangeMin.w <= 0.0 || (projPos.z >= u_cullRangeMin.z && projPos.z <= u_cullRangeMax.z)) { if (projPos.x < u_cullRangeMin.x || projPos.y < u_cullRangeMin.y || projPos.z < u_cullRangeMin.z || projPos.x > u_cullRangeMax.x || projPos.y > u_cullRangeMax.y || projPos.z > u_cullRangeMax.z) { outPos.w = u_cullRangeMax.w; } } gl_Position = outPos; }
The 3rd Birthday® v1.6.3 2019-07-27 sceDmacMemcpy(dest=090cbb00, src=09202d00, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-07-22 sceDmacMemcpy(dest=0906ba00, src=09cf0040, size=1676480): overlapping read
The 3rd Birthday® v1.8.0 2019-07-20 sceDmacMemcpy(dest=0953f8c0, src=09cf0040, size=1069632): overlapping read
The 3rd Birthday® v1.8.0 2019-07-19 sceDmacMemcpy(dest=08400000, src=09cf0040, size=104544): overlapping read
The 3rd Birthday® v1.8.0 2019-07-19 sceDmacMemcpy(dest=09051a00, src=09314a40, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-07-18 sceDmacMemcpy(dest=08fedfc0, src=09cf0040, size=197120): overlapping read
The 3rd Birthday® v1.8.0 2020-02-02 Unknown GetPointer 00000000 PC 08000000 LR 08000000
The 3rd Birthday® v1.8.0 2019-07-12 sceDmacMemcpy(dest=08fe8f40, src=08feb780, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-07-11 sceDmacMemcpy(dest=09058280, src=0905fb40, size=30912): overlapping read
The 3rd Birthday® v1.8.0 2019-07-09 sceDmacMemcpy(dest=0954adc0, src=09cf0040, size=181632): overlapping read
The 3rd Birthday® v1.8.0 2019-07-06 WriteToHardware: Invalid address 00001649 near PC 0896de04 LR 0896de10
The 3rd Birthday® v1.7.4 2019-06-19 sceDmacMemcpy(dest=09078cc0, src=092c7900, size=1495744): overlapping read
The 3rd Birthday® v1.9.3 2019-12-15 sceDmacMemcpy(dest=092a7540, src=09cf0040, size=1747712): overlapping read
The 3rd Birthday® v1.8.0 2019-06-18 sceDmacMemcpy(dest=09095180, src=090979c0, size=6528): overlapping read
The 3rd Birthday® v1.8.0 2019-06-12 sceDmacMemcpy(dest=095385c0, src=09f50fc0, size=44096): overlapping read
The 3rd Birthday® v1.6.3 2019-06-05 sceDmacMemcpy(dest=09052340, src=091a0b80, size=48832): overlapping read
The 3rd Birthday® v1.8.0 2019-06-01 sceDmacMemcpy(dest=09351a40, src=09cf0040, size=1460224): overlapping read
The 3rd Birthday® v1.8.0 2019-05-26 sceDmacMemcpy(dest=08400000, src=09cf0040, size=192256): overlapping read
The 3rd Birthday® v1.9.4 2019-12-16 sceDmacMemcpy(dest=090459c0, src=092b8ac0, size=48832): overlapping read
The 3rd Birthday® v1.8.0 2019-05-20 sceDmacMemcpy(dest=095f2700, src=09cf0040, size=64512): overlapping read
The 3rd Birthday® v1.7.4 2019-05-14 Jump to invalid address: 071c9440
The 3rd Birthday® v1.7.4 2019-05-14 Jump to invalid address: 07139880
The 3rd Birthday® v1.7.4 2019-05-14 Jump to invalid address: 0713b2c0
The 3rd Birthday® v1.8.0 2019-05-07 sceDmacMemcpy(dest=090892c0, src=0908bb00, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-05-03 sceDmacMemcpy(dest=093aad00, src=09cf0040, size=1264256): overlapping read
The 3rd Birthday® v1.6.3-432-gfd6c3145d 2019-05-03 sceDmacMemcpy(dest=09050080, src=0905d8c0, size=6528): overlapping read
The 3rd Birthday® v1.8.0 2019-05-02 sceDmacMemcpy(dest=09407a00, src=09cf0040, size=1706368): overlapping read
The 3rd Birthday® v1.8.0 2019-04-28 sceDmacMemcpy(dest=08657400, src=09cf0040, size=787968): overlapping read
The 3rd Birthday® v1.8.0 2019-04-28 sceDmacMemcpy(dest=0905aac0, src=0909f080, size=48832): overlapping read
The 3rd Birthday® v1.6.3-432-gfd6c3145d 2019-04-25 sceDmacMemcpy(dest=09051880, src=0905d740, size=10304): overlapping read
The 3rd Birthday® v1.8.0 2019-04-21 sceDmacMemcpy(dest=09460240, src=09cf0040, size=1120256): overlapping read
The 3rd Birthday® v1.7.4 2019-04-21 sceDmacMemcpy(dest=091fbf80, src=09385180, size=263424): overlapping read
The 3rd Birthday® v1.8.0 2019-04-20 sceDmacMemcpy(dest=085a2e80, src=09cf0040, size=791040): overlapping read
The 3rd Birthday® v1.6.3 2019-04-18 sceDmacMemcpy(dest=0909acc0, src=093f1bc0, size=1201728): overlapping read
The 3rd Birthday® v1.9.4 2020-01-27 Unknown GetPointer 00000000 PC 08af9774 LR 08000030
The 3rd Birthday® v1.8.0 2019-08-07 sceDmacMemcpy(dest=090528c0, src=091d1500, size=6528): overlapping read
The 3rd Birthday® v1.7.4 2019-04-13 sceDmacMemcpy(dest=0867c880, src=09cf0040, size=1456832): overlapping read
The 3rd Birthday® v1.7.5 2019-04-10 sceDmacMemcpy(dest=09517f40, src=09cf0040, size=726976): overlapping read
The 3rd Birthday® v1.7.4 2019-04-10 sceDmacMemcpy(dest=0920c5c0, src=0944ba80, size=181632): overlapping read
The 3rd Birthday® v1.8.0 2019-07-20 sceDmacMemcpy(dest=093ad540, src=09cf0040, size=1676224): overlapping read
The 3rd Birthday® v1.7.5 2019-04-04 sceDmacMemcpy(dest=090892c0, src=0908ac40, size=6528): overlapping read
The 3rd Birthday® v1.7.5 2019-04-02 sceDmacMemcpy(dest=09060a40, src=0907f940, size=113024): overlapping read