Subversion Repositories Kolibri OS

Rev

Rev 4015 | Rev 7024 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1665 Nasarus 1
 
2
{
3
4
 
5
unsigned	*n;
6
unsigned	num_of_file;
7
unsigned	*t;
8
unsigned	type_of_file;
9
int		i, result;
2617 Albom 10
1665 Nasarus 11
 
2617 Albom 12
 
1665 Nasarus 13
k70.p04 = 0;
14
//k70.p08 = 0;
6857 siemargl 15
k70.p12 = 2;  // just for test exist & read number of entries
16
k70.p16 =  (unsigned) malloc(32+k70.p12*560);
3245 Albom 17
k70.p20 = 0;
1665 Nasarus 18
19
 
20
// Если ls запускается без параметров, просматриваем текущий каталог
4015 Albom 21
if ( !strlen(dir) )
1665 Nasarus 22
	k70.p21 = cur_dir;
23
else
24
	k70.p21 = dir;
25
2617 Albom 26
 
27
if ( !((result==0) || (result==6)) ) // проверяем существование каталога
4015 Albom 28
	{
1665 Nasarus 29
	free( (void*) k70.p16);
3245 Albom 30
	return FALSE;
1665 Nasarus 31
	}
32
33
 
3245 Albom 34
num_of_file = *n; // число файлов в каталоге
4015 Albom 35
1665 Nasarus 36
 
6857 siemargl 37
k70.p12 = num_of_file;
38
free( (void*) k70.p16);
39
k70.p16 =  (unsigned) malloc(32+k70.p12*560);
40
if ( !k70.p16 )
41
	return FALSE;
42
43
 
44
if ( !((result==0) || (result==6)) )
45
	{
46
	free( (void*) k70.p16);
47
	return FALSE;
48
	}
49
50
 
1665 Nasarus 51
	{
52
	printf ("  %s", k70.p16+32+40+(264+40)*i);
53
	t =  (unsigned*) (k70.p16+32+(264+40)*i);
3245 Albom 54
	type_of_file = *t;
1665 Nasarus 55
	if ( (0x10 == (type_of_file&0x10)) || (8 == (type_of_file&8)) )
56
		printf ("/");
57
	printf ("\n\r");
58
	}
59
60
 
3245 Albom 61
return TRUE;
1665 Nasarus 62
}
63