/* ***** έλεγχος για το ενεργό χώρισμα ***** */
if(*sec==se && *no_par==0) /*εάν αρχικό χώρισμα*/
{
*sec=se=0;
for(active_offset=446;active_offset<=494;active_offset+=16)
{
active_par=buffer[active_offset];
if(active_par==0x80) /*έλεγχος για το ενεργό χώρισμα */
break;
else
active_pos++; /* θέση του ενεργού χωρίσματος*/
}
/*για το εκτεταμένο χώρισμα*/
for(active_offset=450;active_offset<=511;active_offset+=16)
{
active_par=buffer[active_offset];
if(active_par==0x05 | active_par==0x0F)
/*check for extended partition */
break;
else
extended_pos++; /*θέση του εκτεταμένου χωρίσματος */
}
if(active_pos==4)
active_pos=1;
if(extended_pos==4)
extended_pos=1;
partloc1=0x1C0+extended_pos*16;
}
else
{
active_pos=0;
extended_pos=1;
partloc1=0x1D0;
if(se_p!=0)
{
*sec=se=se_p; /*έναρξη του εκτεταμένου χωρίσματος */
}
}
/*Σχετικοί τομείς στο χώρισμα */
relative_sec= *(unsigned long *)(buffer+454+active_pos*16);
/*Αριθμός τομέων στο χώρισμα */
no_sectors=*(long *)(buffer+458+active_pos*16);
|