Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/06/2005, 01:18
Avatar de Eternal Idol
Eternal Idol
 
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años, 6 meses
Puntos: 74
No tengo MASM 16 aca asi que todo esto es en teoria, vamos por partes:

Código:
MOV DX,0378h
MOV AX,0000h
OUT DX,AX
Esto no tiene nada que ver, es para enviar un byte al puerto paralelo sino me equivoco.

Código:
RECUPERA PROC
MOV AX,0000h ;vuelvo 0 AX
INT 16h ; Guardo en AX el valor presionado
MOV CX,0635h ; muevo mi 5 a cx
CMP CX,AX ; lo comparo con el digito marcado en teclado
JNE RECUPERA ; si no son iguales que vuelva a hacer todo el control
RET
RECUPERA ENDP
¿MOV CX,0635h ; muevo mi 5 a cx? ¿Porque no comparar contra el '5' que es 035h y esta en AL?

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

Return:AH = BIOS scan code
AL = ASCII character

Código:
ESCRIBE PROC
MOV AH,09h ; \
INT 10h ; \ ESTE ES MI PROBLEMA. 
OUT CX,AX ; /
RET ; /
ESCRIBE ENDP
CODIGO ENDS
END MAIN
Esto ultimo esta equivocado, mira la pagina que te dejo http://www.ctyme.com/intr/rb-0099.htm, te faltan varios parametros por especificarle a la funcion y creo que deberias utilizar alguna mas facil de ser posible como por ejemplo esta: http://www.ctyme.com/intr/rb-2558.htm

¿OUT CX,AX? ¿Porque haces eso?
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO