Foros - Stratos

Programadores => General Programadores => Mensaje iniciado por: onca en 06 de Julio de 2013, 04:02:20 PM

Título: leer caracter sin eco con int 0x80
Publicado por: onca en 06 de Julio de 2013, 04:02:20 PM
Hola a todos:

Estoy aprendiendo a programar assembler I8086 en Linux.

Utilizo el compilador nasm, y el linker ld.

Mi problema es que no sé cómo leer un carácter desde el teclado pero "sin eco", y que además no espere un ENTER.

He probado usando

   mov eax,3      ; servicio de lectura
   mov ebx,0      ; descriptor del teclado
   mov ecx,tecla ; la variable receptora
   mov edx,1      ; cantidad de bytes a leer
   int 0x80         ; llamada al kernel

pero no sólo me muestra la tecla apretada, sino que además espera un ENTER. 

He leído todo el listado de los servicios de la int 0x80, y la verdad es que no entiendo nada.

¿existe alguna forma de leer sólo un carácter del buffer sin esperar nada más?  :ayuda:

Desde ya les agradezco su atención, y les mando un saludo fraternal.

Rubén.