RESPUESTA A LA PREGUNTA 893 Ésto lo puedes lograr haciendo una función con ensamblador en línea como la siguiente, para determinar si se ha pulsado una tecla FUNCTION LASTKEY; WORD; ASSEMBLER; ASM MOV AH, 11h ; Leer estado del buffer del teclado INT 16h ; Invoca la interrupción del teclado JZ @1 ; Si no hay teclas pulsadas, devuelve 0 JMP @2 ; Devuelve código de la tecla pulsada @1: XOR AX, AX ; Devuelve 0 si no hay tecla pulsada @2: END; y una función para obtener la tecla pulsada FUNCTION GETKEY; WORD; ASSEMBLER; ASM MOV AH, 10h ; Leer estado del buffer del teclado INT 16h ; Invoca la interrupción del teclado JZ @1 ; Si no hay teclas pulsadas, devuelve 0 JMP @2 ; Devuelve código de la tecla pulsada @1: XOR AX, AX ; Devuelve 0 si no hay tecla pulsada @2: END; Posteriormente las puedes usar en tu programa de la siguiente forma { Hay una tecla pulsada? } IF LASTKEY 0 THEN BEGIN { Si la hay, procesala....} TECLA := GETKEY; ........... ........ .... ... END; Espero que ésto te sirva para resolver tu problema Cualquier otra duda, me mandas un e-mail a ver en que más te puedo ayudar.... Estoy a tus órdenes en GREGORIO COBÁ GALA gregorio_coba@hotmail.com