PDA

Voir la version complète : Aide pour des fonctions


njo80
15/03/2006, 12h11
Pourriez m'aider, j'aimerais savoir
ce que font ces fonctions je n'arrive pas trop a comprendre
Merci



//*****************************************
void Flip(void)
{
if(REG_DISPCNT & BACKBUFFER)
{
REG_DISPCNT &= ~BACKBUFFER;
videoBuffer = BackBuffer;
}
else
{
REG_DISPCNT |= BACKBUFFER;
videoBuffer = FrontBuffer;
}
}

//********************************************
void FadeOut( u32 aWait )
{
s8 Phase;
REG_BLDMOD = 0 | 1 | 2 | 4 | 8 | 128 | 64 | 32;
for( Phase = 0; Phase < 16; Phase++ )
{
REG_COLEY = Phase;
Sleep( aWait );
}
}




//**************************************************
void FadeIn( u32 aWait )
{
s8 Phase;
REG_BLDMOD = 0 | 1 | 2 | 4 | 8 | 128 | 64 | 32;
for( Phase = 0; Phase < 16; Phase++ )
{
REG_COLEY = 16-Phase;
Sleep ( aWait );
}
}


//***********************

void save(void)
{
int x,y;
int b,c;
int a;
int temp;
int place=0;

char namesent[10];
char names[10][10];
int nombre[5][10];
int nombreint[5];

for(y=0;y<5;y++)
nombreint[y]=0;

//creer une liste temporaire pour la memoire
for (y=0; y<10;y++)
for(x=0; x<10;x++)
names[y][x]=pSavememoire[y*10+x];

for(y=5; y<10; y++)
for(x=0; x<10; x++)
{
switch(pSavememoire[y*10+x])
{
case '0' :nombre[y-5][x]=0; break;
case '1' :nombre[y-5][x]=1; break;
case '2' :nombre[y-5][x]=2; break;
case '3' :nombre[y-5][x]=3; break;
case '4' :nombre[y-5][x]=4; break;
case '5' :nombre[y-5][x]=5; break;
case '6' :nombre[y-5][x]=6; break;
case '7' :nombre[y-5][x]=7; break;
case '8' :nombre[y-5][x]=8; break;
case '9' :nombre[y-5][x]=9; break;
}

}


//creer une liste de nombre
for(y=0;y<5;y++)
{
b=0;

while(names[y+5][b]!='_')
b++;
c=b;

for(x=0; x<b; x++)
{
c--;
nombreint[y]=nombreint[y] + (nombre[y][x] * pow(10,c));
}
nombreint[y]=nombreint[y] + nombre[y][b];
}

c=5;
for(x=4; x>=0; x--)
if(score>nombreint[x])
c=x;


if(c!=5)
{
for(y=4; y>=c; y--)
for(x=0; x<10; x++)
{
if(y!=0)
{
names[y+5][x]=names[y+4][x];
names[y][x]=names[y-1][x];
}
}

nameinput(namesent);

for(a=0;a<10; a++)
{
names[c][a]=' ';
names[c+5][a]=' ';
}

b=0;
while(namesent[b]!='_')
b++;

for(a=0; a<=b; a++)
names[c][a]=namesent[a];

b=0;
temp=score;

while (temp!=0)
{
temp=temp/10;
b++;
}
b--;

for(a=b; a>=0; a--)
{
if(a==b)
{
switch(score/pow(10,a))
{
case 1: names[c+5][place]='1';break;
case 2: names[c+5][place]='2';break;
case 3: names[c+5][place]='3';break;
case 4: names[c+5][place]='4';break;
case 5: names[c+5][place]='5';break;
case 6: names[c+5][place]='6';break;
case 7: names[c+5][place]='7';break;
case 8: names[c+5][place]='8';break;
case 9: names[c+5][place]='9';break;
case 0: names[c+5][place]='0';break;
}
place++;
}

else if(a==0)
{
switch(score%10)
{
case 1: names[c+5][place]='1';break;
case 2: names[c+5][place]='2';break;
case 3: names[c+5][place]='3';break;
case 4: names[c+5][place]='4';break;
case 5: names[c+5][place]='5';break;
case 6: names[c+5][place]='6';break;
case 7: names[c+5][place]='7';break;
case 8: names[c+5][place]='8';break;
case 9: names[c+5][place]='9';break;
case 0: names[c+5][place]='0';break;
}
place++;
}

else
{
switch(score/pow(10,a)%10)
{
case 1: names[c+5][place]='1';break;
case 2: names[c+5][place]='2';break;
case 3: names[c+5][place]='3';break;
case 4: names[c+5][place]='4';break;
case 5: names[c+5][place]='5';break;
case 6: names[c+5][place]='6';break;
case 7: names[c+5][place]='7';break;
case 8: names[c+5][place]='8';break;
case 9: names[c+5][place]='9';break;
case 0: names[c+5][place]='0';break;
}
place++;
}
}
names[c+5][b+1]='_';

}

Nesgba
15/03/2006, 20h27
beau projet j'espere que tu le menera a son terme :thumb_yel :lock:

dienben
22/03/2006, 17h07
Bonjour,

Cela t'aidera peut être:
http://www.progx.org/index.php?section=articles&article=GBA/article6

A +,

Dienben

Dr.Vince
22/03/2006, 17h24
ouais franchement bravo !!

j'adore les graphismes !! :whst: