SoloCodigo

Programación General => ASM (Ensamblador) => Mensaje iniciado por: Bicholey en Martes 25 de Abril de 2006, 12:52

Título: Informacion De Un Disco
Publicado por: Bicholey en Martes 25 de Abril de 2006, 12:52
:angry:  :angry:  :angry:  :angry:  :angry:  :angry:  :angry:
BUENO TENGO UNA DUDA Y QUERIA SABER SI ALGUIEN ME PUEDE AYUDAR
PUES BUENO SABEMOS QUE EL HD ES UN DISPOSITIVO TIPO BLOCK ENTONCES QUIERO OBTNER LOS PARAMETROS DE DICHO DISPOSITIVO BUENO EN FIN USO EL SIGUIENTE CODIGO
_AH=0x44
_AL=0x0D
_BL=UNIDAD DE DISCO YA SEA HD O FLOPPY
_CX=0x0860
asm int 0x21
y bueno el resultado lo retorna en el registro DX pero queria saber sia lguien tiene la teoria de como retorna este resultado o mejor dicho como interpreto el valor devuelto en DX por su ayuda gracias.
_____________________________________
 :angry:  :angry:  :angry:  :angry:  :angry:
Título: Re: Informacion De Un Disco
Publicado por: Eternal Idol en Martes 25 de Abril de 2006, 13:06
http://www.ctyme.com/intr/rb-2896.htm (http://www.ctyme.com/intr/rb-2896.htm)
Título: Re: Informacion De Un Disco
Publicado por: Bicholey en Martes 25 de Abril de 2006, 13:48
:angry:  :angry:  :angry:
EXCELENTE INFORMACION GRACIAS
 :angry:  :angry:  :angry:
Título: Re: Informacion De Un Disco
Publicado por: Eternal Idol en Martes 25 de Abril de 2006, 13:49
De nadas. ¿¿Para que mostrar caras de enojo entonces??
Título: Re: Informacion De Un Disco
Publicado por: Bicholey en Miércoles 26 de Abril de 2006, 07:32
:angry:  :angry:  :angry:  :angry:
ES SOLO QUE SOY MUY MAL ENCARADO
 :angry:  :angry:  :angry:  :angry:
Título: Re: Informacion De Un Disco
Publicado por: Eternal Idol en Miércoles 26 de Abril de 2006, 08:41
Bueno, ya veremos cuando se nos da la gana responderte con palabras y no solo con enlaces entonces.
Título: Re: Informacion De Un Disco
Publicado por: Bicholey en Jueves 27 de Abril de 2006, 16:32
Cita de: "Eternal Idol"
Bueno, ya veremos cuando se nos da la gana responderte con palabras y no solo con enlaces entonces.
 :angry:  :angry:  :angry:
no se a que terefieres con esto podrias explicarme
siento que es una expresion de enojo.
 :angry:  :angry:  :angry:
Título: Re: Informacion De Un Disco
Publicado por: Eternal Idol en Jueves 27 de Abril de 2006, 17:13
Cita de: "Radoslav"
:angry:  :angry:  :angry:
no se a que terefieres con esto podrias explicarme
siento que es una expresion de enojo.
 :angry:  :angry:  :angry:
Exacto, es una cara enojada. Dudo que alguien quiera leer preguntas hechas con cara de culo y mucho menos responderlas.
Título: Re: Informacion De Un Disco
Publicado por: su - en Jueves 27 de Abril de 2006, 23:09
:P  Eternal, el no tiene cara de culo, solo esta estreñido.
Bueno, mi pregunta es:
Es pocible determinar que formato tiene la particion del hd, creo que tengo que retomar los tutorial.
Perdon por la pregunta y gracias.
 :) , a, no era  :angry:
 :P
Título: Re: Informacion De Un Disco
Publicado por: Eternal Idol en Jueves 27 de Abril de 2006, 23:27
Cita de: "su -"
Es pocible determinar que formato tiene la particion del hd, creo que tengo que retomar los tutorial.
¿Para que Sistema Operativo? Si es para cualquiera tenes que leer el disco directamente, seria abrir la unidad y leer ...

En Windows podes usar GetVolumeInformation.
Título: Re: Informacion De Un Disco
Publicado por: Bicholey en Lunes 1 de Mayo de 2006, 14:38
:beer::beer::beer:
Bueno varias cuestiones una GetVolumeInformation es una funcion de C++ si mas no recuerdo , pero no se como usarla , punto dos gracias por la informacion de las interrupciones ya pude descifrar la informacion obtenida pero solo funciona para sistemas fat 32 fat12 fat 16 pero no para ntfs sabes alguna forma de obtener la informacion de los discos con ntfs? bueno espero tu respuesta de antemano gracias ahh y por cierto si sabes como usar GetVolumeInformation dime como no por favor.
Una cerveza a tu salud
:beer::beer::beer:
Título: Re: Informacion De Un Disco
Publicado por: Eternal Idol en Lunes 1 de Mayo de 2006, 15:07
No, GetVolumeInformation es una funcion de Windows exportada por Kernel32.dll, por otro lado es logico que esa interrupcion no te sirva para reconocer particiones NTFS ya que en la epoca en que fue diseñada NTFS no existia ni de lejos.

En el parametro lpFileSystemNameBuffer te devuelve el tipo de File System:
http://msdn.microsoft.com/library/default....information.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/getvolumeinformation.asp)
Título: Re: Informacion De Un Disco
Publicado por: Bicholey en Martes 23 de Mayo de 2006, 11:58
:comp:  :comp:  :comp:
Bueno hace un rato ya resolvi mi problema de obtener la informacion de un disco, los links que me pasaste son sensacionales pero al seguir leyendo toda esta informacion me encontre con algo interesante y es como formatear discos
y tengo un problemilla espero me puedas ayudar , pues bien como dice la informacion asigno ax=440dh bx=drive o disco a formatear en este caso 1 para floppy cx=0842h dispositivo y codigo formatear pista    y
" lea dx,block" pues bien es aqui donde surge mi problema ya que me dice que dx apunta a la direccion del bloque DS:DX esto es comprensible pero el bloque tiene un formato asi :
specfun   db     0       ;funcion especial codigo 0
diskhd     dw    ?        ; cabezas del disco
cylindr    dw     ?        ;  cilindro
tracks      dw    ?        ; numero de pistas
 esta informacion la obtengo con el programa ya mencionado de la informacion de un disco , ahora mi pregunta es:

 ¿ solo le paso esos valores y me formatea todo el disco ó bien tengo que hacerlo en un ciclo para que me formatee todas las pistas, todos los cilindros y las dos cabezas?

, cabe mencionar que ya lo intente de las dos formas con un disco de 3 1/2 lleno de archivos, ejecuto el programa y hace girar el floppy pero no borra ningun archivo todo parece intacto solo algunos archivos se ven corrompidos a que crees que se deba ?
Por tu ayuda gracias
Título: Re: Informacion De Un Disco
Publicado por: Bicholey en Miércoles 24 de Mayo de 2006, 16:40
:comp:  :comp:  :comp:
Ya no te quito tu tiempo ya resolvi el problema Gracias.