programmation en c sur la nintendo ds - C - Programmation
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
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.
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 ?
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.
Marsh Posté le 04-06-2008 à 03:17:51
oui voila elmo, ouvrir parcourir et replacer ds le squelette les images.
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.
Marsh Posté le 09-06-2008 à 03:12:41
est ce que quelqun pourrait m'aider a commencer le code, svp
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