diff --git a/snake/deplacement.c b/snake/deplacement.c
index ecb7919..e57da60 100644
--- a/snake/deplacement.c
+++ b/snake/deplacement.c
@@ -14,7 +14,7 @@
 
 
 
-unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsigned char* retard, short int* compteur)  {
+unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsigned char* retard, short int* compteur, unsigned long* acceleration, int numsprite)  {
 
 
   int** plateau = pointeur -> plateau;
@@ -84,7 +84,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 
 	  *sens = GAUCHE;
 
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -141,7 +141,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 
 	  *sens = DROITE;
 
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -191,7 +191,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 
 	  *sens = HAUT;
 
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -244,7 +244,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 
 	  *sens = BAS;
 
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -299,7 +299,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 	  RemplirRectangle(20*(tete[1]+1),20*(tete[0]+1),20,20);
 
       
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 	  
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -343,7 +343,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 	  RemplirRectangle(20*(tete[1]+1),20*(tete[0]+1),20,20);
 	
       
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 	  
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -388,7 +388,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 	  RemplirRectangle(20*(tete[1]+1),20*(tete[0]+1),20,20);
       
       
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 	  
 	  plateau[tete[0]][tete[1]] = 1;
 
@@ -432,7 +432,7 @@ unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsign
 	  RemplirRectangle(20*(tete[1]+1),20*(tete[0]+1),20,20);
 	
 	
-	  supp_queue(pointeur, retard, compteur);
+	  supp_queue(pointeur, retard, compteur, acceleration, numsprite);
 	  
 	  plateau[tete[0]][tete[1]] = 1;
 	
diff --git a/snake/deplacement.h b/snake/deplacement.h
index de6bdc2..8eb44a2 100644
--- a/snake/deplacement.h
+++ b/snake/deplacement.h
@@ -9,6 +9,6 @@
 #define GAUCHE 3
 #include "plateau_init.h"
 
-unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsigned char* retard, short int* compteur);
+unsigned char deplacement (struct adresse* pointeur, unsigned char* sens, unsigned char* retard, short int* compteur, unsigned long* acceleration, int numsprite);
 
 #endif /* DEPLACEMENT_H */
diff --git a/snake/fenetre.c b/snake/fenetre.c
index 5a75520..ed0d755 100755
--- a/snake/fenetre.c
+++ b/snake/fenetre.c
@@ -8,8 +8,7 @@
 #include "fenetre.h"
 
 
-
-void start (struct adresse* pointeur)  {
+int  start (struct adresse* pointeur)  {
 
   couleur green, grey, yellow, red, black, white;
 
@@ -27,6 +26,8 @@ void start (struct adresse* pointeur)  {
 
   int score=0;
 
+  int numsprite; 
+
 
 
   
@@ -87,6 +88,12 @@ void start (struct adresse* pointeur)  {
 
   /* remplissage du plateau de jeux avec les couleur adéquate */
 
+
+
+  numsprite = ChargerSprite("pomme.png");
+
+  
+
  
    for (i = 0; i < LIGNES; i++)  {
     for (j = 0; j < COLONNES; j++)  {
@@ -108,16 +115,18 @@ void start (struct adresse* pointeur)  {
 
       if ( plateau[i][j] == 2)  {
 
-	red = CouleurParComposante(255,0,0);
-	ChoisirCouleurDessin(red);
+	/*red = CouleurParComposante(255,0,0);*/
+	ChoisirCouleurDessin(green);
 	RemplirRectangle(20*(j+1),20*(i+1),20,20);
+
+	AfficherSprite(numsprite, 20*(j+1), 20*(i+1));
       }
 
     
     }
-    }
-
+   }
 
+   return numsprite;
 
 }
 
diff --git a/snake/fenetre.h b/snake/fenetre.h
index 8e3ae70..73464c1 100644
--- a/snake/fenetre.h
+++ b/snake/fenetre.h
@@ -8,6 +8,6 @@
 #include "plateau_init.h"
 
 
-void start (struct adresse* pointeur);
+int start (struct adresse* pointeur);
 
 #endif /* FENETRE_H */ 
diff --git a/snake/lancement b/snake/lancement
deleted file mode 100755
index 0c7f1ee..0000000
Binary files a/snake/lancement and /dev/null differ
diff --git a/snake/main.c b/snake/main.c
index 36e72bb..5c168a0 100644
--- a/snake/main.c
+++ b/snake/main.c
@@ -36,6 +36,10 @@ int main(void)  {
 
   unsigned long suivant;
 
+  unsigned long acceleration = 0L;
+
+  int numsprite; 
+
 
 
   sens = malloc(sizeof(unsigned char));
@@ -63,10 +67,11 @@ int main(void)  {
   jeu = ecran_lancement();
 
 
-  start(pointeur);
+  numsprite =  start(pointeur);
 
   compteur = score_init();
 
+
   
   while (jeu ==  1)  {
 
@@ -79,9 +84,11 @@ int main(void)  {
 
 
      
-      jeu = deplacement(pointeur, sens, retard, compteur);
+      jeu = deplacement(pointeur, sens, retard, compteur, &acceleration, numsprite);
 
-      suivant = Microsecondes() + CYCLE;
+      suivant = Microsecondes() + CYCLE - acceleration;
+
+      printf("{%ld}", acceleration); 
 
      
 
@@ -91,6 +98,8 @@ int main(void)  {
 
   }
 
+  LibererSprite(numsprite);
+
 
 
    /* déallocations des tableaux */
diff --git a/snake/pomme.png b/snake/pomme.png
new file mode 100644
index 0000000..df5b26c
Binary files /dev/null and b/snake/pomme.png differ
diff --git a/snake/supp_queue.c b/snake/supp_queue.c
index f55d49f..7d4b757 100644
--- a/snake/supp_queue.c
+++ b/snake/supp_queue.c
@@ -13,7 +13,7 @@
 
 
 
-void supp_queue( struct adresse* pointeur, unsigned char* retard, short int* compteur)  {
+void supp_queue( struct adresse* pointeur, unsigned char* retard, short int* compteur, unsigned long* acceleration, int numsprite)  {
 
 
   int** corps_serpent = pointeur -> corps_serpent;
@@ -36,6 +36,7 @@ void supp_queue( struct adresse* pointeur, unsigned char* retard, short int* com
 
   srand(time(NULL));
 
+
 	 
 
   /* teste si le serpent mange une pomme */
@@ -44,6 +45,8 @@ void supp_queue( struct adresse* pointeur, unsigned char* retard, short int* com
 
     *retard = *retard + 2;
 
+    *acceleration = *acceleration + 500L; 
+
     ajout_score(compteur);
 
     printf("[%hhu]\n", *retard);
@@ -63,9 +66,17 @@ void supp_queue( struct adresse* pointeur, unsigned char* retard, short int* com
 
       plateau[ligne_pomme][colonne_pomme] = 2;
 
-      red = CouleurParComposante(255,0,0);
+      /*red = CouleurParComposante(255,0,0);
       ChoisirCouleurDessin(red);
+      RemplirRectangle(20*(colonne_pomme + 1),20*(ligne_pomme + 1),20,20);*/
+
+      green = CouleurParComposante(50,205,50);
+      ChoisirCouleurDessin(green);
       RemplirRectangle(20*(colonne_pomme + 1),20*(ligne_pomme + 1),20,20);
+      
+
+      AfficherSprite(numsprite,20*(colonne_pomme + 1), 20*(ligne_pomme + 1));
+      
     
 
 
diff --git a/snake/supp_queue.h b/snake/supp_queue.h
index 346f029..7bb9dee 100644
--- a/snake/supp_queue.h
+++ b/snake/supp_queue.h
@@ -8,7 +8,7 @@
 #include "augmentation_serpent.h"
 #include "ajout_score.h"
 
-void supp_queue(struct adresse* pointeur, unsigned char* retard, short int* compteur) ;
+void supp_queue(struct adresse* pointeur, unsigned char* retard, short int* compteur, unsigned long* acceleration, int numsprite) ;
 
 #endif /* SUPP_QUEUE_H */