Hola !
Aqui esta una respuesta tomada del FAQ del profesor
Timo Salmi (UNIVERSITY OF VAASA, FINLAND).
Algunas preguntas y respuestas en español, del FAQ mencionado,
se encuentran en "www.pascalmania.cjb.net".
Respuesta tomada del FAQ de Timo Salmi:
-----------------------------------------------------------
Existen dos métodos para limpiar el búfer de teclado en Turbo Pascal, uno de ellos es:
Uses Crt;
Begin
While KeyPressed Do ReadKey;
End.
El problema es que el código requiere la unidad CRT. El otro método es independiente de cualquier unidad pero accede directamente a memoria igualando la "cabeza" del búfer de teclado con la "cola". Este es el otro método (Si no tienes Turbo Pascal 7.0 tal vez deberías cambiar "Seg0040" por "$40"):
Procedure VaciarBufer;
Begin
(*
40:1A word Offset from 40:00 to keyboard buffer head
40:1C word Offset from 40:00 to keyboard buffer tail
*)
MemW[Seg0040:$1A]:= MemW[Seg0040:$1C];
End;
-------------------------------------------------------------
Att:Ge-ergon