manejo de unidad de disco

caeser
05 de Febrero del 2004
Estimados amigos, necesito un gran favor, soy estudiante y en el curso de sistemas digitales me piden que al momento de entar en la unidad "A:" me pida una contraseña, y si no se acierta en 3 veces entonces me regrese al promt es decir "c:a:", es un programa TSR por eso no se como empezar, tengo algunos datos y consejos pero no me arriesgo a nada por temor de causar un daño a la maquina, gracias
atentamente,
Caeser

Mariano Cerdeiro
05 de Febrero del 2004
Buenas. Hay varias formas de hacerlo, sin embargo ninguna es segura, ya que:
1. Si estas bajo windows no funcionara con los programas de windows.
2. Si estas en modo DOS funcionara solo si los programas no acceden al disco a bajo nivel, osea por puertos, ya que si asi lo hacen no hay forma de evitarlo...

Supongo que estas en modo DOS, por ende lo que haria es colgarme de la interrupcion 13h, la del BIOS servicios

ah=02 y 03

o tambien podrias mediante las interrupciones de DOS, pero hay muchas formas de acceder a los discos.. =( Lo mejor me parece el bios...

Para colgarte de una interrupcion es muy sencillo, tan solo modificas la direccion en la tabla de interrupciones, la trece esta en 13h*4 osea 0000:004C.

Es recomendable deshabilitar las interrupciones para modificar.. =) Antes tenes que guardar la direccion de la siguiente interrupcion.

Por ultimo retornar al DOS, pero mediante return and stay resident

http://www.ctyme.com/intr/rb-2723.htm

interrupcion 21 servicio 31h

El programa para evitar que usen la unidad a estaria residente y colgado de la int 13, lo que habria que hacer es comparar el valor de ah cuando llega la int 13 y ver si es leer o escribir y si la unidad es la 1, osea la A, en caso de ser la A pedir una contraseña...

Es una idea general, si tenes mas dudas particulares, mandame un mail... va o por aca como quieras..

Saludos y suerte.
Mariano.