come mai dopo 20 secondi precisi che avvio l'applicazione, la PSP crasha?

codice:
#include <oslib/oslib.h>
#include <string.h>
#include <callback.h>


PSP_MODULE_INFO("Khrono", 0, 1, 1);
PSP_MAIN_THREAD_ATTR(THREAD_ATTR_USER | THREAD_ATTR_VFPU);


OSL_IMAGE *b[8], *pb[8], *p[8], *pool;

void Keys();
void Text();

int i;

int main(int argc, char* argv[])
{
	//Initialization
	oslInit(0);
	oslInitGfx(OSL_PF_8888, 1);
	oslInitConsole();

	//Load the files
	pool = oslLoadImageFile("data/pool.png", OSL_IN_RAM, OSL_PF_5551);	
	
char s1[13]; char s2[13];
strcpy(s1, "data/pb?.png"); strcpy(s2, "data/p?.png"); 
for(i=1;i<9;i++)
{
s1[7]=(char)(i+'0'); s2[6]=(char)(i+'0');
		pb[i] = oslLoadImageFile(s1, OSL_IN_RAM, OSL_PF_5551);
		p[i] = oslLoadImageFile(s2, OSL_IN_RAM, OSL_PF_5551);
		b[i] = oslLoadImageFile("data/block.png", OSL_IN_RAM, OSL_PF_5551);
}

	if (!pool)
	oslFatalError("Please, copy all the folder to the PSP.");
	
	//Configure the joypad
	oslSetKeyAutorepeatInit(40);
	oslSetKeyAutorepeatInterval(10);

	//Initialize variables
	pool->x = 0; pool->y = 0;
	for(i=1;i<9;i++){
    b[i]->x = 7; b[i]->y = 28*i-11;	pb[i]->x = 20; pb[i]->y = 28*i-10; pb[i]->angle = 90; p[i]->x = 45; p[i]->y = 28*i-10;
	}
	
	
	while (!osl_quit)
	{
		oslStartDrawing();
		oslDrawImage(pool);
		for(i=1;i<9;i++)
		{
        oslDrawImage(b[i]);
        oslDrawImage(pb[i]);
		oslDrawImage(p[i]);
		}
		Text();	
		Keys();
		oslEndDrawing();
		oslSyncFrame();
	}

	oslEndGfx();
	oslQuit();
	return 0;
}


void Keys()
{
	oslReadKeys();
}

void Text()
{
	//set the color of the text
	oslSetTextColor(RGBA(255,255,255,255));
	oslSetBkColor(RGBA(0,0,0,0));

	oslPrintf_xy(1,244,"KHRONO-SWIM v0.1 - CODED BY BALY23");
}