programmation en c sur la nintendo ds

programmation en c sur la nintendo ds - C - Programmation

Marsh Posté le 02-06-2008 à 15:31:10    

bonjour, tout dabord je precise que je suis debutante en programmation. dans le cadre d'un mini projet g realisé un programme qui permet la lecture des ebooks sur la nintendo ds. néanmoins il a actuellement un petit probleme dans le programme car il faut rentrer a la main dans deux variables differentes une liste d'image, ainsi que le nombre d'images. En prenant comme hypothese, que dans un repertoire, on trouve l'ensemble des images et le squelette du programme ( c'est a dire sans ses deux variables), il doit etre possible de creer un programme en C qui permet de prendre le squelette et de rajouter les variables avec les noms correctes.  
 
aidez moi svp c urgent, merci.
voila mon main.c :
 
#include "PROJET_ZZ1.h"
 
#include <PA9.h>       // Include for PA_Lib
#include "gfx/all_gfx.c"  
#include "gfx/all_gfx.h"
 
#define NB_PAGE 3
 
int main(int argc, char ** argv)
{
 
 
 PAGfx_struct *fond[NB_PAGE] = {&big01, &big02, &big03};
 PAGfx_struct *icone[NB_PAGE] = {&small01, &small02, &small03};
 
 // Variables pour le scrolling
 int scrolling_x = 0;  
 int scrolling_y = 0;
 int stylus_x_initial = 0;
 int stylus_y_initial = 0;
 
 int image_width = 360;
 int image_height = 550;
 
 // Variables pour le changement de page
 int numero_de_page = 0;
 
 
 // Initialisation
 PA_Init();    
 PA_InitVBL();  
 
 // Variables pour le carré rouge
 PA_Init8bitBg(1,3); // Pour pouvoir dessiner sur l'écran du haut... Possible seulement sur la layer 3.
 PA_SetBgPrioSeq(1,3,0,1,2); // Change la priorité des layers pour que la layer 3 soit visible.
 
 // Chargement d'une image
 PA_EasyBgLoadPtr(1,2,icone[numero_de_page]);
 PA_EasyBgLoadPtr(0,2,fond[numero_de_page]);
 
 // ...et on centre l'image du bas.  
 // On suppose que l'image a un format usuel, soit ~126*192 une fois rétrécie.
 PA_EasyBgScrollX(1,2,-65);
 
 
while (1)
{
 
 
 // Déplacement avec le stylet
 if (Stylus.Newpress)
 {
  stylus_x_initial = Stylus.X;
  stylus_y_initial = Stylus.Y;
 }  
 if (Stylus.Held)
 {
    scrolling_x += (stylus_x_initial - Stylus.X);
    scrolling_y += (stylus_y_initial - Stylus.Y);
    stylus_x_initial = Stylus.X;
  stylus_y_initial = Stylus.Y;
 }    
 
 // Déplacement avec les flèches
 scrolling_x += (Pad.Held.Right - Pad.Held.Left)*4; // 4 pixels à chaque fois
 scrolling_y += (Pad.Held.Down - Pad.Held.Up)*4;
 
 // On vérifie qu'on ne sort pas de l'image...
 if (scrolling_x < 0) scrolling_x = 0;
 if (scrolling_x > image_width - 255) scrolling_x = image_width - 255;
 if (scrolling_y < 0) scrolling_y = 0;
 if (scrolling_y > image_height - 191) scrolling_y = image_height - 191;
 
 // Application du scrolling...
 PA_EasyBgScrollXY(0, 2, scrolling_x, scrolling_y);  
 gestion_carre(scrolling_x, scrolling_y,image_width,image_height);
 
 // Changement de page
 if (Pad.Newpress.R)
 {
    if (numero_de_page < NB_PAGE-1)
    {
  numero_de_page++;
    PA_EasyBgLoadPtr(1,2,icone[numero_de_page]);
  PA_EasyBgLoadPtr(0,2,fond[numero_de_page]);
  PA_EasyBgScrollX(1,2,-65);
  }  
 }  
 if (Pad.Newpress.L)
 {
    if (numero_de_page > 0)
    {
  numero_de_page--;
    PA_EasyBgLoadPtr(1,2,icone[numero_de_page]);
  PA_EasyBgLoadPtr(0,2,fond[numero_de_page]);
  PA_EasyBgScrollX(1,2,-65);
    }
 }  
 
 PA_WaitForVBL();
 
}
 
 return 0;
} // End of main()


Message édité par Elmoricq le 03-06-2008 à 07:15:28
Reply

Marsh Posté le 02-06-2008 à 15:31:10   

Reply

Marsh Posté le 02-06-2008 à 16:27:18    

ZZ1 ... t'es à l'ISIMA ?
 

Reply

Marsh Posté le 03-06-2008 à 02:47:55    

oui

Reply

Marsh Posté le 03-06-2008 à 02:49:35    

toi oci je suppose, est ce q tu pe maider? je doi voir le prof responsable du projet jeudi matin, et sa sannonce mal pour moi

Reply

Marsh Posté le 03-06-2008 à 07:17:35    

Si je comprends bien, tout ce que tu veux c'est ouvrir un répertoire donné et en parcourir le contenu ?
 
Si oui, regarde simplement du côté de opendir(), readdir() et closedir(). Fonctions définies dans dirent.h.

Reply

Marsh Posté le 03-06-2008 à 09:10:45    

queenouchka a écrit :

toi oci je suppose, est ce q tu pe maider? je doi voir le prof responsable du projet jeudi matin, et sa sannonce mal pour moi


J'y étais c'est fini pour moi ^^ C'est qui ton resposnable ? (en MP bien sur ;) )
 
Elmo : pas sur que dirent.h soit dispo dans la SDk de la DS.
queenouchka : en gros tu as besoin de régénérer un .c pour chaque truc ou bien tu dois lire les infos depuis un .c ?

Reply

Marsh Posté le 04-06-2008 à 03:15:00    

je pense que c plutot lire les infos depuis un .c, je sai q sa doi etr un truc bete comm tout, mai bon, la prog c pa mon fort, je tatonne un peu.

Reply

Marsh Posté le 04-06-2008 à 03:17:51    

oui voila elmo, ouvrir parcourir et replacer ds le squelette les images.

Reply

Marsh Posté le 04-06-2008 à 04:10:45    

en fait il faudrait ouvrir le repertoire contenant les images, le parcourir et rajouter la liste d'image dans une variable et le nombre d'images que contient le repertoire dans une autre variable à leur place dans le squelette du programme realisé, tout sa pour eviter de le faire a la main. merci de votre aide.

Reply

Marsh Posté le 09-06-2008 à 03:12:41    

est ce que quelqun pourrait m'aider a commencer le code, svp

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed