RE:AUN TENGO UN PROBLEMA
Publicado por
Agustin (1 intervención) el 29/11/2004 17:01:22
Hola, yo tengo que hacer lo mismo pero en linux, (en donde no puedo usar las interrupciones, asi que ese codigo no me sirve mucho).
Lo que hace el codigo ese es un formateo a bajo nivel, o sea marca los sectores en el disco (cilindros, cabezas,sectores ), despues de hacer esto es que se hace el formateo a alto nivel (que es lo que hacemos generalmente cuando hacermos format en un disco rigido por que ya viene formateado a bajo nivel de fabrica).
Por el contrario cuando formateamos un disquette, primero hace el formateo a bajo nivel y despues el de alto nivel (que es cuando le da formato de FAT12)
Se llama FAT12 porque cada entrada en la fat es de 12 bits.
el formato de la FAT12 es el siguiente
(Recordemos que en un disquette el tamaño del sector es de 512 bytes)
1º sector = MBR informacion del disco, cabezas, sectores , copias de la fat etc
siguientes 9 sectores = 1-copia de la fat
siguientes 9 sectores = 2-copia de la fat
siguientes 14 sectores = entradas del directorio raiz
siguientes sectores = Area de datos.
Si solamente tenes que hacer un formateo a alto nivel, lo unico que tendrias que preocuparte de escribir es en MBR o (preservar el viejo, tendrias que verlo) meteles 0 en las copias de la fat y de las entradas del directorio raiz (en realidad no es tan asi porque dos y windows reservan los 2 primeros clusters del area de datos asi que las primeras 2 entradas en la fat tiene que tener el valor de "reservado" en vez de 0), supongo que tambien te tendrias que fijar si hay algun sector marcado como defectuoso en la fat y ver si mantenerlo o no,(si no me equivoco el DOS te lo mantiene porque sino podrias querer escribir ahi y si esta marcado como defectuoso por algo es)
Si estas haciendo un formateo completo ademas de hacer todo esto tendrias que poner 0 en toda el area de datos tambien.
Esto es solo una idea, busca material en la red que hay a patadas, yo ahora no tengo las direcciones de donde saque todo, pero si me mandas un mail te mando las cosas.
Saludos
Agus