Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1.  
  2. int cmd_ls(char dir[])
  3. {
  4.  
  5. kol_struct70    k70;
  6. unsigned        *n;
  7. unsigned        num_of_file;
  8. unsigned        *t;
  9. unsigned        type_of_file;
  10. int             i;
  11.  
  12. k70.p00 = 1;
  13. k70.p04 = 0;
  14. k70.p08 = 0;
  15. k70.p12 = 2*1024*1024; // 2 MB
  16. k70.p16 = malloc(2*1024*1024);
  17. k70.p20 = 0;
  18. k70.p21 = dir;
  19.  
  20. if ( !kol_file_70(&k70) ) // ïðîâåðÿåì ñóùåñòâîâàíèå êàòàëîãà
  21.         {
  22.         free(k70.p16);
  23.         return FALSE;
  24.         }
  25.  
  26. n = k70.p16+8;
  27. num_of_file = *n; // ÷èñëî ôàéëîâ â êàòàëîãå
  28.  
  29. for (i = 0; i < num_of_file; i++)
  30.         {
  31.         printf ("  %s", k70.p16+32+40+(264+40)*i);
  32.         t = k70.p16+32+(264+40)*i;
  33.         type_of_file = *t;
  34.         if ( (0x10 == (type_of_file&0x10)) || (8 == (type_of_file&8)) )
  35.                 printf ("/");
  36.         printf ("\n\r");
  37.         }
  38.  
  39. free(k70.p16);
  40. return TRUE;
  41. }
  42.