+
+ /*actualizo el archivo de id`s*/
+ if ( (f_id = fopen(name_f_id,"a+"))==NULL ) return -1; /*ERROR*/
+ fwrite(&ID_aux,sizeof(ID_aux),1,f_id);
+ fclose(f_id);
+
+ /*actualizo el archivo de espacios libres*/
+ /*tengo que buscar la cantidad de bloques que existen*/
+ /*me paro al principio salteando el encabezado del archivo*/
+ fseek(file,sizeof(int)+sizeof(char),SEEK_CUR);
+ while ( !feof(file) ){
+ fread(bloque,emu->tam_bloque,1,file);
+ cant++; /*ya grabe el nuevo bloque !!!*/
+ }
+ fclose(file);
+ /*cargo el registro*/
+ reg.block = cant; /*no incremento cant, porque grabe el nuevo bloque antes y no lo conte!!*/
+ reg.free_space = fs - tam;
+ /*lo guardo en el archivo al final "a+"*/
+ if ( (f_block_free = fopen(name_f_free,"a+"))==NULL ) return -1; /*ERROR*/
+ fwrite(®,sizeof(reg),1,f_block_free);
+ fclose(f_block_free);
+
+ /*actualizo el archivo de bloques y registros*/
+ if ( (f_block_reg = fopen(name_f_block_reg,"a+"))==NULL ) return -1; /*ERROR*/
+ reg_b.block = reg.block;
+ reg_b.id_reg = ID_aux;
+ fwrite(®_b,sizeof(reg_b),1,f_block_reg);
+ fclose(f_block_reg);
+