RESPONDER UNA PREGUNTA

Si para responder la pregunta, crees necesario enviar un archivo adjunto, puedes hacerlo a traves del correo [email protected]

    Pregunta:  66162 - DUDA MANEJADOR INTERRUPCION RATON
Autor:  Raul
Estoy realizando un proyecto de programa auto-arrancable, con lo cual no uso interrupciones DOS.
He realizado el boot-loader que va cargando mis archivos en memoria y he creado mi propio driver de raton PS/2 con una INT 33h que instala el manejador de interrupcion de INT 74h.
El manejador va guardando los bytes recibidos en un buffer propio y cuando los tiene todos realiza un FAR CALL a la rutina de usuario que le proporcione a traves de la INT 33h.

La duda es:
-¿Cuando debo permitir las interrupciones (STI), antes de la llamada a la rutina de usuario, después, o que lo haga la propia rutina?

Si lo hago antes es posible que ocurra otra interrupción mientras la rutina de usuario todavía procesa los datos. Ademas de que la segunda llamada se completaría antes que la primera, pudiendo corromper los datos originales.

Si espero a que termine la rutina de usuario quizás pierda respuesta del ratón, ya que quizás un click haya comenzado un acceso a disco y hasta que este no termine no se actualizará la pantalla.

Y si fuera la propia rutina la que controla las interrupciones, ¿debería guardar en un buffer de programa los cambios del ratón y que el programa principal realizase las acciones correspondientes al llegar a un punto de su ejecución? Aquí también veo el problema de que se acumulasen mas eventos de los que es capaz de manejar el programa principal en cada pasada.

Aunque es un entorno gráfico orientado principalmente al ratón supongo que el problema será el mismo para la interrupción de teclado.

Gracias de antemano por leeros todo esto.


Nombre
Apellidos
Correo
Comentarios