#141183 - spinal_cord - Sun Sep 23, 2007 12:46 am
I'm currently trying to get my stupid menu to work, but whenever I re-read a directory I get gfx problems so I assume I have a leak somewhere. Can someone tell me if there are any problems with the following code,
I'm likely to spend forever on this, so I need all the help I can get.
_________________
I'm not a boring person, it's just that boring things keep happening to me.
Homepage
Code: |
void get_file_list(void) { // loading animation // sprite for loading animation PA_LoadSprite16cPal(1,2,(void*)loading_Pal); // Palette name PA_CreateSprite(1, 10,(void*)loading_Sprite,OBJ_SIZE_32X32,0,2,96,120); int temp; number_of_files=0; // so we have no files struct stat st; DIR_ITER* dir; dir = diropen (folder); if (dir == NULL) { // can't open } else { while (dirnext(dir, icon[number_of_files].filename, &st) == 0) { icon[number_of_files].is_folder = (st.st_mode & S_IFDIR) ? 1 : 0; if(st.st_mode & S_IFDIR) { // is a folder // later load the folder icon and palette }else{ if(isNDS(icon[number_of_files].filename)) { if(number_of_files<max_files) { icon[number_of_files].is_folder=0; // is not folder readheader(icon[number_of_files].filename,number_of_files); number_of_files++;//next line // animate the loading anim PA_SetSpriteAnim(1, 10, lframe); lframe++; PA_WaitForVBL(); if(lframe==12)lframe=0; } } } } dirclose(dir); PA_WaitForVBL(); } // delete the animation PA_DeleteSprite(1,10); number_of_files--; // remove the last unused entry for(temp=0; temp<=number_of_files; temp++) { icon[temp].x=0; icon[temp].y=temp*32; icon[temp].zoom=256; icon[temp].sprite=-1; // Keep track of sprite used for each icon. } } |
I'm likely to spend forever on this, so I need all the help I can get.
_________________
I'm not a boring person, it's just that boring things keep happening to me.
Homepage